87 lines
3.1 KiB
C++
87 lines
3.1 KiB
C++
#pragma once
|
|||
|
|
#include "Graphics/GraphicsEnums.h"
|
||
|
|
#include <vulkan/vulkan.h>
|
||
|
|
|
||
|
|
#define VK_CHECK(f) \
|
||
|
|
{ \
|
||
|
|
VkResult res = (f); \
|
||
|
|
if (res != VK_SUCCESS) \
|
||
|
|
{ \
|
||
|
|
std::cout << "Fatal : VkResult is \"" << res << "\" in " << __FILE__ << " at line " << __LINE__ << std::endl; \
|
||
|
|
assert(res == VK_SUCCESS); \
|
||
|
|
} \
|
||
|
|
}
|
||
|
|
|
||
|
|
namespace Seele
|
||
|
|
{
|
||
|
|
VkDescriptorType cast(const SeDescriptorType& descriptorType)
|
||
|
|
{
|
||
|
|
switch (descriptorType)
|
||
|
|
{
|
||
|
|
case SE_DESCRIPTOR_TYPE_SAMPLER:
|
||
|
|
return VK_DESCRIPTOR_TYPE_SAMPLER;
|
||
|
|
case SE_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER:
|
||
|
|
return VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER;
|
||
|
|
case SE_DESCRIPTOR_TYPE_SAMPLED_IMAGE:
|
||
|
|
return VK_DESCRIPTOR_TYPE_SAMPLED_IMAGE;
|
||
|
|
case SE_DESCRIPTOR_TYPE_STORAGE_IMAGE:
|
||
|
|
return VK_DESCRIPTOR_TYPE_STORAGE_IMAGE;
|
||
|
|
case SE_DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER:
|
||
|
|
return VK_DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER;
|
||
|
|
case SE_DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER:
|
||
|
|
return VK_DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER;
|
||
|
|
case SE_DESCRIPTOR_TYPE_UNIFORM_BUFFER:
|
||
|
|
return VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER;
|
||
|
|
case SE_DESCRIPTOR_TYPE_STORAGE_BUFFER:
|
||
|
|
return VK_DESCRIPTOR_TYPE_STORAGE_BUFFER;
|
||
|
|
case SE_DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC:
|
||
|
|
return VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC;
|
||
|
|
case SE_DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC:
|
||
|
|
return VK_DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC;
|
||
|
|
case SE_DESCRIPTOR_TYPE_INPUT_ATTACHMENT:
|
||
|
|
return VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT;
|
||
|
|
case SE_DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK_EXT:
|
||
|
|
return VK_DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK_EXT;
|
||
|
|
case SE_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_NV:
|
||
|
|
return VK_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_NV;
|
||
|
|
default:
|
||
|
|
break;
|
||
|
|
}
|
||
|
|
}
|
||
|
|
SeDescriptorType cast(const VkDescriptorType& descriptorType)
|
||
|
|
{
|
||
|
|
switch (descriptorType)
|
||
|
|
{
|
||
|
|
|
||
|
|
case VK_DESCRIPTOR_TYPE_SAMPLER:
|
||
|
|
return SE_DESCRIPTOR_TYPE_SAMPLER;
|
||
|
|
case VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER:
|
||
|
|
return SE_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER;
|
||
|
|
case VK_DESCRIPTOR_TYPE_SAMPLED_IMAGE:
|
||
|
|
return SE_DESCRIPTOR_TYPE_SAMPLED_IMAGE;
|
||
|
|
case VK_DESCRIPTOR_TYPE_STORAGE_IMAGE:
|
||
|
|
return SE_DESCRIPTOR_TYPE_STORAGE_IMAGE;
|
||
|
|
case VK_DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER:
|
||
|
|
return SE_DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER;
|
||
|
|
case VK_DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER:
|
||
|
|
return SE_DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER;
|
||
|
|
case VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER:
|
||
|
|
return SE_DESCRIPTOR_TYPE_UNIFORM_BUFFER;
|
||
|
|
case VK_DESCRIPTOR_TYPE_STORAGE_BUFFER:
|
||
|
|
return SE_DESCRIPTOR_TYPE_STORAGE_BUFFER;
|
||
|
|
case VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC:
|
||
|
|
return SE_DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC;
|
||
|
|
case VK_DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC:
|
||
|
|
return SE_DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC;
|
||
|
|
case VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT:
|
||
|
|
return SE_DESCRIPTOR_TYPE_INPUT_ATTACHMENT;
|
||
|
|
case VK_DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK_EXT:
|
||
|
|
return SE_DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK_EXT;
|
||
|
|
case VK_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_NV:
|
||
|
|
return SE_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_NV;
|
||
|
|
default:
|
||
|
|
break;
|
||
|
|
}
|
||
|
|
}
|
||
|
|
|
||
|
|
}
|