From d26b59cb1d9572dcaefde766d38254a0e085a06f Mon Sep 17 00:00:00 2001 From: hyzboy Date: Fri, 7 Aug 2020 21:59:20 +0800 Subject: [PATCH] use VAB instead VertexAttribBuffer. use VAD instead VertexAttribData. --- CMCore | 2 +- example/Vulkan/DrawTile.cpp | 4 +-- example/Vulkan/FragCoordTest.cpp | 2 +- example/Vulkan/HQFilterTexture.cpp | 4 +-- example/Vulkan/LoadStaticMesh.cpp | 8 ++--- example/Vulkan/RectanglePrimitive.cpp | 4 +-- example/Vulkan/first_triangle.cpp | 4 +-- example/Vulkan/indices_rect.cpp | 2 +- example/Vulkan/texture_rect.cpp | 4 +-- inc/hgl/graph/SceneDB.h | 6 ++-- inc/hgl/graph/VertexAttribData.h | 3 +- inc/hgl/graph/VertexAttribDataAccess.h | 8 ++--- inc/hgl/graph/font/TextRenderable.h | 19 +++++++++- inc/hgl/graph/vulkan/VK.h | 3 ++ inc/hgl/graph/vulkan/VKDevice.h | 42 +++++++++++----------- inc/hgl/graph/vulkan/VKRenderable.h | 4 +-- src/RenderDevice/Vulkan/VKDeviceBuffer.cpp | 2 +- src/RenderDevice/Vulkan/VKDeviceImage.cpp | 2 +- src/RenderDevice/Vulkan/VKRenderable.cpp | 4 +-- src/RenderDevice/Vulkan/VKTileData.cpp | 2 +- src/SceneGraph/RenderableCreater.cpp | 2 +- src/SceneGraph/SceneDB.cpp | 4 +-- src/SceneGraph/VertexAttribData.cpp | 2 +- 23 files changed, 79 insertions(+), 58 deletions(-) diff --git a/CMCore b/CMCore index c826b3d8..4c22ba5a 160000 --- a/CMCore +++ b/CMCore @@ -1 +1 @@ -Subproject commit c826b3d8e5c0cb77f10729ce81bb388313094a5e +Subproject commit 4c22ba5a6066bd60badb65b6ce745562664c1705 diff --git a/example/Vulkan/DrawTile.cpp b/example/Vulkan/DrawTile.cpp index 3e930f90..487af96c 100644 --- a/example/Vulkan/DrawTile.cpp +++ b/example/Vulkan/DrawTile.cpp @@ -45,8 +45,8 @@ private: vulkan::Pipeline * pipeline =nullptr; - vulkan::VertexAttribBuffer *vertex_buffer =nullptr; - vulkan::VertexAttribBuffer *tex_coord_buffer =nullptr; + vulkan::VAB *vertex_buffer =nullptr; + vulkan::VAB *tex_coord_buffer =nullptr; public: diff --git a/example/Vulkan/FragCoordTest.cpp b/example/Vulkan/FragCoordTest.cpp index f144c094..76558c9f 100644 --- a/example/Vulkan/FragCoordTest.cpp +++ b/example/Vulkan/FragCoordTest.cpp @@ -36,7 +36,7 @@ private: vulkan::Pipeline * pipeline =nullptr; - vulkan::VertexAttribBuffer * vertex_buffer =nullptr; + vulkan::VAB * vertex_buffer =nullptr; public: diff --git a/example/Vulkan/HQFilterTexture.cpp b/example/Vulkan/HQFilterTexture.cpp index 549bd827..152aad41 100644 --- a/example/Vulkan/HQFilterTexture.cpp +++ b/example/Vulkan/HQFilterTexture.cpp @@ -69,8 +69,8 @@ private: vulkan::Sampler * sampler_linear =nullptr; vulkan::Sampler * sampler_nearest =nullptr; - vulkan::VertexAttribBuffer * vertex_buffer =nullptr; - vulkan::VertexAttribBuffer * tex_coord_buffer =nullptr; + vulkan::VAB * vertex_buffer =nullptr; + vulkan::VAB * tex_coord_buffer =nullptr; vulkan::IndexBuffer * index_buffer =nullptr; SceneNode render_root; diff --git a/example/Vulkan/LoadStaticMesh.cpp b/example/Vulkan/LoadStaticMesh.cpp index 2f424991..aa894be7 100644 --- a/example/Vulkan/LoadStaticMesh.cpp +++ b/example/Vulkan/LoadStaticMesh.cpp @@ -36,7 +36,7 @@ vulkan::Renderable *CreateMeshRenderable(SceneDB *db,vulkan::Material *mtl,const if(vertex_binding==-1) return(nullptr); - vulkan::VertexAttribBuffer *vbo=db->CreateVAB(FMT_RGB32F,mesh->vertex_count,mesh->position); + vulkan::VAB *vbo=db->CreateVAB(FMT_RGB32F,mesh->vertex_count,mesh->position); render_obj=mtl->CreateRenderable(); render_obj->Set(vertex_binding,vbo); @@ -47,7 +47,7 @@ vulkan::Renderable *CreateMeshRenderable(SceneDB *db,vulkan::Material *mtl,const if(normal_binding!=-1) { - vulkan::VertexAttribBuffer *vbo=db->CreateVAB(FMT_RGB32F,mesh->vertex_count,mesh->normal); + vulkan::VAB *vbo=db->CreateVAB(FMT_RGB32F,mesh->vertex_count,mesh->normal); render_obj->Set(normal_binding,vbo); } @@ -56,7 +56,7 @@ vulkan::Renderable *CreateMeshRenderable(SceneDB *db,vulkan::Material *mtl,const if(tagent_binding!=-1) { - vulkan::VertexAttribBuffer *vbo=db->CreateVAB(FMT_RGB32F,mesh->vertex_count,mesh->tangent); + vulkan::VAB *vbo=db->CreateVAB(FMT_RGB32F,mesh->vertex_count,mesh->tangent); render_obj->Set(tagent_binding,vbo); } @@ -65,7 +65,7 @@ vulkan::Renderable *CreateMeshRenderable(SceneDB *db,vulkan::Material *mtl,const if(bitagent_binding!=-1) { - vulkan::VertexAttribBuffer *vbo=db->CreateVAB(FMT_RGB32F,mesh->vertex_count,mesh->bitangent); + vulkan::VAB *vbo=db->CreateVAB(FMT_RGB32F,mesh->vertex_count,mesh->bitangent); render_obj->Set(bitagent_binding,vbo); } diff --git a/example/Vulkan/RectanglePrimitive.cpp b/example/Vulkan/RectanglePrimitive.cpp index 5c928eab..68f64835 100644 --- a/example/Vulkan/RectanglePrimitive.cpp +++ b/example/Vulkan/RectanglePrimitive.cpp @@ -45,8 +45,8 @@ private: vulkan::Pipeline * pipeline =nullptr; - vulkan::VertexAttribBuffer *vertex_buffer =nullptr; - vulkan::VertexAttribBuffer *tex_coord_buffer =nullptr; + vulkan::VAB *vertex_buffer =nullptr; + vulkan::VAB *tex_coord_buffer =nullptr; private: diff --git a/example/Vulkan/first_triangle.cpp b/example/Vulkan/first_triangle.cpp index 75d2701f..8f5b1995 100644 --- a/example/Vulkan/first_triangle.cpp +++ b/example/Vulkan/first_triangle.cpp @@ -42,8 +42,8 @@ private: vulkan::Pipeline * pipeline =nullptr; - vulkan::VertexAttribBuffer * vertex_buffer =nullptr; - vulkan::VertexAttribBuffer * color_buffer =nullptr; + vulkan::VAB * vertex_buffer =nullptr; + vulkan::VAB * color_buffer =nullptr; public: diff --git a/example/Vulkan/indices_rect.cpp b/example/Vulkan/indices_rect.cpp index 507c5e06..a5166514 100644 --- a/example/Vulkan/indices_rect.cpp +++ b/example/Vulkan/indices_rect.cpp @@ -47,7 +47,7 @@ private: vulkan::Pipeline * pipeline =nullptr; - vulkan::VertexAttribBuffer *vertex_buffer =nullptr; + vulkan::VAB *vertex_buffer =nullptr; vulkan::IndexBuffer * index_buffer =nullptr; public: diff --git a/example/Vulkan/texture_rect.cpp b/example/Vulkan/texture_rect.cpp index baff9bb9..bb398fdc 100644 --- a/example/Vulkan/texture_rect.cpp +++ b/example/Vulkan/texture_rect.cpp @@ -57,8 +57,8 @@ private: vulkan::Pipeline * pipeline =nullptr; - vulkan::VertexAttribBuffer * vertex_buffer =nullptr; - vulkan::VertexAttribBuffer * tex_coord_buffer =nullptr; + vulkan::VAB * vertex_buffer =nullptr; + vulkan::VAB * tex_coord_buffer =nullptr; vulkan::IndexBuffer * index_buffer =nullptr; public: diff --git a/inc/hgl/graph/SceneDB.h b/inc/hgl/graph/SceneDB.h index 5406e30d..7479338a 100644 --- a/inc/hgl/graph/SceneDB.h +++ b/inc/hgl/graph/SceneDB.h @@ -64,9 +64,9 @@ namespace hgl public: //Create - vulkan::VertexAttribBuffer *CreateVAB(VkFormat format,uint32_t count,const void *data,VkSharingMode sharing_mode=VK_SHARING_MODE_EXCLUSIVE); - vulkan::VertexAttribBuffer *CreateVAB(VkFormat format,uint32_t count,VkSharingMode sharing_mode=VK_SHARING_MODE_EXCLUSIVE){return CreateVAB(format,count,nullptr,sharing_mode);} - vulkan::VertexAttribBuffer *CreateVAB(const VertexAttribData *vad,VkSharingMode sharing_mode=VK_SHARING_MODE_EXCLUSIVE){return CreateVAB(vad->GetVulkanFormat(),vad->GetCount(),vad->GetData(),sharing_mode);} + vulkan::VAB *CreateVAB(VkFormat format,uint32_t count,const void *data,VkSharingMode sharing_mode=VK_SHARING_MODE_EXCLUSIVE); + vulkan::VAB *CreateVAB(VkFormat format,uint32_t count,VkSharingMode sharing_mode=VK_SHARING_MODE_EXCLUSIVE){return CreateVAB(format,count,nullptr,sharing_mode);} + vulkan::VAB *CreateVAB(const VAD *vad,VkSharingMode sharing_mode=VK_SHARING_MODE_EXCLUSIVE){return CreateVAB(vad->GetVulkanFormat(),vad->GetCount(),vad->GetData(),sharing_mode);} #define SCENE_DB_CREATE_FUNC(name) vulkan::Buffer *Create##name(VkDeviceSize size,void *data,VkSharingMode sharing_mode=VK_SHARING_MODE_EXCLUSIVE); \ vulkan::Buffer *Create##name(VkDeviceSize size,VkSharingMode sharing_mode=VK_SHARING_MODE_EXCLUSIVE); diff --git a/inc/hgl/graph/VertexAttribData.h b/inc/hgl/graph/VertexAttribData.h index b35d563a..6a7b78e3 100644 --- a/inc/hgl/graph/VertexAttribData.h +++ b/inc/hgl/graph/VertexAttribData.h @@ -52,7 +52,8 @@ namespace hgl * @param vecsize vec数量 * @param vertex_count 顶点数量 */ - VertexAttribData *CreateVertexAttribData(const vulkan::BaseType base_type,const uint32_t vecsize,const uint32_t vertex_count); + VAD *CreateVertexAttribData(const vulkan::BaseType base_type,const uint32_t vecsize,const uint32_t vertex_count); + //这个函数比较重要,就不搞成CreateVAD的简写了 }//namespace graph }//namespace hgl #endif//HGL_GRAPH_VERTEX_ATTRIB_DATA_INCLUDE diff --git a/inc/hgl/graph/VertexAttribDataAccess.h b/inc/hgl/graph/VertexAttribDataAccess.h index 199d868d..123aa80c 100644 --- a/inc/hgl/graph/VertexAttribDataAccess.h +++ b/inc/hgl/graph/VertexAttribDataAccess.h @@ -130,7 +130,7 @@ namespace hgl static VkFormat GetVulkanFormat(){return VKFMT;} - static VertexAttribDataAccess1 * Create(VertexAttribData *vad) + static VertexAttribDataAccess1 * Create(VAD *vad) { if(!vad)return(nullptr); @@ -223,7 +223,7 @@ namespace hgl static VkFormat GetVulkanFormat(){return VKFMT;} - static VertexAttribDataAccess2 * Create(VertexAttribData *vad) + static VertexAttribDataAccess2 * Create(VAD *vad) { if(!vad)return(nullptr); @@ -522,7 +522,7 @@ namespace hgl static VkFormat GetVulkanFormat(){return VKFMT;} - static VertexAttribDataAccess3 * Create(VertexAttribData *vad) + static VertexAttribDataAccess3 * Create(VAD *vad) { if(!vad)return(nullptr); @@ -794,7 +794,7 @@ namespace hgl static VkFormat GetVulkanFormat(){return VKFMT;} - static VertexAttribDataAccess4 * Create(VertexAttribData *vad) + static VertexAttribDataAccess4 * Create(VAD *vad) { if(!vad)return(nullptr); diff --git a/inc/hgl/graph/font/TextRenderable.h b/inc/hgl/graph/font/TextRenderable.h index dcebb50e..63a401f2 100644 --- a/inc/hgl/graph/font/TextRenderable.h +++ b/inc/hgl/graph/font/TextRenderable.h @@ -6,9 +6,26 @@ namespace hgl { namespace graph { + /** + * 文本可渲染对象 + */ class TextRenderable:public vulkan::Renderable { - };// + vulkan::Renderable * render_obj; + + uint32 max_count; ///<缓冲区最大容量 + uint32 cur_count; ///<当前容量 + + vulkan::VertexAttribBuffer *vertex_buffer; + vulkan::VertexAttribBuffer *tex_coord_buffer; + + public: + + TextRenderable(); + virtual ~TextRenderable(); + };//class TextRenderable:public vulkan::Renderable + + }//namespace graph }//namespace hgl #endif//HGL_GRAPH_TEXT_RENDERABLE_INCLUDE diff --git a/inc/hgl/graph/vulkan/VK.h b/inc/hgl/graph/vulkan/VK.h index 334fa38c..a49f4670 100644 --- a/inc/hgl/graph/vulkan/VK.h +++ b/inc/hgl/graph/vulkan/VK.h @@ -36,7 +36,10 @@ class Sampler; class Memory; class Buffer; struct BufferData; + class VertexAttribBuffer; +using VAB=VertexAttribBuffer; + class IndexBuffer; class CommandBuffer; diff --git a/inc/hgl/graph/vulkan/VKDevice.h b/inc/hgl/graph/vulkan/VKDevice.h index 1fb86ebe..21a1446b 100644 --- a/inc/hgl/graph/vulkan/VKDevice.h +++ b/inc/hgl/graph/vulkan/VKDevice.h @@ -82,27 +82,28 @@ public: public: //内存相关 Memory *CreateMemory(const VkMemoryRequirements &,const uint32_t properties); + Memory *CreateMemory(VkImage,const uint32 flag=VK_MEMORY_PROPERTY_DEVICE_LOCAL_BIT); private: //Buffer相关 - bool CreateBuffer(BufferData *buf,VkBufferUsageFlags buf_usage,VkDeviceSize size,const void *data,VkSharingMode sharing_mode); + bool CreateBuffer(BufferData *buf,VkBufferUsageFlags buf_usage,VkDeviceSize size,const void *data,VkSharingMode sharing_mode); public: //Buffer相关 - Buffer * CreateBuffer(VkBufferUsageFlags buf_usage,VkDeviceSize size,const void *data,VkSharingMode sharing_mode=VK_SHARING_MODE_EXCLUSIVE); - Buffer * CreateBuffer(VkBufferUsageFlags buf_usage,VkDeviceSize size,VkSharingMode sharing_mode=VK_SHARING_MODE_EXCLUSIVE){return CreateBuffer(buf_usage,size,nullptr,sharing_mode);} + Buffer * CreateBuffer(VkBufferUsageFlags buf_usage,VkDeviceSize size,const void *data, VkSharingMode sharing_mode=VK_SHARING_MODE_EXCLUSIVE); + Buffer * CreateBuffer(VkBufferUsageFlags buf_usage,VkDeviceSize size, VkSharingMode sharing_mode=VK_SHARING_MODE_EXCLUSIVE){return CreateBuffer(buf_usage,size,nullptr,sharing_mode);} - VertexAttribBuffer *CreateVAB(VkFormat format,uint32_t count,const void *data,VkSharingMode sharing_mode=VK_SHARING_MODE_EXCLUSIVE); - VertexAttribBuffer *CreateVAB(VkFormat format,uint32_t count,VkSharingMode sharing_mode=VK_SHARING_MODE_EXCLUSIVE){return CreateVAB(format,count,nullptr,sharing_mode);} - VertexAttribBuffer *CreateVAB(const VertexAttribData *vad,VkSharingMode sharing_mode=VK_SHARING_MODE_EXCLUSIVE){return CreateVAB(vad->GetVulkanFormat(),vad->GetCount(),vad->GetData(),sharing_mode);} + VAB * CreateVAB (VkFormat format,uint32_t count,const void *data, VkSharingMode sharing_mode=VK_SHARING_MODE_EXCLUSIVE); + VAB * CreateVAB (VkFormat format,uint32_t count, VkSharingMode sharing_mode=VK_SHARING_MODE_EXCLUSIVE){return CreateVAB(format,count,nullptr,sharing_mode);} + VAB * CreateVAB (const VAD *vad, VkSharingMode sharing_mode=VK_SHARING_MODE_EXCLUSIVE){return CreateVAB(vad->GetVulkanFormat(),vad->GetCount(),vad->GetData(),sharing_mode);} - IndexBuffer * CreateIBO(VkIndexType index_type,uint32_t count,const void *data,VkSharingMode sharing_mode=VK_SHARING_MODE_EXCLUSIVE); - IndexBuffer * CreateIBO16(uint32_t count,const uint16 *data,VkSharingMode sharing_mode=VK_SHARING_MODE_EXCLUSIVE){return CreateIBO(VK_INDEX_TYPE_UINT16,count,(void *)data,sharing_mode);} - IndexBuffer * CreateIBO32(uint32_t count,const uint32 *data,VkSharingMode sharing_mode=VK_SHARING_MODE_EXCLUSIVE){return CreateIBO(VK_INDEX_TYPE_UINT32,count,(void *)data,sharing_mode);} + IndexBuffer * CreateIBO (VkIndexType index_type,uint32_t count,const void *data,VkSharingMode sharing_mode=VK_SHARING_MODE_EXCLUSIVE); + IndexBuffer * CreateIBO16 ( uint32_t count,const uint16 *data,VkSharingMode sharing_mode=VK_SHARING_MODE_EXCLUSIVE){return CreateIBO(VK_INDEX_TYPE_UINT16,count,(void *)data,sharing_mode);} + IndexBuffer * CreateIBO32 ( uint32_t count,const uint32 *data,VkSharingMode sharing_mode=VK_SHARING_MODE_EXCLUSIVE){return CreateIBO(VK_INDEX_TYPE_UINT32,count,(void *)data,sharing_mode);} - IndexBuffer * CreateIBO(VkIndexType index_type,uint32_t count,VkSharingMode sharing_mode=VK_SHARING_MODE_EXCLUSIVE){return CreateIBO(index_type,count,nullptr,sharing_mode);} - IndexBuffer * CreateIBO16(uint32_t count,VkSharingMode sharing_mode=VK_SHARING_MODE_EXCLUSIVE){return CreateIBO(VK_INDEX_TYPE_UINT16,count,nullptr,sharing_mode);} - IndexBuffer * CreateIBO32(uint32_t count,VkSharingMode sharing_mode=VK_SHARING_MODE_EXCLUSIVE){return CreateIBO(VK_INDEX_TYPE_UINT32,count,nullptr,sharing_mode);} + IndexBuffer * CreateIBO (VkIndexType index_type,uint32_t count,VkSharingMode sharing_mode=VK_SHARING_MODE_EXCLUSIVE){return CreateIBO(index_type,count,nullptr,sharing_mode);} + IndexBuffer * CreateIBO16 ( uint32_t count,VkSharingMode sharing_mode=VK_SHARING_MODE_EXCLUSIVE){return CreateIBO(VK_INDEX_TYPE_UINT16,count,nullptr,sharing_mode);} + IndexBuffer * CreateIBO32 ( uint32_t count,VkSharingMode sharing_mode=VK_SHARING_MODE_EXCLUSIVE){return CreateIBO(VK_INDEX_TYPE_UINT32,count,nullptr,sharing_mode);} #define CREATE_BUFFER_OBJECT(LargeName,type) Buffer *Create##LargeName(VkDeviceSize size,void *data,VkSharingMode sharing_mode=VK_SHARING_MODE_EXCLUSIVE){return CreateBuffer(VK_BUFFER_USAGE_##type##_BUFFER_BIT,size,data,sharing_mode);} \ Buffer *Create##LargeName(VkDeviceSize size,VkSharingMode sharing_mode=VK_SHARING_MODE_EXCLUSIVE){return CreateBuffer(VK_BUFFER_USAGE_##type##_BUFFER_BIT,size,nullptr,sharing_mode);} @@ -115,16 +116,15 @@ public: //Buffer相关 public: //Image - VkImage CreateImage1D (const VkFormat format,const uint32_t width,const uint usage,const VkImageTiling tiling); - VkImage CreateImage1DArray (const VkFormat format,const uint32_t width,const uint32_t layer,const uint usage,const VkImageTiling tiling); - VkImage CreateImage2D (const VkFormat format,const uint32_t width,const uint32_t height,const uint usage,const VkImageTiling tiling); - VkImage CreateImage2DArray (const VkFormat format,const uint32_t width,const uint32_t height,const uint32_t layer,const uint usage,const VkImageTiling tiling); - VkImage CreateImage3D (const VkFormat format,const uint32_t width,const uint32_t height,const uint32_t depth,const uint usage,const VkImageTiling tiling); - VkImage CreateImageCubemap (const VkFormat format,const uint32_t width,const uint32_t height,const uint usage,const VkImageTiling tiling); + VkImage CreateImage1D (const VkFormat format,const uint32_t width, const uint usage,const VkImageTiling tiling); + VkImage CreateImage1DArray (const VkFormat format,const uint32_t width,const uint32_t layer, const uint usage,const VkImageTiling tiling); + VkImage CreateImage2D (const VkFormat format,const uint32_t width,const uint32_t height, const uint usage,const VkImageTiling tiling); + VkImage CreateImage2DArray (const VkFormat format,const uint32_t width,const uint32_t height,const uint32_t layer, const uint usage,const VkImageTiling tiling); + VkImage CreateImage3D (const VkFormat format,const uint32_t width,const uint32_t height,const uint32_t depth, const uint usage,const VkImageTiling tiling); + VkImage CreateCubemap (const VkFormat format,const uint32_t width,const uint32_t height, const uint usage,const VkImageTiling tiling); +// VkImage CreateCubemapArray (const VkFormat format,const uint32_t width,const uint32_t height,const uint32_t count, const uint usage,const VkImageTiling tiling); - void DestoryImage(VkImage); - - Memory *CreateMemory(VkImage,const uint32 flag=VK_MEMORY_PROPERTY_DEVICE_LOCAL_BIT); + void DestoryImage (VkImage); public: //Texture diff --git a/inc/hgl/graph/vulkan/VKRenderable.h b/inc/hgl/graph/vulkan/VKRenderable.h index 7a98ac5b..753b0fe1 100644 --- a/inc/hgl/graph/vulkan/VKRenderable.h +++ b/inc/hgl/graph/vulkan/VKRenderable.h @@ -47,8 +47,8 @@ public: void SetBoundingBox(const AABB &aabb){BoundingBox=aabb;} const AABB &GetBoundingBox()const {return BoundingBox;} - bool Set(const int stage_input_binding, VertexAttribBuffer *vb,VkDeviceSize offset=0); - bool Set(const AnsiString &name, VertexAttribBuffer *vb,VkDeviceSize offset=0); + bool Set(const int stage_input_binding, VAB *vb,VkDeviceSize offset=0); + bool Set(const AnsiString &name, VAB *vb,VkDeviceSize offset=0); bool Set(IndexBuffer *ib,VkDeviceSize offset=0) { diff --git a/src/RenderDevice/Vulkan/VKDeviceBuffer.cpp b/src/RenderDevice/Vulkan/VKDeviceBuffer.cpp index 36bebb46..5b210ec8 100644 --- a/src/RenderDevice/Vulkan/VKDeviceBuffer.cpp +++ b/src/RenderDevice/Vulkan/VKDeviceBuffer.cpp @@ -44,7 +44,7 @@ bool Device::CreateBuffer(BufferData *buf,VkBufferUsageFlags buf_usage,VkDeviceS return(false); } -VertexAttribBuffer *Device::CreateVAB(VkFormat format,uint32_t count,const void *data,VkSharingMode sharing_mode) +VAB *Device::CreateVAB(VkFormat format,uint32_t count,const void *data,VkSharingMode sharing_mode) { const uint32_t stride=GetStrideByFormat(format); diff --git a/src/RenderDevice/Vulkan/VKDeviceImage.cpp b/src/RenderDevice/Vulkan/VKDeviceImage.cpp index aeee0da2..1bfcb833 100644 --- a/src/RenderDevice/Vulkan/VKDeviceImage.cpp +++ b/src/RenderDevice/Vulkan/VKDeviceImage.cpp @@ -183,7 +183,7 @@ VkImage Device::CreateImage3D(const VkFormat format,const uint32_t width,const u return image; } -VkImage Device::CreateImageCubemap(const VkFormat format,const uint32_t width,const uint32_t height,const uint usage,const VkImageTiling tiling) +VkImage Device::CreateCubemap(const VkFormat format,const uint32_t width,const uint32_t height,const uint usage,const VkImageTiling tiling) { if(!CheckVulkanFormat(format))return(nullptr); if(width<1||height<1)return(nullptr); diff --git a/src/RenderDevice/Vulkan/VKRenderable.cpp b/src/RenderDevice/Vulkan/VKRenderable.cpp index 28ff8a62..7aebc97f 100644 --- a/src/RenderDevice/Vulkan/VKRenderable.cpp +++ b/src/RenderDevice/Vulkan/VKRenderable.cpp @@ -20,7 +20,7 @@ Renderable::~Renderable() delete[] buf_list; } -bool Renderable::Set(const int stage_input_binding,VertexAttribBuffer *vab,VkDeviceSize offset) +bool Renderable::Set(const int stage_input_binding,VAB *vab,VkDeviceSize offset) { if(stage_input_binding<0||stage_input_binding>=buf_count||!vab)return(false); @@ -38,7 +38,7 @@ bool Renderable::Set(const int stage_input_binding,VertexAttribBuffer *vab,VkDev return(true); } -bool Renderable::Set(const AnsiString &name,VertexAttribBuffer *vab,VkDeviceSize offset) +bool Renderable::Set(const AnsiString &name,VAB *vab,VkDeviceSize offset) { return Set(vertex_sm->GetStageInputBinding(name),vab,offset); } diff --git a/src/RenderDevice/Vulkan/VKTileData.cpp b/src/RenderDevice/Vulkan/VKTileData.cpp index 24a85966..7b09119e 100644 --- a/src/RenderDevice/Vulkan/VKTileData.cpp +++ b/src/RenderDevice/Vulkan/VKTileData.cpp @@ -8,7 +8,7 @@ namespace void AnalyseSize(uint &fw,uint &fh,const uint w,const uint h,const uint count,const uint32_t max_texture_size) { - int total,tw,th,t; + uint total,tw,th,t; fw=fh=0; diff --git a/src/SceneGraph/RenderableCreater.cpp b/src/SceneGraph/RenderableCreater.cpp index ed0703d1..05c1aa24 100644 --- a/src/SceneGraph/RenderableCreater.cpp +++ b/src/SceneGraph/RenderableCreater.cpp @@ -46,7 +46,7 @@ namespace hgl return ssb->data; } - VertexAttribData *RenderableCreater::CreateVAD(const AnsiString &name) + VAD *RenderableCreater::CreateVAD(const AnsiString &name) { if(!vsm)return(nullptr); if(name.IsEmpty())return(nullptr); diff --git a/src/SceneGraph/SceneDB.cpp b/src/SceneGraph/SceneDB.cpp index dc28abb7..df219753 100644 --- a/src/SceneGraph/SceneDB.cpp +++ b/src/SceneGraph/SceneDB.cpp @@ -6,9 +6,9 @@ namespace hgl { namespace graph { - vulkan::VertexAttribBuffer *SceneDB::CreateVAB(VkFormat format,uint32_t count,const void *data,VkSharingMode sharing_mode) + vulkan::VAB *SceneDB::CreateVAB(VkFormat format,uint32_t count,const void *data,VkSharingMode sharing_mode) { - vulkan::VertexAttribBuffer *vb=device->CreateVAB(format,count,data,sharing_mode); + vulkan::VAB *vb=device->CreateVAB(format,count,data,sharing_mode); if(!vb) return(nullptr); diff --git a/src/SceneGraph/VertexAttribData.cpp b/src/SceneGraph/VertexAttribData.cpp index 97017154..fbd25658 100644 --- a/src/SceneGraph/VertexAttribData.cpp +++ b/src/SceneGraph/VertexAttribData.cpp @@ -4,7 +4,7 @@ namespace hgl { namespace graph { - VertexAttribData *CreateVertexAttribData(const vulkan::BaseType base_type,const uint32_t vecsize,const uint32_t vertex_count) + VAD *CreateVertexAttribData(const vulkan::BaseType base_type,const uint32_t vecsize,const uint32_t vertex_count) { VkFormat fmt; uint32_t stride;