optimized params of GPUDevice::CommitTexture2DMipmaps
This commit is contained in:
parent
b064a4de5f
commit
3bd165fbe5
@ -157,7 +157,7 @@ public: //Image
|
||||
private: //texture
|
||||
|
||||
bool CommitTexture2D (Texture2D *,GPUBuffer *buf,VkPipelineStageFlags stage);
|
||||
bool CommitTexture2DMipmaps (Texture2D *,GPUBuffer *buf,uint32_t width,uint32_t height,uint32_t);
|
||||
bool CommitTexture2DMipmaps (Texture2D *,GPUBuffer *buf,const VkExtent3D &,uint32_t);
|
||||
bool CommitTexture2D (Texture2D *,GPUBuffer *buf,const VkBufferImageCopy *,const int count,VkPipelineStageFlags=VK_PIPELINE_STAGE_FRAGMENT_SHADER_BIT);
|
||||
|
||||
bool SubmitTexture (const VkCommandBuffer *cmd_bufs,const uint32_t count=1); ///<提交纹理处理到队列
|
||||
|
@ -67,7 +67,7 @@ Texture2D *GPUDevice::CreateTexture2D(TextureCreateInfo *tci)
|
||||
}
|
||||
else //本身有mipmaps数据
|
||||
{
|
||||
CommitTexture2DMipmaps(tex,tci->buffer,tci->extent.width,tci->extent.height,tci->mipmap_zero_total_bytes);
|
||||
CommitTexture2DMipmaps(tex,tci->buffer,tci->extent,tci->mipmap_zero_total_bytes);
|
||||
}
|
||||
}
|
||||
else
|
||||
@ -145,10 +145,10 @@ bool GPUDevice::CommitTexture2D(Texture2D *tex,GPUBuffer *buf,VkPipelineStageFla
|
||||
return CommitTexture2D(tex,buf,&buffer_image_copy,1,destinationStage);
|
||||
}
|
||||
|
||||
bool GPUDevice::CommitTexture2DMipmaps(Texture2D *tex,GPUBuffer *buf,uint32_t width,uint32_t height,uint32_t total_bytes)
|
||||
bool GPUDevice::CommitTexture2DMipmaps(Texture2D *tex,GPUBuffer *buf,const VkExtent3D &extent,uint32_t total_bytes)
|
||||
{
|
||||
if(!tex||!buf
|
||||
||width<=0||height<=0)
|
||||
||extent.width*extent.height<=0)
|
||||
return(false);
|
||||
|
||||
const uint32_t miplevel=tex->GetMipLevel();
|
||||
@ -158,6 +158,9 @@ bool GPUDevice::CommitTexture2DMipmaps(Texture2D *tex,GPUBuffer *buf,uint32_t wi
|
||||
VkDeviceSize offset=0;
|
||||
uint32_t level=0;
|
||||
|
||||
uint32_t width=extent.width;
|
||||
uint32_t height=extent.height;
|
||||
|
||||
buffer_image_copy.zero();
|
||||
|
||||
for(VkBufferImageCopy &bic:buffer_image_copy)
|
||||
|
Loading…
x
Reference in New Issue
Block a user