Buffer提供Write函数方便写入数据

This commit is contained in:
HuYingzhuo 2019-04-25 14:33:15 +08:00
parent df149ee988
commit adf4897650
2 changed files with 17 additions and 0 deletions

View File

@ -27,4 +27,18 @@ void Buffer::Unmap()
{
vkUnmapMemory(device,buf.memory);
}
bool Buffer::Write(const void *ptr,uint32_t start,uint32_t size)
{
if(!ptr)return(false);
void *dst;
if(vkMapMemory(device,buf.memory,start,size,0,&dst)!=VK_SUCCESS)
return(false);
memcpy(dst,ptr,size);
vkUnmapMemory(device,buf.memory);
return(true);
}
VK_NAMESPACE_END

View File

@ -40,6 +40,9 @@ public:
virtual uint8_t *Map(uint32_t start=0,uint32_t size=0);
void Unmap();
bool Write(const void *ptr,uint32_t start,uint32_t size);
bool Write(const void *ptr){return Write(ptr,0,buf.info.range);}
};//class Buffer
class VertexBuffer:public Buffer