From 2b251f06d476f8b3cc59a2f3ef04f9c0a0e177f6 Mon Sep 17 00:00:00 2001 From: hyzboy Date: Sun, 4 May 2025 23:36:28 +0800 Subject: [PATCH] =?UTF-8?q?Prim=E6=94=B9=E5=90=8D=E4=B8=BAPrimitiveType,Pa?= =?UTF-8?q?rsePrimName=E6=94=B9=E5=90=8D=E4=B8=BAParsePrimitiveType?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- example/2dVector/LerpLine.cpp | 4 ++-- example/2dVector/line.cpp | 4 ++-- example/2dVector/roundbox.cpp | 2 +- example/Basic/BillboardTest.cpp | 8 ++++---- example/Basic/auto_instance.cpp | 4 ++-- example/Basic/auto_merge_material_instance.cpp | 4 ++-- example/Basic/draw_triangle_in_NDC.cpp | 4 ++-- example/Basic/draw_triangle_use_UBO.cpp | 4 ++-- example/Basic/rf_test.cpp | 4 ++-- example/Gizmo/GizmoResource.cpp | 8 ++++---- example/Gizmo/MetricCellsGrid.cpp | 4 ++-- example/Gizmo/PlaneGrid3D.cpp | 4 ++-- example/Gizmo/RayPicking.cpp | 6 +++--- example/LightBasic/BlinnPhongDirectionLight.cpp | 8 ++++---- example/Texture/texture_quad.cpp | 4 ++-- example/Texture/texture_rect.cpp | 4 ++-- example/Texture/texture_rect_array.cpp | 4 ++-- inc/hgl/graph/VKRenderPass.h | 14 +++++++------- inc/hgl/graph/mtl/Material2DCreateConfig.h | 6 +++--- inc/hgl/graph/mtl/Material3DCreateConfig.h | 2 +- inc/hgl/graph/mtl/MaterialConfig.h | 4 ++-- inc/hgl/shadergen/ShaderCreateInfoGeometry.h | 2 +- src/SceneGraph/Vulkan/VKRenderPass.cpp | 14 +++++++------- src/ShaderGen/2d/M_RectTexture2D.cpp | 2 +- src/ShaderGen/2d/M_RectTexture2DArray.cpp | 2 +- src/ShaderGen/2d/Std2DMaterial.cpp | 2 +- src/ShaderGen/3d/M_BillboardDynamicSize.cpp | 2 +- src/ShaderGen/3d/M_BillboardFixedSize.cpp | 2 +- src/ShaderGen/MaterialFileData.h | 4 ++-- src/ShaderGen/MaterialFileLoader.cpp | 4 ++-- src/ShaderGen/ShaderCreateInfoGeometry.cpp | 2 +- 31 files changed, 71 insertions(+), 71 deletions(-) diff --git a/example/2dVector/LerpLine.cpp b/example/2dVector/LerpLine.cpp index 600794b7..f09f1b43 100644 --- a/example/2dVector/LerpLine.cpp +++ b/example/2dVector/LerpLine.cpp @@ -46,7 +46,7 @@ private: bool InitAutoMaterial() { - mtl::Material2DCreateConfig cfg(device->GetDeviceAttribute(),"VertexColor2D",Prim::Lines); + mtl::Material2DCreateConfig cfg(device->GetDeviceAttribute(),"VertexColor2D",PrimitiveType::Lines); cfg.coordinate_system=CoordinateSystem2D::NDC; cfg.local_to_world=false; @@ -60,7 +60,7 @@ private: bool InitPipeline() { - pipeline=CreatePipeline(material_instance,InlinePipeline::Solid2D,Prim::Lines); + pipeline=CreatePipeline(material_instance,InlinePipeline::Solid2D,PrimitiveType::Lines); return pipeline; } diff --git a/example/2dVector/line.cpp b/example/2dVector/line.cpp index 6cdb0f85..846b06cc 100644 --- a/example/2dVector/line.cpp +++ b/example/2dVector/line.cpp @@ -53,8 +53,8 @@ private: return(false); // 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,InlinePipeline::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,PrimitiveType::LineStrip); //等同上一行,为Framework重载,默认使用swapchain的render target if(!pipeline) return(false); diff --git a/example/2dVector/roundbox.cpp b/example/2dVector/roundbox.cpp index 7ab04200..c8dd8404 100644 --- a/example/2dVector/roundbox.cpp +++ b/example/2dVector/roundbox.cpp @@ -66,7 +66,7 @@ private: if(!material_instance) 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) return(false); diff --git a/example/Basic/BillboardTest.cpp b/example/Basic/BillboardTest.cpp index 041f2d10..27b4afe8 100644 --- a/example/Basic/BillboardTest.cpp +++ b/example/Basic/BillboardTest.cpp @@ -47,7 +47,7 @@ private: bool InitPlaneGridMP() { - mtl::Material3DCreateConfig cfg(device->GetDeviceAttribute(),"VertexLuminance3D",Prim::Lines); + mtl::Material3DCreateConfig cfg(device->GetDeviceAttribute(),"VertexLuminance3D",PrimitiveType::Lines); cfg.local_to_world=true; @@ -64,7 +64,7 @@ private: mi_plane_grid=db->CreateMaterialInstance(mtl_plane_grid,&vil_config,&white_color); 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); } @@ -73,7 +73,7 @@ private: bool InitBillboardMP() { - mtl::BillboardMaterialCreateConfig cfg(device->GetDeviceAttribute(),"Billboard2D",Prim::Billboard); + mtl::BillboardMaterialCreateConfig cfg(device->GetDeviceAttribute(),"Billboard2D",PrimitiveType::Billboard); { cfg.fixed_size=true; @@ -83,7 +83,7 @@ private: mi_billboard=db->CreateMaterialInstance(mci); 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); } diff --git a/example/Basic/auto_instance.cpp b/example/Basic/auto_instance.cpp index 5e726b7d..ed11d32d 100644 --- a/example/Basic/auto_instance.cpp +++ b/example/Basic/auto_instance.cpp @@ -47,7 +47,7 @@ private: bool InitMaterial() { { - mtl::Material2DCreateConfig cfg(GetDeviceAttribute(),"VertexColor2D",Prim::Triangles); + mtl::Material2DCreateConfig cfg(GetDeviceAttribute(),"VertexColor2D",PrimitiveType::Triangles); cfg.coordinate_system=CoordinateSystem2D::NDC; cfg.local_to_world=true; @@ -65,7 +65,7 @@ private: return(false); // 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; } diff --git a/example/Basic/auto_merge_material_instance.cpp b/example/Basic/auto_merge_material_instance.cpp index b1989f07..f94391b3 100644 --- a/example/Basic/auto_merge_material_instance.cpp +++ b/example/Basic/auto_merge_material_instance.cpp @@ -48,7 +48,7 @@ private: bool InitMaterial() { { - mtl::Material2DCreateConfig cfg(GetDeviceAttribute(),"PureColor2D",Prim::Triangles); + mtl::Material2DCreateConfig cfg(GetDeviceAttribute(),"PureColor2D",PrimitiveType::Triangles); cfg.coordinate_system=CoordinateSystem2D::NDC; 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; } diff --git a/example/Basic/draw_triangle_in_NDC.cpp b/example/Basic/draw_triangle_in_NDC.cpp index cf2ecc61..0840ab61 100644 --- a/example/Basic/draw_triangle_in_NDC.cpp +++ b/example/Basic/draw_triangle_in_NDC.cpp @@ -87,7 +87,7 @@ private: bool InitAutoMaterial() { - mtl::Material2DCreateConfig cfg(GetDeviceAttribute(),"VertexColor2d",Prim::Triangles); + mtl::Material2DCreateConfig cfg(GetDeviceAttribute(),"VertexColor2d",PrimitiveType::Triangles); cfg.coordinate_system=CoordinateSystem2D::NDC; cfg.local_to_world=false; @@ -102,7 +102,7 @@ private: bool InitPipeline() { // 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; } diff --git a/example/Basic/draw_triangle_use_UBO.cpp b/example/Basic/draw_triangle_use_UBO.cpp index d8bc324a..3817239f 100644 --- a/example/Basic/draw_triangle_use_UBO.cpp +++ b/example/Basic/draw_triangle_use_UBO.cpp @@ -46,7 +46,7 @@ private: bool InitMaterial() { - mtl::Material2DCreateConfig cfg(GetDeviceAttribute(),"VertexColor2D",Prim::Triangles); + mtl::Material2DCreateConfig cfg(GetDeviceAttribute(),"VertexColor2D",PrimitiveType::Triangles); VILConfig vil_config; @@ -70,7 +70,7 @@ private: return(false); // 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; } diff --git a/example/Basic/rf_test.cpp b/example/Basic/rf_test.cpp index df68129c..4aa6887d 100644 --- a/example/Basic/rf_test.cpp +++ b/example/Basic/rf_test.cpp @@ -42,7 +42,7 @@ private: bool InitAutoMaterial() { - mtl::Material2DCreateConfig cfg(GetDeviceAttribute(),"VertexColor2D",Prim::Triangles); + mtl::Material2DCreateConfig cfg(GetDeviceAttribute(),"VertexColor2D",PrimitiveType::Triangles); cfg.coordinate_system=CoordinateSystem2D::NDC; cfg.local_to_world=false; @@ -57,7 +57,7 @@ private: bool InitPipeline() { // 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; } diff --git a/example/Gizmo/GizmoResource.cpp b/example/Gizmo/GizmoResource.cpp index fee3bbb3..d2751249 100644 --- a/example/Gizmo/GizmoResource.cpp +++ b/example/Gizmo/GizmoResource.cpp @@ -88,7 +88,7 @@ namespace 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.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) return(false); @@ -142,7 +142,7 @@ namespace 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.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) return(false); } diff --git a/example/Gizmo/MetricCellsGrid.cpp b/example/Gizmo/MetricCellsGrid.cpp index 57b47bd3..92e80d2e 100644 --- a/example/Gizmo/MetricCellsGrid.cpp +++ b/example/Gizmo/MetricCellsGrid.cpp @@ -49,7 +49,7 @@ private: bool InitMDP() { - mtl::Material3DCreateConfig cfg(device->GetDeviceAttribute(),"MetricCellsGrid",Prim::Fan); + mtl::Material3DCreateConfig cfg(device->GetDeviceAttribute(),"MetricCellsGrid",PrimitiveType::Fan); cfg.local_to_world=true; @@ -76,7 +76,7 @@ private: material_instance=db->CreateMaterialInstance(material,nullptr,&mcg_data); - pipeline=CreatePipeline(material,InlinePipeline::Solid3D,Prim::Fan); + pipeline=CreatePipeline(material,InlinePipeline::Solid3D,PrimitiveType::Fan); return pipeline; } diff --git a/example/Gizmo/PlaneGrid3D.cpp b/example/Gizmo/PlaneGrid3D.cpp index ec84b939..5a9b88fa 100644 --- a/example/Gizmo/PlaneGrid3D.cpp +++ b/example/Gizmo/PlaneGrid3D.cpp @@ -26,7 +26,7 @@ private: bool InitMDP() { - mtl::Material3DCreateConfig cfg(device->GetDeviceAttribute(),"VertexLuminance3D",Prim::Lines); + mtl::Material3DCreateConfig cfg(device->GetDeviceAttribute(),"VertexLuminance3D",PrimitiveType::Lines); cfg.local_to_world=true; cfg.position_format=VAT_VEC2; @@ -50,7 +50,7 @@ private: 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; } diff --git a/example/Gizmo/RayPicking.cpp b/example/Gizmo/RayPicking.cpp index 40252362..1a57dbd4 100644 --- a/example/Gizmo/RayPicking.cpp +++ b/example/Gizmo/RayPicking.cpp @@ -51,7 +51,7 @@ private: bool InitMaterialAndPipeline() { - mtl::Material3DCreateConfig cfg(device->GetDeviceAttribute(),"VertexLuminance2D",Prim::Lines); + mtl::Material3DCreateConfig cfg(device->GetDeviceAttribute(),"VertexLuminance2D",PrimitiveType::Lines); cfg.local_to_world=true; @@ -69,7 +69,7 @@ private: mi_plane_grid=db->CreateMaterialInstance(mtl_plane_grid,&vil_config,&white_color); 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); } @@ -83,7 +83,7 @@ private: mi_line=db->CreateMaterialInstance(mtl_line,nullptr,&yellow_color); 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) return(false); diff --git a/example/LightBasic/BlinnPhongDirectionLight.cpp b/example/LightBasic/BlinnPhongDirectionLight.cpp index e432ed8c..25eb52cd 100644 --- a/example/LightBasic/BlinnPhongDirectionLight.cpp +++ b/example/LightBasic/BlinnPhongDirectionLight.cpp @@ -104,7 +104,7 @@ private: bool InitVertexLumMP() { - mtl::Material3DCreateConfig cfg(device->GetDeviceAttribute(),"VertexLuminance3D",Prim::Lines); + mtl::Material3DCreateConfig cfg(device->GetDeviceAttribute(),"VertexLuminance3D",PrimitiveType::Lines); cfg.local_to_world=true; @@ -114,7 +114,7 @@ private: mi_plane_grid=db->CreateMaterialInstance(mtl_vertex_lum,nullptr,&white_color); 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) return(false); @@ -132,7 +132,7 @@ private: bool InitBlinnPhongSunLightMP() { - mtl::Material3DCreateConfig cfg(device->GetDeviceAttribute(),"BlinnPhong3D",Prim::Triangles); + mtl::Material3DCreateConfig cfg(device->GetDeviceAttribute(),"BlinnPhong3D",PrimitiveType::Triangles); cfg.local_to_world=true; cfg.material_instance=true; @@ -170,7 +170,7 @@ private: 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) return(false); diff --git a/example/Texture/texture_quad.cpp b/example/Texture/texture_quad.cpp index 64cb9400..d018e16c 100644 --- a/example/Texture/texture_quad.cpp +++ b/example/Texture/texture_quad.cpp @@ -51,7 +51,7 @@ private: bool InitMaterial() { - mtl::Material2DCreateConfig cfg(device->GetDeviceAttribute(),"PureTexture2D",Prim::Fan); + mtl::Material2DCreateConfig cfg(device->GetDeviceAttribute(),"PureTexture2D",PrimitiveType::Fan); cfg.coordinate_system=CoordinateSystem2D::NDC; cfg.local_to_world=false; @@ -62,7 +62,7 @@ private: return(false); // 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) return(false); diff --git a/example/Texture/texture_rect.cpp b/example/Texture/texture_rect.cpp index 71722b11..ffadcb49 100644 --- a/example/Texture/texture_rect.cpp +++ b/example/Texture/texture_rect.cpp @@ -47,7 +47,7 @@ private: bool InitMaterial() { - mtl::Material2DCreateConfig cfg(device->GetDeviceAttribute(),"RectTexture2D",Prim::SolidRectangles); + mtl::Material2DCreateConfig cfg(device->GetDeviceAttribute(),"RectTexture2D",PrimitiveType::SolidRectangles); cfg.coordinate_system=CoordinateSystem2D::ZeroToOne; cfg.local_to_world=false; @@ -58,7 +58,7 @@ private: return(false); // 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) return(false); diff --git a/example/Texture/texture_rect_array.cpp b/example/Texture/texture_rect_array.cpp index 4a99d53a..413e14f0 100644 --- a/example/Texture/texture_rect_array.cpp +++ b/example/Texture/texture_rect_array.cpp @@ -91,7 +91,7 @@ private: bool InitMaterial() { - mtl::Material2DCreateConfig cfg(device->GetDeviceAttribute(),"RectTexture2DArray",Prim::SolidRectangles); + mtl::Material2DCreateConfig cfg(device->GetDeviceAttribute(),"RectTexture2DArray",PrimitiveType::SolidRectangles); cfg.coordinate_system=CoordinateSystem2D::ZeroToOne; cfg.local_to_world=true; @@ -101,7 +101,7 @@ private: if(!material) 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) return(false); diff --git a/inc/hgl/graph/VKRenderPass.h b/inc/hgl/graph/VKRenderPass.h index e48c6e6f..35f5236f 100644 --- a/inc/hgl/graph/VKRenderPass.h +++ b/inc/hgl/graph/VKRenderPass.h @@ -56,15 +56,15 @@ public: public: - Pipeline *CreatePipeline(Material *,const VIL *,const PipelineData *, const Prim &,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 PipelineData *, const PrimitiveType &,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 InlinePipeline &, 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 PrimitiveType &,const bool prim_restart=false); - Pipeline *CreatePipeline(MaterialInstance *, const InlinePipeline &, const Prim &,const bool prim_restart=false); - Pipeline *CreatePipeline(MaterialInstance *, const PipelineData *, const Prim &,const bool prim_restart=false); - Pipeline *CreatePipeline(MaterialInstance *, const OSString &, 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 PrimitiveType &,const bool prim_restart=false); + Pipeline *CreatePipeline(MaterialInstance *, const OSString &, const PrimitiveType &,const bool prim_restart=false); };//class RenderPass VK_NAMESPACE_END #endif//HGL_GRAPH_VULKAN_RENDER_PASS_INCLUDE diff --git a/inc/hgl/graph/mtl/Material2DCreateConfig.h b/inc/hgl/graph/mtl/Material2DCreateConfig.h index 81f56710..ea4f47a2 100644 --- a/inc/hgl/graph/mtl/Material2DCreateConfig.h +++ b/inc/hgl/graph/mtl/Material2DCreateConfig.h @@ -16,7 +16,7 @@ struct Material2DCreateConfig:public MaterialCreateConfig,public Comparator uint32 shader_stage_flag_bit; ///<需要的shader - Prim prim; ///<图元类型 + PrimitiveType prim; ///<图元类型 public: - MaterialCreateConfig(const GPUDeviceAttribute *da,const AnsiString &name,const Prim &p) + MaterialCreateConfig(const GPUDeviceAttribute *da,const AnsiString &name,const PrimitiveType &p) { dev_attr=da; diff --git a/inc/hgl/shadergen/ShaderCreateInfoGeometry.h b/inc/hgl/shadergen/ShaderCreateInfoGeometry.h index e1d2ea57..ba6adb6d 100644 --- a/inc/hgl/shadergen/ShaderCreateInfoGeometry.h +++ b/inc/hgl/shadergen/ShaderCreateInfoGeometry.h @@ -24,7 +24,7 @@ public: ShaderCreateInfoGeometry(MaterialDescriptorInfo *m):ShaderCreateInfo(){ShaderCreateInfo::Init(&gsdi,m);} ~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(const ShaderVariableType &type,const AnsiString &name,Interpolation inter=Interpolation::Smooth); diff --git a/src/SceneGraph/Vulkan/VKRenderPass.cpp b/src/SceneGraph/Vulkan/VKRenderPass.cpp index d7175280..9d5d3467 100644 --- a/src/SceneGraph/Vulkan/VKRenderPass.cpp +++ b/src/SceneGraph/Vulkan/VKRenderPass.cpp @@ -56,7 +56,7 @@ Pipeline *RenderPass::CreatePipeline(const AnsiString &name,PipelineData *pd,con 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); @@ -70,36 +70,36 @@ Pipeline *RenderPass::CreatePipeline(Material *mtl,const VIL *vil,const Pipeline 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); 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); } -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); } -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); 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); } -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); diff --git a/src/ShaderGen/2d/M_RectTexture2D.cpp b/src/ShaderGen/2d/M_RectTexture2D.cpp index 6a2976cf..d008393b 100644 --- a/src/ShaderGen/2d/M_RectTexture2D.cpp +++ b/src/ShaderGen/2d/M_RectTexture2D.cpp @@ -62,7 +62,7 @@ void main() bool CustomGeometryShader(ShaderCreateInfoGeometry *gsc) override { - gsc->SetGeom(Prim::Points,Prim::TriangleStrip,4); + gsc->SetGeom(PrimitiveType::Points,PrimitiveType::TriangleStrip,4); gsc->AddOutput(SVT_VEC2,"TexCoord"); diff --git a/src/ShaderGen/2d/M_RectTexture2DArray.cpp b/src/ShaderGen/2d/M_RectTexture2DArray.cpp index 23c65883..107a95a8 100644 --- a/src/ShaderGen/2d/M_RectTexture2DArray.cpp +++ b/src/ShaderGen/2d/M_RectTexture2DArray.cpp @@ -69,7 +69,7 @@ void main() bool CustomGeometryShader(ShaderCreateInfoGeometry *gsc) override { - gsc->SetGeom(Prim::Points,Prim::TriangleStrip,4); + gsc->SetGeom(PrimitiveType::Points,PrimitiveType::TriangleStrip,4); gsc->AddOutput(SVT_VEC2,"TexCoord"); diff --git a/src/ShaderGen/2d/Std2DMaterial.cpp b/src/ShaderGen/2d/Std2DMaterial.cpp index 3310e127..d25db4d3 100644 --- a/src/ShaderGen/2d/Std2DMaterial.cpp +++ b/src/ShaderGen/2d/Std2DMaterial.cpp @@ -12,7 +12,7 @@ bool Std2DMaterial::CustomVertexShader(ShaderCreateInfoVertex *vsc) 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) { diff --git a/src/ShaderGen/3d/M_BillboardDynamicSize.cpp b/src/ShaderGen/3d/M_BillboardDynamicSize.cpp index 0631ca3d..7f87c47c 100644 --- a/src/ShaderGen/3d/M_BillboardDynamicSize.cpp +++ b/src/ShaderGen/3d/M_BillboardDynamicSize.cpp @@ -66,7 +66,7 @@ void main() bool CustomGeometryShader(ShaderCreateInfoGeometry *gsc) override { - gsc->SetGeom(Prim::Points,Prim::TriangleStrip,4); + gsc->SetGeom(PrimitiveType::Points,PrimitiveType::TriangleStrip,4); gsc->AddOutput(SVT_VEC2,"TexCoord"); diff --git a/src/ShaderGen/3d/M_BillboardFixedSize.cpp b/src/ShaderGen/3d/M_BillboardFixedSize.cpp index 185544a7..c28295b8 100644 --- a/src/ShaderGen/3d/M_BillboardFixedSize.cpp +++ b/src/ShaderGen/3d/M_BillboardFixedSize.cpp @@ -67,7 +67,7 @@ void main() bool CustomGeometryShader(ShaderCreateInfoGeometry *gsc) override { - gsc->SetGeom(Prim::Points,Prim::TriangleStrip,4); + gsc->SetGeom(PrimitiveType::Points,PrimitiveType::TriangleStrip,4); gsc->AddOutput(SVT_VEC2,"TexCoord"); diff --git a/src/ShaderGen/MaterialFileData.h b/src/ShaderGen/MaterialFileData.h index 9fd53a50..e9f8397d 100644 --- a/src/ShaderGen/MaterialFileData.h +++ b/src/ShaderGen/MaterialFileData.h @@ -86,8 +86,8 @@ namespace material_file struct GeometryShaderData:public ShaderData { - Prim input_prim; - Prim output_prim; + PrimitiveType input_prim; + PrimitiveType output_prim; uint max_vertices=0; SVList output; diff --git a/src/ShaderGen/MaterialFileLoader.cpp b/src/ShaderGen/MaterialFileLoader.cpp index fdd8dc26..4946096d 100644 --- a/src/ShaderGen/MaterialFileLoader.cpp +++ b/src/ShaderGen/MaterialFileLoader.cpp @@ -572,7 +572,7 @@ namespace while(hgl::isalpha(*text)||*text=='_')++text; - const Prim ip=ParsePrimName(sp,text-sp); + const PrimitiveType ip=ParsePrimitiveType(sp,text-sp); if(!CheckGeometryShaderIn(ip)) return(false); @@ -591,7 +591,7 @@ namespace while(hgl::isalpha(*text)||*text=='_')++text; - const Prim op=ParsePrimName(sp,text-sp); + const PrimitiveType op=ParsePrimitiveType(sp,text-sp); if(!CheckGeometryShaderOut(op)) return(false); diff --git a/src/ShaderGen/ShaderCreateInfoGeometry.cpp b/src/ShaderGen/ShaderCreateInfoGeometry.cpp index 099d4709..3d51d303 100644 --- a/src/ShaderGen/ShaderCreateInfoGeometry.cpp +++ b/src/ShaderGen/ShaderCreateInfoGeometry.cpp @@ -5,7 +5,7 @@ namespace hgl { 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(!CheckGeometryShaderOut(op))return(false);