diff --git a/example/Vulkan/second_triangle.cpp b/example/Vulkan/second_triangle.cpp index d4283410..88e3f156 100644 --- a/example/Vulkan/second_triangle.cpp +++ b/example/Vulkan/second_triangle.cpp @@ -15,11 +15,11 @@ constexpr uint32_t SCREEN_HEIGHT=720; constexpr uint32_t VERTEX_COUNT=3; -constexpr float position_data[VERTEX_COUNT][2]= +static float position_data[VERTEX_COUNT][2]= { - {SCREEN_WIDTH*0.5, SCREEN_HEIGHT*0.25}, - {SCREEN_WIDTH*0.75, SCREEN_HEIGHT*0.75}, - {SCREEN_WIDTH*0.25, SCREEN_HEIGHT*0.75} + {0.5, 0.25}, + {0.75, 0.75}, + {0.25, 0.75} }; constexpr float color_data[VERTEX_COUNT][4]= @@ -29,6 +29,8 @@ constexpr float color_data[VERTEX_COUNT][4]= {0,0,1,1} }; +#define USE_ZERO2ONE_COORD //使用左上角0,0右下角1,1的坐标系 + class TestApp:public VulkanApplicationFramework { private: @@ -41,8 +43,12 @@ private: private: bool InitMaterial() - { + { +#ifdef USE_ZERO2ONE_COORD + MaterialCreateInfo *mci=mtl::CreateVertexColor2D(CoordinateSystem2D::ZeroToOne); +#else MaterialCreateInfo *mci=mtl::CreateVertexColor2D(CoordinateSystem2D::Ortho); +#endif//USE_ZERO2ONE_COORD //material_instance=db->CreateMaterialInstance(OS_TEXT("res/material/VertexColor2D")); @@ -66,6 +72,16 @@ private: Primitive *primitive=db->CreatePrimitive(VERTEX_COUNT); if(!primitive)return(false); +#ifndef USE_ZERO2ONE_COORD //使用ortho坐标系 + + for(uint i=0;iSet(VAN::Position, db->CreateVBO(VF_V2F,VERTEX_COUNT,position_data )))return(false); if(!primitive->Set(VAN::Color, db->CreateVBO(VF_V4F,VERTEX_COUNT,color_data )))return(false); diff --git a/inc/hgl/graph/SceneInfo.h b/inc/hgl/graph/SceneInfo.h index b23be4c2..bc644125 100644 --- a/inc/hgl/graph/SceneInfo.h +++ b/inc/hgl/graph/SceneInfo.h @@ -7,7 +7,7 @@ namespace hgl { namespace graph { - /** + /** * MVP矩阵 */ struct MVPMatrix diff --git a/src/SceneGraph/Vulkan/VKMaterialDescriptorManager.cpp b/src/SceneGraph/Vulkan/VKMaterialDescriptorManager.cpp index d62cf0c6..5bf00746 100644 --- a/src/SceneGraph/Vulkan/VKMaterialDescriptorManager.cpp +++ b/src/SceneGraph/Vulkan/VKMaterialDescriptorManager.cpp @@ -78,7 +78,6 @@ MaterialDescriptorManager::MaterialDescriptorManager(const UTF8String &name,cons dsl_ci[i].pBindings=nullptr; sd_count+=sds_array[i].count; - } if(sd_count<=0) @@ -116,7 +115,7 @@ MaterialDescriptorManager::MaterialDescriptorManager(const UTF8String &name,cons ++dsl_bind[i]; - ++sp; + ++sp; } } } @@ -141,4 +140,4 @@ const int MaterialDescriptorManager::GetBinding(const DescriptorSetType &set_typ return(binding_map[size_t(set_type)][size_t(desc_type)].Get(name,result)?result:-1); } -VK_NAMESPACE_END \ No newline at end of file +VK_NAMESPACE_END diff --git a/src/ShaderGen/2d/VertexColor2D.cpp b/src/ShaderGen/2d/VertexColor2D.cpp index a52cb4d9..41866412 100644 --- a/src/ShaderGen/2d/VertexColor2D.cpp +++ b/src/ShaderGen/2d/VertexColor2D.cpp @@ -22,8 +22,6 @@ MaterialCreateInfo *CreateVertexColor2D(const CoordinateSystem2D &cs) if(cs==CoordinateSystem2D::Ortho) { -// mci->AddStruct(GlobalDescriptor::ViewportInfo); - mci->AddUBO(VK_SHADER_STAGE_VERTEX_BIT,GlobalDescriptor::ViewportInfo); sfGetPosition="vec4 GetPosition(){return viewport.ortho_matrix*vec4(Position,0,1);}";