summaryrefslogtreecommitdiffstats
path: root/tools/gfx/vulkan/render-vk.cpp
diff options
context:
space:
mode:
authorZanderMajercik <amajercik@nvidia.com>2022-01-04 11:05:04 -0800
committerGitHub <noreply@github.com>2022-01-04 11:05:04 -0800
commit9d6c7763334908c78027199a0cb1ca3b9841ebab (patch)
treedc75824b08ca23554a0c8e1f98458c103605ebf9 /tools/gfx/vulkan/render-vk.cpp
parent1a1b2a0de67dccc1102449b8620830131d569cde (diff)
Buffer allocation backend. (#2045)
* removed initialization of upload resource for CPU visible buffers (D3D12, Vulkan) * reverted slang-gfx.h change * declared DescBase::hasCpuAccessFlag() const to make backend changes compile under gcc * commit before checking master branch * commit before merge * commit before checking master * commit before merging upstream * revert vulkan changes * commit before testing on master * commit before merge with master * reverted bad merge changes * reverted more bad merge changes in render-d3d12.cpp * reverted buffer transition in _uploadBufferData * implemented bufferBarrier() in render-d3d12.cpp * reverted uneccesary transition in createBuffer * create staging buffer even when AccessFlag::None passed to D3D11 createBufferResource * renamed AccessFlags to MemoryType Co-authored-by: Yong He <yonghe@outlook.com>
Diffstat (limited to 'tools/gfx/vulkan/render-vk.cpp')
-rw-r--r--tools/gfx/vulkan/render-vk.cpp20
1 files changed, 10 insertions, 10 deletions
diff --git a/tools/gfx/vulkan/render-vk.cpp b/tools/gfx/vulkan/render-vk.cpp
index 232f18f01..8260ab283 100644
--- a/tools/gfx/vulkan/render-vk.cpp
+++ b/tools/gfx/vulkan/render-vk.cpp
@@ -4856,13 +4856,13 @@ public:
public:
void init(CommandBufferImpl* commandBuffer) { m_commandBuffer = commandBuffer; }
- inline VkAccessFlags translateAccelerationStructureAccessFlag(AccessFlag::Enum access)
+ inline VkAccessFlags translateAccelerationStructureAccessFlag(MemoryType::Enum access)
{
VkAccessFlags result = 0;
- if (access & AccessFlag::Read)
+ if (access & MemoryType::CpuRead)
result |= VK_ACCESS_ACCELERATION_STRUCTURE_READ_BIT_KHR |
VK_ACCESS_SHADER_READ_BIT | VK_ACCESS_TRANSFER_READ_BIT;
- if (access & AccessFlag::Write)
+ if (access & MemoryType::CpuWrite)
result |= VK_ACCESS_ACCELERATION_STRUCTURE_WRITE_BIT_KHR;
return result;
}
@@ -4870,8 +4870,8 @@ public:
inline void _memoryBarrier(
int count,
IAccelerationStructure* const* structures,
- AccessFlag::Enum srcAccess,
- AccessFlag::Enum destAccess)
+ MemoryType::Enum srcAccess,
+ MemoryType::Enum destAccess)
{
ShortList<VkBufferMemoryBarrier> memBarriers;
memBarriers.setCount(count);
@@ -4998,7 +4998,7 @@ public:
if (propertyQueryCount)
{
- _memoryBarrier(1, &desc.dest, AccessFlag::Write, AccessFlag::Read);
+ _memoryBarrier(1, &desc.dest, MemoryType::CpuWrite, MemoryType::CpuRead);
_queryAccelerationStructureProperties(
1, &desc.dest, propertyQueryCount, queryDescs);
}
@@ -5071,8 +5071,8 @@ public:
virtual SLANG_NO_THROW void SLANG_MCALL memoryBarrier(
int count,
IAccelerationStructure* const* structures,
- AccessFlag::Enum srcAccess,
- AccessFlag::Enum destAccess) override
+ MemoryType::Enum srcAccess,
+ MemoryType::Enum destAccess) override
{
_memoryBarrier(count, structures, srcAccess, destAccess);
}
@@ -6988,7 +6988,7 @@ static VkImageUsageFlags _calcImageUsageFlags(
{
VkImageUsageFlags usage = _calcImageUsageFlags(states);
- if ((cpuAccessFlags & AccessFlag::Write) || initData)
+ if ((cpuAccessFlags & MemoryType::CpuWrite) || initData)
{
usage |= VK_IMAGE_USAGE_TRANSFER_DST_BIT;
}
@@ -7519,7 +7519,7 @@ Result VKDevice::createBufferResource(const IBufferResource::Desc& descIn, const
SLANG_RETURN_ON_FAIL(buffer->m_buffer.init(m_api, desc.sizeInBytes, usage, reqMemoryProperties));
}
- if ((desc.cpuAccessFlags & AccessFlag::Write) || initData)
+ if ((desc.cpuAccessFlags & MemoryType::CpuWrite) || initData)
{
SLANG_RETURN_ON_FAIL(buffer->m_uploadBuffer.init(m_api, bufferSize, VK_BUFFER_USAGE_TRANSFER_SRC_BIT, VK_MEMORY_PROPERTY_HOST_VISIBLE_BIT | VK_MEMORY_PROPERTY_HOST_COHERENT_BIT));
}