Prim改名为PrimitiveType,ParsePrimName改名为ParsePrimitiveType
This commit is contained in:
parent
7169429ede
commit
2b251f06d4
@ -46,7 +46,7 @@ private:
|
|||||||
|
|
||||||
bool InitAutoMaterial()
|
bool InitAutoMaterial()
|
||||||
{
|
{
|
||||||
mtl::Material2DCreateConfig cfg(device->GetDeviceAttribute(),"VertexColor2D",Prim::Lines);
|
mtl::Material2DCreateConfig cfg(device->GetDeviceAttribute(),"VertexColor2D",PrimitiveType::Lines);
|
||||||
|
|
||||||
cfg.coordinate_system=CoordinateSystem2D::NDC;
|
cfg.coordinate_system=CoordinateSystem2D::NDC;
|
||||||
cfg.local_to_world=false;
|
cfg.local_to_world=false;
|
||||||
@ -60,7 +60,7 @@ private:
|
|||||||
|
|
||||||
bool InitPipeline()
|
bool InitPipeline()
|
||||||
{
|
{
|
||||||
pipeline=CreatePipeline(material_instance,InlinePipeline::Solid2D,Prim::Lines);
|
pipeline=CreatePipeline(material_instance,InlinePipeline::Solid2D,PrimitiveType::Lines);
|
||||||
|
|
||||||
return pipeline;
|
return pipeline;
|
||||||
}
|
}
|
||||||
|
@ -53,8 +53,8 @@ private:
|
|||||||
return(false);
|
return(false);
|
||||||
|
|
||||||
// pipeline=db->CreatePipeline(material_instance,sc_render_target,OS_TEXT("res/pipeline/solid2d"));
|
// pipeline=db->CreatePipeline(material_instance,sc_render_target,OS_TEXT("res/pipeline/solid2d"));
|
||||||
//pipeline=CreatePipeline(material_instance,OS_TEXT("res/pipeline/alpha2d"),Prim::LineStrip); //等同上一行,为Framework重载,默认使用swapchain的render target
|
//pipeline=CreatePipeline(material_instance,OS_TEXT("res/pipeline/alpha2d"),PrimitiveType::LineStrip); //等同上一行,为Framework重载,默认使用swapchain的render target
|
||||||
pipeline=CreatePipeline(material_instance,InlinePipeline::Alpha2D,Prim::LineStrip); //等同上一行,为Framework重载,默认使用swapchain的render target
|
pipeline=CreatePipeline(material_instance,InlinePipeline::Alpha2D,PrimitiveType::LineStrip); //等同上一行,为Framework重载,默认使用swapchain的render target
|
||||||
|
|
||||||
if(!pipeline)
|
if(!pipeline)
|
||||||
return(false);
|
return(false);
|
||||||
|
@ -66,7 +66,7 @@ private:
|
|||||||
if(!material_instance)
|
if(!material_instance)
|
||||||
return(false);
|
return(false);
|
||||||
|
|
||||||
pipeline=CreatePipeline(material_instance,OS_TEXT("res/pipeline/alpha2d"),Prim::SolidRectangles); //等同上一行,为Framework重载,默认使用swapchain的render target
|
pipeline=CreatePipeline(material_instance,OS_TEXT("res/pipeline/alpha2d"),PrimitiveType::SolidRectangles); //等同上一行,为Framework重载,默认使用swapchain的render target
|
||||||
|
|
||||||
if(!pipeline)
|
if(!pipeline)
|
||||||
return(false);
|
return(false);
|
||||||
|
@ -47,7 +47,7 @@ private:
|
|||||||
|
|
||||||
bool InitPlaneGridMP()
|
bool InitPlaneGridMP()
|
||||||
{
|
{
|
||||||
mtl::Material3DCreateConfig cfg(device->GetDeviceAttribute(),"VertexLuminance3D",Prim::Lines);
|
mtl::Material3DCreateConfig cfg(device->GetDeviceAttribute(),"VertexLuminance3D",PrimitiveType::Lines);
|
||||||
|
|
||||||
cfg.local_to_world=true;
|
cfg.local_to_world=true;
|
||||||
|
|
||||||
@ -64,7 +64,7 @@ private:
|
|||||||
mi_plane_grid=db->CreateMaterialInstance(mtl_plane_grid,&vil_config,&white_color);
|
mi_plane_grid=db->CreateMaterialInstance(mtl_plane_grid,&vil_config,&white_color);
|
||||||
if(!mi_plane_grid)return(false);
|
if(!mi_plane_grid)return(false);
|
||||||
|
|
||||||
pipeline_plane_grid=CreatePipeline(mi_plane_grid,InlinePipeline::Solid3D,Prim::Lines);
|
pipeline_plane_grid=CreatePipeline(mi_plane_grid,InlinePipeline::Solid3D,PrimitiveType::Lines);
|
||||||
if(!pipeline_plane_grid)return(false);
|
if(!pipeline_plane_grid)return(false);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -73,7 +73,7 @@ private:
|
|||||||
|
|
||||||
bool InitBillboardMP()
|
bool InitBillboardMP()
|
||||||
{
|
{
|
||||||
mtl::BillboardMaterialCreateConfig cfg(device->GetDeviceAttribute(),"Billboard2D",Prim::Billboard);
|
mtl::BillboardMaterialCreateConfig cfg(device->GetDeviceAttribute(),"Billboard2D",PrimitiveType::Billboard);
|
||||||
|
|
||||||
{
|
{
|
||||||
cfg.fixed_size=true;
|
cfg.fixed_size=true;
|
||||||
@ -83,7 +83,7 @@ private:
|
|||||||
mi_billboard=db->CreateMaterialInstance(mci);
|
mi_billboard=db->CreateMaterialInstance(mci);
|
||||||
if(!mi_billboard)return(false);
|
if(!mi_billboard)return(false);
|
||||||
|
|
||||||
pipeline_billboard=CreatePipeline(mi_billboard,InlinePipeline::Solid3D,Prim::Billboard);
|
pipeline_billboard=CreatePipeline(mi_billboard,InlinePipeline::Solid3D,PrimitiveType::Billboard);
|
||||||
if(!pipeline_billboard)return(false);
|
if(!pipeline_billboard)return(false);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -47,7 +47,7 @@ private:
|
|||||||
bool InitMaterial()
|
bool InitMaterial()
|
||||||
{
|
{
|
||||||
{
|
{
|
||||||
mtl::Material2DCreateConfig cfg(GetDeviceAttribute(),"VertexColor2D",Prim::Triangles);
|
mtl::Material2DCreateConfig cfg(GetDeviceAttribute(),"VertexColor2D",PrimitiveType::Triangles);
|
||||||
|
|
||||||
cfg.coordinate_system=CoordinateSystem2D::NDC;
|
cfg.coordinate_system=CoordinateSystem2D::NDC;
|
||||||
cfg.local_to_world=true;
|
cfg.local_to_world=true;
|
||||||
@ -65,7 +65,7 @@ private:
|
|||||||
return(false);
|
return(false);
|
||||||
|
|
||||||
// pipeline=db->CreatePipeline(material_instance,sc_render_target,OS_TEXT("res/pipeline/solid2d"));
|
// pipeline=db->CreatePipeline(material_instance,sc_render_target,OS_TEXT("res/pipeline/solid2d"));
|
||||||
pipeline=CreatePipeline(material_instance,InlinePipeline::Solid2D,Prim::Triangles); //等同上一行,为Framework重载,默认使用swapchain的render target
|
pipeline=CreatePipeline(material_instance,InlinePipeline::Solid2D,PrimitiveType::Triangles); //等同上一行,为Framework重载,默认使用swapchain的render target
|
||||||
|
|
||||||
return pipeline;
|
return pipeline;
|
||||||
}
|
}
|
||||||
|
@ -48,7 +48,7 @@ private:
|
|||||||
bool InitMaterial()
|
bool InitMaterial()
|
||||||
{
|
{
|
||||||
{
|
{
|
||||||
mtl::Material2DCreateConfig cfg(GetDeviceAttribute(),"PureColor2D",Prim::Triangles);
|
mtl::Material2DCreateConfig cfg(GetDeviceAttribute(),"PureColor2D",PrimitiveType::Triangles);
|
||||||
|
|
||||||
cfg.coordinate_system=CoordinateSystem2D::NDC;
|
cfg.coordinate_system=CoordinateSystem2D::NDC;
|
||||||
cfg.local_to_world=true;
|
cfg.local_to_world=true;
|
||||||
@ -76,7 +76,7 @@ private:
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
pipeline=CreatePipeline(material,InlinePipeline::Solid2D,Prim::Triangles);
|
pipeline=CreatePipeline(material,InlinePipeline::Solid2D,PrimitiveType::Triangles);
|
||||||
|
|
||||||
return pipeline;
|
return pipeline;
|
||||||
}
|
}
|
||||||
|
@ -87,7 +87,7 @@ private:
|
|||||||
|
|
||||||
bool InitAutoMaterial()
|
bool InitAutoMaterial()
|
||||||
{
|
{
|
||||||
mtl::Material2DCreateConfig cfg(GetDeviceAttribute(),"VertexColor2d",Prim::Triangles);
|
mtl::Material2DCreateConfig cfg(GetDeviceAttribute(),"VertexColor2d",PrimitiveType::Triangles);
|
||||||
|
|
||||||
cfg.coordinate_system=CoordinateSystem2D::NDC;
|
cfg.coordinate_system=CoordinateSystem2D::NDC;
|
||||||
cfg.local_to_world=false;
|
cfg.local_to_world=false;
|
||||||
@ -102,7 +102,7 @@ private:
|
|||||||
bool InitPipeline()
|
bool InitPipeline()
|
||||||
{
|
{
|
||||||
// pipeline=db->CreatePipeline(material_instance,sc_render_target,OS_TEXT("res/pipeline/solid2d"));
|
// pipeline=db->CreatePipeline(material_instance,sc_render_target,OS_TEXT("res/pipeline/solid2d"));
|
||||||
pipeline=CreatePipeline(material_instance,InlinePipeline::Solid2D,Prim::Triangles); //等同上一行,为Framework重载,默认使用swapchain的render target
|
pipeline=CreatePipeline(material_instance,InlinePipeline::Solid2D,PrimitiveType::Triangles); //等同上一行,为Framework重载,默认使用swapchain的render target
|
||||||
|
|
||||||
return pipeline;
|
return pipeline;
|
||||||
}
|
}
|
||||||
|
@ -46,7 +46,7 @@ private:
|
|||||||
|
|
||||||
bool InitMaterial()
|
bool InitMaterial()
|
||||||
{
|
{
|
||||||
mtl::Material2DCreateConfig cfg(GetDeviceAttribute(),"VertexColor2D",Prim::Triangles);
|
mtl::Material2DCreateConfig cfg(GetDeviceAttribute(),"VertexColor2D",PrimitiveType::Triangles);
|
||||||
|
|
||||||
VILConfig vil_config;
|
VILConfig vil_config;
|
||||||
|
|
||||||
@ -70,7 +70,7 @@ private:
|
|||||||
return(false);
|
return(false);
|
||||||
|
|
||||||
// pipeline=db->CreatePipeline(material_instance,sc_render_target,OS_TEXT("res/pipeline/solid2d"));
|
// pipeline=db->CreatePipeline(material_instance,sc_render_target,OS_TEXT("res/pipeline/solid2d"));
|
||||||
pipeline=CreatePipeline(material_instance,InlinePipeline::Solid2D,Prim::Triangles); //等同上一行,为Framework重载,默认使用swapchain的render target
|
pipeline=CreatePipeline(material_instance,InlinePipeline::Solid2D,PrimitiveType::Triangles); //等同上一行,为Framework重载,默认使用swapchain的render target
|
||||||
|
|
||||||
return pipeline;
|
return pipeline;
|
||||||
}
|
}
|
||||||
|
@ -42,7 +42,7 @@ private:
|
|||||||
|
|
||||||
bool InitAutoMaterial()
|
bool InitAutoMaterial()
|
||||||
{
|
{
|
||||||
mtl::Material2DCreateConfig cfg(GetDeviceAttribute(),"VertexColor2D",Prim::Triangles);
|
mtl::Material2DCreateConfig cfg(GetDeviceAttribute(),"VertexColor2D",PrimitiveType::Triangles);
|
||||||
|
|
||||||
cfg.coordinate_system=CoordinateSystem2D::NDC;
|
cfg.coordinate_system=CoordinateSystem2D::NDC;
|
||||||
cfg.local_to_world=false;
|
cfg.local_to_world=false;
|
||||||
@ -57,7 +57,7 @@ private:
|
|||||||
bool InitPipeline()
|
bool InitPipeline()
|
||||||
{
|
{
|
||||||
// pipeline=db->CreatePipeline(material_instance,sc_render_target,OS_TEXT("res/pipeline/solid2d"));
|
// pipeline=db->CreatePipeline(material_instance,sc_render_target,OS_TEXT("res/pipeline/solid2d"));
|
||||||
pipeline=CreatePipeline(material_instance,InlinePipeline::Solid2D,Prim::Triangles); //等同上一行,为Framework重载,默认使用swapchain的render target
|
pipeline=CreatePipeline(material_instance,InlinePipeline::Solid2D,PrimitiveType::Triangles); //等同上一行,为Framework重载,默认使用swapchain的render target
|
||||||
|
|
||||||
return pipeline;
|
return pipeline;
|
||||||
}
|
}
|
||||||
|
@ -88,7 +88,7 @@ namespace
|
|||||||
RenderPass *render_pass=device->GetRenderPass();
|
RenderPass *render_pass=device->GetRenderPass();
|
||||||
|
|
||||||
{
|
{
|
||||||
mtl::Material3DCreateConfig cfg(device->GetDeviceAttribute(),"VertexLuminance3D",Prim::Lines);
|
mtl::Material3DCreateConfig cfg(device->GetDeviceAttribute(),"VertexLuminance3D",PrimitiveType::Lines);
|
||||||
|
|
||||||
cfg.mtl_name="VertexLuminance3D"; //注意必须用不同名字,未来改名材质文件名+cfg hash名
|
cfg.mtl_name="VertexLuminance3D"; //注意必须用不同名字,未来改名材质文件名+cfg hash名
|
||||||
cfg.local_to_world=true;
|
cfg.local_to_world=true;
|
||||||
@ -107,7 +107,7 @@ namespace
|
|||||||
}
|
}
|
||||||
|
|
||||||
{
|
{
|
||||||
gizmo_line.pipeline=render_pass->CreatePipeline(gizmo_line.mtl,InlinePipeline::Solid3D,Prim::Lines);
|
gizmo_line.pipeline=render_pass->CreatePipeline(gizmo_line.mtl,InlinePipeline::Solid3D,PrimitiveType::Lines);
|
||||||
|
|
||||||
if(!gizmo_line.pipeline)
|
if(!gizmo_line.pipeline)
|
||||||
return(false);
|
return(false);
|
||||||
@ -142,7 +142,7 @@ namespace
|
|||||||
RenderPass *render_pass=device->GetRenderPass();
|
RenderPass *render_pass=device->GetRenderPass();
|
||||||
|
|
||||||
{
|
{
|
||||||
mtl::Material3DCreateConfig cfg(device->GetDeviceAttribute(),"Gizmo3D",Prim::Triangles);
|
mtl::Material3DCreateConfig cfg(device->GetDeviceAttribute(),"Gizmo3D",PrimitiveType::Triangles);
|
||||||
|
|
||||||
cfg.local_to_world=true;
|
cfg.local_to_world=true;
|
||||||
cfg.material_instance=true;
|
cfg.material_instance=true;
|
||||||
@ -160,7 +160,7 @@ namespace
|
|||||||
}
|
}
|
||||||
|
|
||||||
{
|
{
|
||||||
gizmo_triangle.pipeline=render_pass->CreatePipeline(gizmo_triangle.mtl,InlinePipeline::Solid3D,Prim::Triangles);
|
gizmo_triangle.pipeline=render_pass->CreatePipeline(gizmo_triangle.mtl,InlinePipeline::Solid3D,PrimitiveType::Triangles);
|
||||||
if(!gizmo_triangle.pipeline)
|
if(!gizmo_triangle.pipeline)
|
||||||
return(false);
|
return(false);
|
||||||
}
|
}
|
||||||
|
@ -49,7 +49,7 @@ private:
|
|||||||
|
|
||||||
bool InitMDP()
|
bool InitMDP()
|
||||||
{
|
{
|
||||||
mtl::Material3DCreateConfig cfg(device->GetDeviceAttribute(),"MetricCellsGrid",Prim::Fan);
|
mtl::Material3DCreateConfig cfg(device->GetDeviceAttribute(),"MetricCellsGrid",PrimitiveType::Fan);
|
||||||
|
|
||||||
cfg.local_to_world=true;
|
cfg.local_to_world=true;
|
||||||
|
|
||||||
@ -76,7 +76,7 @@ private:
|
|||||||
|
|
||||||
material_instance=db->CreateMaterialInstance(material,nullptr,&mcg_data);
|
material_instance=db->CreateMaterialInstance(material,nullptr,&mcg_data);
|
||||||
|
|
||||||
pipeline=CreatePipeline(material,InlinePipeline::Solid3D,Prim::Fan);
|
pipeline=CreatePipeline(material,InlinePipeline::Solid3D,PrimitiveType::Fan);
|
||||||
|
|
||||||
return pipeline;
|
return pipeline;
|
||||||
}
|
}
|
||||||
|
@ -26,7 +26,7 @@ private:
|
|||||||
|
|
||||||
bool InitMDP()
|
bool InitMDP()
|
||||||
{
|
{
|
||||||
mtl::Material3DCreateConfig cfg(device->GetDeviceAttribute(),"VertexLuminance3D",Prim::Lines);
|
mtl::Material3DCreateConfig cfg(device->GetDeviceAttribute(),"VertexLuminance3D",PrimitiveType::Lines);
|
||||||
|
|
||||||
cfg.local_to_world=true;
|
cfg.local_to_world=true;
|
||||||
cfg.position_format=VAT_VEC2;
|
cfg.position_format=VAT_VEC2;
|
||||||
@ -50,7 +50,7 @@ private:
|
|||||||
ce=COLOR((int)ce+1);
|
ce=COLOR((int)ce+1);
|
||||||
}
|
}
|
||||||
|
|
||||||
pipeline=CreatePipeline(material_instance[0],InlinePipeline::Solid3D,Prim::Lines);
|
pipeline=CreatePipeline(material_instance[0],InlinePipeline::Solid3D,PrimitiveType::Lines);
|
||||||
|
|
||||||
return pipeline;
|
return pipeline;
|
||||||
}
|
}
|
||||||
|
@ -51,7 +51,7 @@ private:
|
|||||||
|
|
||||||
bool InitMaterialAndPipeline()
|
bool InitMaterialAndPipeline()
|
||||||
{
|
{
|
||||||
mtl::Material3DCreateConfig cfg(device->GetDeviceAttribute(),"VertexLuminance2D",Prim::Lines);
|
mtl::Material3DCreateConfig cfg(device->GetDeviceAttribute(),"VertexLuminance2D",PrimitiveType::Lines);
|
||||||
|
|
||||||
cfg.local_to_world=true;
|
cfg.local_to_world=true;
|
||||||
|
|
||||||
@ -69,7 +69,7 @@ private:
|
|||||||
mi_plane_grid=db->CreateMaterialInstance(mtl_plane_grid,&vil_config,&white_color);
|
mi_plane_grid=db->CreateMaterialInstance(mtl_plane_grid,&vil_config,&white_color);
|
||||||
if(!mi_plane_grid)return(false);
|
if(!mi_plane_grid)return(false);
|
||||||
|
|
||||||
pipeline_plane_grid=CreatePipeline(mi_plane_grid,InlinePipeline::Solid3D,Prim::Lines);
|
pipeline_plane_grid=CreatePipeline(mi_plane_grid,InlinePipeline::Solid3D,PrimitiveType::Lines);
|
||||||
if(!pipeline_plane_grid)return(false);
|
if(!pipeline_plane_grid)return(false);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -83,7 +83,7 @@ private:
|
|||||||
mi_line=db->CreateMaterialInstance(mtl_line,nullptr,&yellow_color);
|
mi_line=db->CreateMaterialInstance(mtl_line,nullptr,&yellow_color);
|
||||||
if(!mi_line)return(false);
|
if(!mi_line)return(false);
|
||||||
|
|
||||||
pipeline_line=CreatePipeline(mtl_line,InlinePipeline::Solid3D,Prim::Lines);
|
pipeline_line=CreatePipeline(mtl_line,InlinePipeline::Solid3D,PrimitiveType::Lines);
|
||||||
|
|
||||||
if(!pipeline_line)
|
if(!pipeline_line)
|
||||||
return(false);
|
return(false);
|
||||||
|
@ -104,7 +104,7 @@ private:
|
|||||||
|
|
||||||
bool InitVertexLumMP()
|
bool InitVertexLumMP()
|
||||||
{
|
{
|
||||||
mtl::Material3DCreateConfig cfg(device->GetDeviceAttribute(),"VertexLuminance3D",Prim::Lines);
|
mtl::Material3DCreateConfig cfg(device->GetDeviceAttribute(),"VertexLuminance3D",PrimitiveType::Lines);
|
||||||
|
|
||||||
cfg.local_to_world=true;
|
cfg.local_to_world=true;
|
||||||
|
|
||||||
@ -114,7 +114,7 @@ private:
|
|||||||
mi_plane_grid=db->CreateMaterialInstance(mtl_vertex_lum,nullptr,&white_color);
|
mi_plane_grid=db->CreateMaterialInstance(mtl_vertex_lum,nullptr,&white_color);
|
||||||
if(!mi_plane_grid)return(false);
|
if(!mi_plane_grid)return(false);
|
||||||
|
|
||||||
p_line=CreatePipeline(mtl_vertex_lum,InlinePipeline::Solid3D,Prim::Lines);
|
p_line=CreatePipeline(mtl_vertex_lum,InlinePipeline::Solid3D,PrimitiveType::Lines);
|
||||||
|
|
||||||
if(!p_line)
|
if(!p_line)
|
||||||
return(false);
|
return(false);
|
||||||
@ -132,7 +132,7 @@ private:
|
|||||||
|
|
||||||
bool InitBlinnPhongSunLightMP()
|
bool InitBlinnPhongSunLightMP()
|
||||||
{
|
{
|
||||||
mtl::Material3DCreateConfig cfg(device->GetDeviceAttribute(),"BlinnPhong3D",Prim::Triangles);
|
mtl::Material3DCreateConfig cfg(device->GetDeviceAttribute(),"BlinnPhong3D",PrimitiveType::Triangles);
|
||||||
|
|
||||||
cfg.local_to_world=true;
|
cfg.local_to_world=true;
|
||||||
cfg.material_instance=true;
|
cfg.material_instance=true;
|
||||||
@ -170,7 +170,7 @@ private:
|
|||||||
if(!mi_blinnphong[i])return(false);
|
if(!mi_blinnphong[i])return(false);
|
||||||
}
|
}
|
||||||
|
|
||||||
p_blinnphong=CreatePipeline(mtl_blinnphong,InlinePipeline::Solid3D,Prim::Triangles);
|
p_blinnphong=CreatePipeline(mtl_blinnphong,InlinePipeline::Solid3D,PrimitiveType::Triangles);
|
||||||
|
|
||||||
if(!p_blinnphong)
|
if(!p_blinnphong)
|
||||||
return(false);
|
return(false);
|
||||||
|
@ -51,7 +51,7 @@ private:
|
|||||||
|
|
||||||
bool InitMaterial()
|
bool InitMaterial()
|
||||||
{
|
{
|
||||||
mtl::Material2DCreateConfig cfg(device->GetDeviceAttribute(),"PureTexture2D",Prim::Fan);
|
mtl::Material2DCreateConfig cfg(device->GetDeviceAttribute(),"PureTexture2D",PrimitiveType::Fan);
|
||||||
|
|
||||||
cfg.coordinate_system=CoordinateSystem2D::NDC;
|
cfg.coordinate_system=CoordinateSystem2D::NDC;
|
||||||
cfg.local_to_world=false;
|
cfg.local_to_world=false;
|
||||||
@ -62,7 +62,7 @@ private:
|
|||||||
return(false);
|
return(false);
|
||||||
|
|
||||||
// pipeline=db->CreatePipeline(material_instance,sc_render_target,OS_TEXT("res/pipeline/solid2d"));
|
// pipeline=db->CreatePipeline(material_instance,sc_render_target,OS_TEXT("res/pipeline/solid2d"));
|
||||||
pipeline=CreatePipeline(material,InlinePipeline::Solid2D,Prim::Fan); //等同上一行,为Framework重载,默认使用swapchain的render target
|
pipeline=CreatePipeline(material,InlinePipeline::Solid2D,PrimitiveType::Fan); //等同上一行,为Framework重载,默认使用swapchain的render target
|
||||||
|
|
||||||
if(!pipeline)
|
if(!pipeline)
|
||||||
return(false);
|
return(false);
|
||||||
|
@ -47,7 +47,7 @@ private:
|
|||||||
|
|
||||||
bool InitMaterial()
|
bool InitMaterial()
|
||||||
{
|
{
|
||||||
mtl::Material2DCreateConfig cfg(device->GetDeviceAttribute(),"RectTexture2D",Prim::SolidRectangles);
|
mtl::Material2DCreateConfig cfg(device->GetDeviceAttribute(),"RectTexture2D",PrimitiveType::SolidRectangles);
|
||||||
|
|
||||||
cfg.coordinate_system=CoordinateSystem2D::ZeroToOne;
|
cfg.coordinate_system=CoordinateSystem2D::ZeroToOne;
|
||||||
cfg.local_to_world=false;
|
cfg.local_to_world=false;
|
||||||
@ -58,7 +58,7 @@ private:
|
|||||||
return(false);
|
return(false);
|
||||||
|
|
||||||
// pipeline=db->CreatePipeline(material_instance,sc_render_target,OS_TEXT("res/pipeline/solid2d"));
|
// pipeline=db->CreatePipeline(material_instance,sc_render_target,OS_TEXT("res/pipeline/solid2d"));
|
||||||
pipeline=CreatePipeline(material,InlinePipeline::Solid2D,Prim::SolidRectangles); //等同上一行,为Framework重载,默认使用swapchain的render target
|
pipeline=CreatePipeline(material,InlinePipeline::Solid2D,PrimitiveType::SolidRectangles); //等同上一行,为Framework重载,默认使用swapchain的render target
|
||||||
|
|
||||||
if(!pipeline)
|
if(!pipeline)
|
||||||
return(false);
|
return(false);
|
||||||
|
@ -91,7 +91,7 @@ private:
|
|||||||
|
|
||||||
bool InitMaterial()
|
bool InitMaterial()
|
||||||
{
|
{
|
||||||
mtl::Material2DCreateConfig cfg(device->GetDeviceAttribute(),"RectTexture2DArray",Prim::SolidRectangles);
|
mtl::Material2DCreateConfig cfg(device->GetDeviceAttribute(),"RectTexture2DArray",PrimitiveType::SolidRectangles);
|
||||||
|
|
||||||
cfg.coordinate_system=CoordinateSystem2D::ZeroToOne;
|
cfg.coordinate_system=CoordinateSystem2D::ZeroToOne;
|
||||||
cfg.local_to_world=true;
|
cfg.local_to_world=true;
|
||||||
@ -101,7 +101,7 @@ private:
|
|||||||
if(!material)
|
if(!material)
|
||||||
return(false);
|
return(false);
|
||||||
|
|
||||||
pipeline=CreatePipeline(material,InlinePipeline::Solid2D,Prim::SolidRectangles); //等同上一行,为Framework重载,默认使用swapchain的render target
|
pipeline=CreatePipeline(material,InlinePipeline::Solid2D,PrimitiveType::SolidRectangles); //等同上一行,为Framework重载,默认使用swapchain的render target
|
||||||
|
|
||||||
if(!pipeline)
|
if(!pipeline)
|
||||||
return(false);
|
return(false);
|
||||||
|
@ -56,15 +56,15 @@ public:
|
|||||||
|
|
||||||
public:
|
public:
|
||||||
|
|
||||||
Pipeline *CreatePipeline(Material *,const VIL *,const PipelineData *, const Prim &,const bool prim_restart=false);
|
Pipeline *CreatePipeline(Material *,const VIL *,const PipelineData *, const PrimitiveType &,const bool prim_restart=false);
|
||||||
Pipeline *CreatePipeline(Material *,const VIL *,const InlinePipeline &, const Prim &,const bool prim_restart=false);
|
Pipeline *CreatePipeline(Material *,const VIL *,const InlinePipeline &, const PrimitiveType &,const bool prim_restart=false);
|
||||||
|
|
||||||
Pipeline *CreatePipeline(Material *mtl, const PipelineData *, const Prim &,const bool prim_restart=false);
|
Pipeline *CreatePipeline(Material *mtl, const PipelineData *, const PrimitiveType &,const bool prim_restart=false);
|
||||||
Pipeline *CreatePipeline(Material *mtl, const InlinePipeline &, const Prim &,const bool prim_restart=false);
|
Pipeline *CreatePipeline(Material *mtl, const InlinePipeline &, const PrimitiveType &,const bool prim_restart=false);
|
||||||
|
|
||||||
Pipeline *CreatePipeline(MaterialInstance *, const InlinePipeline &, const Prim &,const bool prim_restart=false);
|
Pipeline *CreatePipeline(MaterialInstance *, const InlinePipeline &, const PrimitiveType &,const bool prim_restart=false);
|
||||||
Pipeline *CreatePipeline(MaterialInstance *, const PipelineData *, const Prim &,const bool prim_restart=false);
|
Pipeline *CreatePipeline(MaterialInstance *, const PipelineData *, const PrimitiveType &,const bool prim_restart=false);
|
||||||
Pipeline *CreatePipeline(MaterialInstance *, const OSString &, const Prim &,const bool prim_restart=false);
|
Pipeline *CreatePipeline(MaterialInstance *, const OSString &, const PrimitiveType &,const bool prim_restart=false);
|
||||||
};//class RenderPass
|
};//class RenderPass
|
||||||
VK_NAMESPACE_END
|
VK_NAMESPACE_END
|
||||||
#endif//HGL_GRAPH_VULKAN_RENDER_PASS_INCLUDE
|
#endif//HGL_GRAPH_VULKAN_RENDER_PASS_INCLUDE
|
||||||
|
@ -16,7 +16,7 @@ struct Material2DCreateConfig:public MaterialCreateConfig,public Comparator<Mate
|
|||||||
|
|
||||||
public:
|
public:
|
||||||
|
|
||||||
Material2DCreateConfig(const GPUDeviceAttribute *da,const AnsiString &name,const Prim &p):MaterialCreateConfig(da,name,p)
|
Material2DCreateConfig(const GPUDeviceAttribute *da,const AnsiString &name,const PrimitiveType &p):MaterialCreateConfig(da,name,p)
|
||||||
{
|
{
|
||||||
rt_output.color=1; //输出一个颜色
|
rt_output.color=1; //输出一个颜色
|
||||||
rt_output.depth=false; //不输出深度
|
rt_output.depth=false; //不输出深度
|
||||||
@ -25,8 +25,8 @@ public:
|
|||||||
coordinate_system=CoordinateSystem2D::NDC;
|
coordinate_system=CoordinateSystem2D::NDC;
|
||||||
local_to_world=false;
|
local_to_world=false;
|
||||||
|
|
||||||
if(prim==Prim::SolidRectangles
|
if(prim==PrimitiveType::SolidRectangles
|
||||||
||prim==Prim::WireRectangles)
|
||prim==PrimitiveType::WireRectangles)
|
||||||
position_format=VAT_VEC4;
|
position_format=VAT_VEC4;
|
||||||
else
|
else
|
||||||
position_format=VAT_VEC2;
|
position_format=VAT_VEC2;
|
||||||
|
@ -18,7 +18,7 @@ struct Material3DCreateConfig:public MaterialCreateConfig,public Comparator<Mate
|
|||||||
|
|
||||||
public:
|
public:
|
||||||
|
|
||||||
Material3DCreateConfig(const GPUDeviceAttribute *da,const AnsiString &name,const Prim &p):MaterialCreateConfig(da,name,p)
|
Material3DCreateConfig(const GPUDeviceAttribute *da,const AnsiString &name,const PrimitiveType &p):MaterialCreateConfig(da,name,p)
|
||||||
{
|
{
|
||||||
rt_output.color=1; //输出一个颜色
|
rt_output.color=1; //输出一个颜色
|
||||||
rt_output.depth=true; //不输出深度
|
rt_output.depth=true; //不输出深度
|
||||||
|
@ -25,11 +25,11 @@ struct MaterialCreateConfig:public Comparator<MaterialCreateConfig>
|
|||||||
|
|
||||||
uint32 shader_stage_flag_bit; ///<需要的shader
|
uint32 shader_stage_flag_bit; ///<需要的shader
|
||||||
|
|
||||||
Prim prim; ///<图元类型
|
PrimitiveType prim; ///<图元类型
|
||||||
|
|
||||||
public:
|
public:
|
||||||
|
|
||||||
MaterialCreateConfig(const GPUDeviceAttribute *da,const AnsiString &name,const Prim &p)
|
MaterialCreateConfig(const GPUDeviceAttribute *da,const AnsiString &name,const PrimitiveType &p)
|
||||||
{
|
{
|
||||||
dev_attr=da;
|
dev_attr=da;
|
||||||
|
|
||||||
|
@ -24,7 +24,7 @@ public:
|
|||||||
ShaderCreateInfoGeometry(MaterialDescriptorInfo *m):ShaderCreateInfo(){ShaderCreateInfo::Init(&gsdi,m);}
|
ShaderCreateInfoGeometry(MaterialDescriptorInfo *m):ShaderCreateInfo(){ShaderCreateInfo::Init(&gsdi,m);}
|
||||||
~ShaderCreateInfoGeometry()override=default;
|
~ShaderCreateInfoGeometry()override=default;
|
||||||
|
|
||||||
bool SetGeom(const Prim &ip,const Prim &op,const uint32_t mv);
|
bool SetGeom(const PrimitiveType &ip,const PrimitiveType &op,const uint32_t mv);
|
||||||
|
|
||||||
int AddOutput(SVList &);
|
int AddOutput(SVList &);
|
||||||
int AddOutput(const ShaderVariableType &type,const AnsiString &name,Interpolation inter=Interpolation::Smooth);
|
int AddOutput(const ShaderVariableType &type,const AnsiString &name,Interpolation inter=Interpolation::Smooth);
|
||||||
|
@ -56,7 +56,7 @@ Pipeline *RenderPass::CreatePipeline(const AnsiString &name,PipelineData *pd,con
|
|||||||
return(new Pipeline(name,device,graphicsPipeline,vil,pd));
|
return(new Pipeline(name,device,graphicsPipeline,vil,pd));
|
||||||
}
|
}
|
||||||
|
|
||||||
Pipeline *RenderPass::CreatePipeline(Material *mtl,const VIL *vil,const PipelineData *cpd,const Prim &prim,const bool prim_restart)
|
Pipeline *RenderPass::CreatePipeline(Material *mtl,const VIL *vil,const PipelineData *cpd,const PrimitiveType &prim,const bool prim_restart)
|
||||||
{
|
{
|
||||||
PipelineData *pd=new PipelineData(cpd);
|
PipelineData *pd=new PipelineData(cpd);
|
||||||
|
|
||||||
@ -70,36 +70,36 @@ Pipeline *RenderPass::CreatePipeline(Material *mtl,const VIL *vil,const Pipeline
|
|||||||
return(p);
|
return(p);
|
||||||
}
|
}
|
||||||
|
|
||||||
Pipeline *RenderPass::CreatePipeline(Material *mtl,const VIL *vil,const InlinePipeline &ip,const Prim &prim,const bool prim_restart)
|
Pipeline *RenderPass::CreatePipeline(Material *mtl,const VIL *vil,const InlinePipeline &ip,const PrimitiveType &prim,const bool prim_restart)
|
||||||
{
|
{
|
||||||
if(!mtl)return(nullptr);
|
if(!mtl)return(nullptr);
|
||||||
|
|
||||||
return CreatePipeline(mtl,vil,GetPipelineData(ip),prim,prim_restart);
|
return CreatePipeline(mtl,vil,GetPipelineData(ip),prim,prim_restart);
|
||||||
}
|
}
|
||||||
|
|
||||||
Pipeline *RenderPass::CreatePipeline(Material *mtl,const PipelineData *pd, const Prim &prim,const bool prim_restart)
|
Pipeline *RenderPass::CreatePipeline(Material *mtl,const PipelineData *pd, const PrimitiveType &prim,const bool prim_restart)
|
||||||
{
|
{
|
||||||
return CreatePipeline(mtl,mtl->GetDefaultVIL(),pd,prim,prim_restart);
|
return CreatePipeline(mtl,mtl->GetDefaultVIL(),pd,prim,prim_restart);
|
||||||
}
|
}
|
||||||
|
|
||||||
Pipeline *RenderPass::CreatePipeline(Material *mtl,const InlinePipeline &ip, const Prim &prim,const bool prim_restart)
|
Pipeline *RenderPass::CreatePipeline(Material *mtl,const InlinePipeline &ip, const PrimitiveType &prim,const bool prim_restart)
|
||||||
{
|
{
|
||||||
return CreatePipeline(mtl,mtl->GetDefaultVIL(),ip,prim,prim_restart);
|
return CreatePipeline(mtl,mtl->GetDefaultVIL(),ip,prim,prim_restart);
|
||||||
}
|
}
|
||||||
|
|
||||||
Pipeline *RenderPass::CreatePipeline(MaterialInstance *mi,const InlinePipeline &ip,const Prim &prim,const bool prim_restart)
|
Pipeline *RenderPass::CreatePipeline(MaterialInstance *mi,const InlinePipeline &ip,const PrimitiveType &prim,const bool prim_restart)
|
||||||
{
|
{
|
||||||
if(!mi)return(nullptr);
|
if(!mi)return(nullptr);
|
||||||
|
|
||||||
return CreatePipeline(mi->GetMaterial(),mi->GetVIL(),ip,prim,prim_restart);
|
return CreatePipeline(mi->GetMaterial(),mi->GetVIL(),ip,prim,prim_restart);
|
||||||
}
|
}
|
||||||
|
|
||||||
Pipeline *RenderPass::CreatePipeline(MaterialInstance *mi,const PipelineData *cpd,const Prim &prim,const bool prim_restart)
|
Pipeline *RenderPass::CreatePipeline(MaterialInstance *mi,const PipelineData *cpd,const PrimitiveType &prim,const bool prim_restart)
|
||||||
{
|
{
|
||||||
return CreatePipeline(mi->GetMaterial(),mi->GetVIL(),cpd,prim,prim_restart);
|
return CreatePipeline(mi->GetMaterial(),mi->GetVIL(),cpd,prim,prim_restart);
|
||||||
}
|
}
|
||||||
|
|
||||||
Pipeline *RenderPass::CreatePipeline(MaterialInstance *mi,const OSString &pipeline_filename,const Prim &prim,const bool prim_restart)
|
Pipeline *RenderPass::CreatePipeline(MaterialInstance *mi,const OSString &pipeline_filename,const PrimitiveType &prim,const bool prim_restart)
|
||||||
{
|
{
|
||||||
const PipelineData *pd=GetPipelineData(pipeline_filename);
|
const PipelineData *pd=GetPipelineData(pipeline_filename);
|
||||||
|
|
||||||
|
@ -62,7 +62,7 @@ void main()
|
|||||||
|
|
||||||
bool CustomGeometryShader(ShaderCreateInfoGeometry *gsc) override
|
bool CustomGeometryShader(ShaderCreateInfoGeometry *gsc) override
|
||||||
{
|
{
|
||||||
gsc->SetGeom(Prim::Points,Prim::TriangleStrip,4);
|
gsc->SetGeom(PrimitiveType::Points,PrimitiveType::TriangleStrip,4);
|
||||||
|
|
||||||
gsc->AddOutput(SVT_VEC2,"TexCoord");
|
gsc->AddOutput(SVT_VEC2,"TexCoord");
|
||||||
|
|
||||||
|
@ -69,7 +69,7 @@ void main()
|
|||||||
|
|
||||||
bool CustomGeometryShader(ShaderCreateInfoGeometry *gsc) override
|
bool CustomGeometryShader(ShaderCreateInfoGeometry *gsc) override
|
||||||
{
|
{
|
||||||
gsc->SetGeom(Prim::Points,Prim::TriangleStrip,4);
|
gsc->SetGeom(PrimitiveType::Points,PrimitiveType::TriangleStrip,4);
|
||||||
|
|
||||||
gsc->AddOutput(SVT_VEC2,"TexCoord");
|
gsc->AddOutput(SVT_VEC2,"TexCoord");
|
||||||
|
|
||||||
|
@ -12,7 +12,7 @@ bool Std2DMaterial::CustomVertexShader(ShaderCreateInfoVertex *vsc)
|
|||||||
|
|
||||||
vsc->AddInput(cfg->position_format,VAN::Position);
|
vsc->AddInput(cfg->position_format,VAN::Position);
|
||||||
|
|
||||||
const bool is_rect=(cfg->prim==Prim::SolidRectangles||cfg->prim==Prim::WireRectangles);
|
const bool is_rect=(cfg->prim==PrimitiveType::SolidRectangles||cfg->prim==PrimitiveType::WireRectangles);
|
||||||
|
|
||||||
if(cfg->local_to_world||cfg->material_instance)
|
if(cfg->local_to_world||cfg->material_instance)
|
||||||
{
|
{
|
||||||
|
@ -66,7 +66,7 @@ void main()
|
|||||||
|
|
||||||
bool CustomGeometryShader(ShaderCreateInfoGeometry *gsc) override
|
bool CustomGeometryShader(ShaderCreateInfoGeometry *gsc) override
|
||||||
{
|
{
|
||||||
gsc->SetGeom(Prim::Points,Prim::TriangleStrip,4);
|
gsc->SetGeom(PrimitiveType::Points,PrimitiveType::TriangleStrip,4);
|
||||||
|
|
||||||
gsc->AddOutput(SVT_VEC2,"TexCoord");
|
gsc->AddOutput(SVT_VEC2,"TexCoord");
|
||||||
|
|
||||||
|
@ -67,7 +67,7 @@ void main()
|
|||||||
|
|
||||||
bool CustomGeometryShader(ShaderCreateInfoGeometry *gsc) override
|
bool CustomGeometryShader(ShaderCreateInfoGeometry *gsc) override
|
||||||
{
|
{
|
||||||
gsc->SetGeom(Prim::Points,Prim::TriangleStrip,4);
|
gsc->SetGeom(PrimitiveType::Points,PrimitiveType::TriangleStrip,4);
|
||||||
|
|
||||||
gsc->AddOutput(SVT_VEC2,"TexCoord");
|
gsc->AddOutput(SVT_VEC2,"TexCoord");
|
||||||
|
|
||||||
|
@ -86,8 +86,8 @@ namespace material_file
|
|||||||
|
|
||||||
struct GeometryShaderData:public ShaderData
|
struct GeometryShaderData:public ShaderData
|
||||||
{
|
{
|
||||||
Prim input_prim;
|
PrimitiveType input_prim;
|
||||||
Prim output_prim;
|
PrimitiveType output_prim;
|
||||||
uint max_vertices=0;
|
uint max_vertices=0;
|
||||||
|
|
||||||
SVList output;
|
SVList output;
|
||||||
|
@ -572,7 +572,7 @@ namespace
|
|||||||
|
|
||||||
while(hgl::isalpha(*text)||*text=='_')++text;
|
while(hgl::isalpha(*text)||*text=='_')++text;
|
||||||
|
|
||||||
const Prim ip=ParsePrimName(sp,text-sp);
|
const PrimitiveType ip=ParsePrimitiveType(sp,text-sp);
|
||||||
|
|
||||||
if(!CheckGeometryShaderIn(ip))
|
if(!CheckGeometryShaderIn(ip))
|
||||||
return(false);
|
return(false);
|
||||||
@ -591,7 +591,7 @@ namespace
|
|||||||
|
|
||||||
while(hgl::isalpha(*text)||*text=='_')++text;
|
while(hgl::isalpha(*text)||*text=='_')++text;
|
||||||
|
|
||||||
const Prim op=ParsePrimName(sp,text-sp);
|
const PrimitiveType op=ParsePrimitiveType(sp,text-sp);
|
||||||
|
|
||||||
if(!CheckGeometryShaderOut(op))
|
if(!CheckGeometryShaderOut(op))
|
||||||
return(false);
|
return(false);
|
||||||
|
@ -5,7 +5,7 @@ namespace hgl
|
|||||||
{
|
{
|
||||||
namespace graph
|
namespace graph
|
||||||
{
|
{
|
||||||
bool ShaderCreateInfoGeometry::SetGeom(const Prim &ip,const Prim &op,const uint32_t mv)
|
bool ShaderCreateInfoGeometry::SetGeom(const PrimitiveType &ip,const PrimitiveType &op,const uint32_t mv)
|
||||||
{
|
{
|
||||||
if(!CheckGeometryShaderIn(ip))return(false);
|
if(!CheckGeometryShaderIn(ip))return(false);
|
||||||
if(!CheckGeometryShaderOut(op))return(false);
|
if(!CheckGeometryShaderOut(op))return(false);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user