From 65c3d5cad18aaa788fcc10d8fce2d9e6533ac0c3 Mon Sep 17 00:00:00 2001 From: "HuYingzhuo(hugo/hyzboy)" Date: Mon, 25 Sep 2023 19:49:06 +0800 Subject: [PATCH] renamed to CreateTexture from GetTexture in TextureLoader<> --- inc/hgl/graph/Bitmap2DLoader.h | 2 +- inc/hgl/graph/TextureLoader.h | 2 +- .../Vulkan/Texture/VKTexture2DArrayLoader.cpp | 2 +- .../Vulkan/Texture/VKTexture2DLoader.cpp | 2 +- .../Vulkan/Texture/VKTextureCubeLoader.cpp | 2 +- .../Vulkan/Texture/VKTextureLoader.h | 18 ++++++++++++------ 6 files changed, 17 insertions(+), 11 deletions(-) diff --git a/inc/hgl/graph/Bitmap2DLoader.h b/inc/hgl/graph/Bitmap2DLoader.h index 9b9bc61c..9dc830b6 100644 --- a/inc/hgl/graph/Bitmap2DLoader.h +++ b/inc/hgl/graph/Bitmap2DLoader.h @@ -21,7 +21,7 @@ namespace hgl ~Bitmap2DLoader(); void *OnBegin(uint32 total_bytes) override; - void OnEnd() override {} + bool OnEnd() override {return(false);} BitmapData *GetBitmap(); };//class Bitmap2DLoader diff --git a/inc/hgl/graph/TextureLoader.h b/inc/hgl/graph/TextureLoader.h index 895ff4ec..efc6e61a 100644 --- a/inc/hgl/graph/TextureLoader.h +++ b/inc/hgl/graph/TextureLoader.h @@ -86,7 +86,7 @@ namespace hgl protected: virtual void *OnBegin(uint32)=0; - virtual void OnEnd()=0; + virtual bool OnEnd()=0; virtual void OnError(){} public: diff --git a/src/SceneGraph/Vulkan/Texture/VKTexture2DArrayLoader.cpp b/src/SceneGraph/Vulkan/Texture/VKTexture2DArrayLoader.cpp index 068d3871..695f2aeb 100644 --- a/src/SceneGraph/Vulkan/Texture/VKTexture2DArrayLoader.cpp +++ b/src/SceneGraph/Vulkan/Texture/VKTexture2DArrayLoader.cpp @@ -22,6 +22,6 @@ Texture2DArray *CreateTexture2DArrayFromFile(GPUDevice *device,const OSString &f if(!loader.Load(filename)) return(nullptr); - return loader.GetTexture(); + return loader.CreateTexture(); } VK_NAMESPACE_END diff --git a/src/SceneGraph/Vulkan/Texture/VKTexture2DLoader.cpp b/src/SceneGraph/Vulkan/Texture/VKTexture2DLoader.cpp index e8e9ece2..80d68c4d 100644 --- a/src/SceneGraph/Vulkan/Texture/VKTexture2DLoader.cpp +++ b/src/SceneGraph/Vulkan/Texture/VKTexture2DLoader.cpp @@ -22,6 +22,6 @@ Texture2D *CreateTexture2DFromFile(GPUDevice *device,const OSString &filename,bo if(!loader.Load(filename)) return(nullptr); - return loader.GetTexture(); + return loader.CreateTexture(); } VK_NAMESPACE_END diff --git a/src/SceneGraph/Vulkan/Texture/VKTextureCubeLoader.cpp b/src/SceneGraph/Vulkan/Texture/VKTextureCubeLoader.cpp index 7d7322d5..41562f0c 100644 --- a/src/SceneGraph/Vulkan/Texture/VKTextureCubeLoader.cpp +++ b/src/SceneGraph/Vulkan/Texture/VKTextureCubeLoader.cpp @@ -22,6 +22,6 @@ TextureCube *CreateTextureCubeFromFile(GPUDevice *device,const OSString &filenam if(!loader.Load(filename)) return(nullptr); - return loader.GetTexture(); + return loader.CreateTexture(); } VK_NAMESPACE_END diff --git a/src/SceneGraph/Vulkan/Texture/VKTextureLoader.h b/src/SceneGraph/Vulkan/Texture/VKTextureLoader.h index fd1ba0d6..e4d55841 100644 --- a/src/SceneGraph/Vulkan/Texture/VKTextureLoader.h +++ b/src/SceneGraph/Vulkan/Texture/VKTextureLoader.h @@ -48,12 +48,19 @@ public: } void OnExtent(VkExtent3D &extent); + T *OnCreateTexture(TextureCreateInfo *); - void OnEnd() override + bool OnEnd() override { + if(!buf)return(false); buf->Unmap(); + return(true); + } + + T *CreateTexture() + { TextureCreateInfo *tci=new TextureCreateInfo(format); VkExtent3D extent; @@ -82,12 +89,11 @@ public: SAFE_CLEAR(tex); tex=OnCreateTexture(tci); - if(tex) - buf=nullptr; - } + if(!tex) + return nullptr; + + buf=nullptr; - T *GetTexture() - { T *result=tex; tex=nullptr; return result;