used newly VKBufferMap in PrimitiveCreater
This commit is contained in:
@@ -1,10 +1,11 @@
|
||||
#include<hgl/graph/VKBufferMap.h>
|
||||
#include<hgl/graph/VKVertexAttribBuffer.h>
|
||||
#include<iostream>
|
||||
|
||||
VK_NAMESPACE_BEGIN
|
||||
|
||||
VKBufferMap::VKBufferMap(DeviceBuffer *buf,VkDeviceSize off,VkDeviceSize s)
|
||||
{
|
||||
void VKBufferMap::Set(DeviceBuffer *buf,VkDeviceSize off,VkDeviceSize s)
|
||||
{
|
||||
buffer=buf;
|
||||
offset=off;
|
||||
size=s;
|
||||
@@ -12,10 +13,35 @@ VKBufferMap::VKBufferMap(DeviceBuffer *buf,VkDeviceSize off,VkDeviceSize s)
|
||||
map_ptr=nullptr;
|
||||
}
|
||||
|
||||
void VKBufferMap::Clear()
|
||||
{
|
||||
if(buffer&&map_ptr)
|
||||
buffer->Unmap();
|
||||
|
||||
buffer=nullptr;
|
||||
offset=0;
|
||||
size=0;
|
||||
map_ptr=nullptr;
|
||||
}
|
||||
|
||||
VKBufferMap::VKBufferMap()
|
||||
{
|
||||
Set(nullptr,0,0);
|
||||
|
||||
std::cout<<"VKBufferMap Create"<<std::endl;
|
||||
}
|
||||
|
||||
VKBufferMap::VKBufferMap(DeviceBuffer *buf,VkDeviceSize off,VkDeviceSize s)
|
||||
{
|
||||
Set(buf,off,s);
|
||||
}
|
||||
|
||||
VKBufferMap::~VKBufferMap()
|
||||
{
|
||||
if(map_ptr)
|
||||
buffer->DeviceBuffer::Unmap();
|
||||
if(buffer&&map_ptr)
|
||||
buffer->Unmap();
|
||||
|
||||
std::cout<<"VKBufferMap Destory"<<std::endl;
|
||||
}
|
||||
|
||||
void *VKBufferMap::Map()
|
||||
@@ -26,18 +52,18 @@ void *VKBufferMap::Map()
|
||||
if(!buffer)
|
||||
return(nullptr);
|
||||
|
||||
map_ptr=buffer->DeviceBuffer::Map(offset,size);
|
||||
map_ptr=buffer->Map(offset,size);
|
||||
return map_ptr;
|
||||
|
||||
}
|
||||
|
||||
void VKBufferMap::Unmap()
|
||||
{
|
||||
if(map_ptr)
|
||||
if(buffer&&map_ptr)
|
||||
{
|
||||
buffer->DeviceBuffer::Unmap();
|
||||
buffer->Unmap();
|
||||
map_ptr=nullptr;
|
||||
}
|
||||
}
|
||||
|
||||
VK_NAMESPACE_END
|
||||
VK_NAMESPACE_END
|
||||
|
Reference in New Issue
Block a user