diff --git a/inc/hgl/graph/VK.h b/inc/hgl/graph/VK.h index 53afd9bc..16880ae9 100644 --- a/inc/hgl/graph/VK.h +++ b/inc/hgl/graph/VK.h @@ -58,6 +58,12 @@ using VBO=VertexAttribBuffer; class IndexBuffer; +struct IndexBufferData +{ + IndexBuffer *buffer=nullptr; + VkDeviceSize offset=0; +}; + class GPUCmdBuffer; class RenderCmdBuffer; class TextureCmdBuffer; diff --git a/inc/hgl/graph/VKPrimitive.h b/inc/hgl/graph/VKPrimitive.h index 2b09d6e2..7161de5e 100644 --- a/inc/hgl/graph/VKPrimitive.h +++ b/inc/hgl/graph/VKPrimitive.h @@ -7,12 +7,6 @@ #include #include VK_NAMESPACE_BEGIN -struct IndexBufferData -{ - IndexBuffer *buffer; - VkDeviceSize offset; -}; - /** * 单一图元数据 */ @@ -78,7 +72,7 @@ public: VkBuffer GetBuffer (const AnsiString &,VkDeviceSize *); const int GetBufferCount ()const {return buffer_list.GetCount();} - const IndexBufferData * GetIndexBuffer ()const {return &index_buffer_data;} + const IndexBufferData * GetIndexBufferData ()const {return &index_buffer_data;} };//class Primitive VK_NAMESPACE_END #endif//HGL_GRAPH_VULKAN_PRIMITIVE_INCLUDE diff --git a/src/SceneGraph/Vulkan/VKRenderable.cpp b/src/SceneGraph/Vulkan/VKRenderable.cpp index 188c4021..81318ca5 100644 --- a/src/SceneGraph/Vulkan/VKRenderable.cpp +++ b/src/SceneGraph/Vulkan/VKRenderable.cpp @@ -56,7 +56,7 @@ Renderable *CreateRenderable(Primitive *prim,MaterialInstance *mi,Pipeline *p) VBO *vbo; - VertexInputData *vid=new VertexInputData(input_count,prim->GetVertexCount(),prim->GetIndexBuffer()); + VertexInputData *vid=new VertexInputData(input_count,prim->GetVertexCount(),prim->GetIndexBufferData()); const VertexInputFormat *vif=vil->GetFormatList(VertexInputGroup::Basic);