Vulkan: Add format enum for various possible RT formats.

Include all formats which are required to be supported in Vulkan 1.0 and
GLES 3.x. Not all these formats are supported in GLES2, but that's up to
shaders to decide whether they want to support GLES2 or not.
This commit is contained in:
Hans-Kristian Arntzen 2016-03-26 22:52:32 +01:00
parent b454192a43
commit 236200ef63

View File

@ -20,6 +20,49 @@
#include <vector>
#include <string>
enum glslang_format
{
// 8-bit
SLANG_FORMAT_R8_UNORM,
SLANG_FORMAT_R8_UINT,
SLANG_FORMAT_R8_SINT,
SLANG_FORMAT_R8G8_UNORM,
SLANG_FORMAT_R8G8_UINT,
SLANG_FORMAT_R8G8_SINT,
SLANG_FORMAT_R8G8B8A8_UNORM,
SLANG_FORMAT_R8G8B8A8_UINT,
SLANG_FORMAT_R8G8B8A8_SINT,
SLANG_FORMAT_R8G8B8A8_SRGB,
// 10-bit
SLANG_FORMAT_A2B10G10R10_UNORM,
SLANG_FORMAT_A2B10G10R10_UINT,
// 16-bit
SLANG_FORMAT_R16_UINT,
SLANG_FORMAT_R16_SINT,
SLANG_FORMAT_R16_SFLOAT,
SLANG_FORMAT_R16G16_UINT,
SLANG_FORMAT_R16G16_SINT,
SLANG_FORMAT_R16G16_SFLOAT,
SLANG_FORMAT_R16G16B16A16_UINT,
SLANG_FORMAT_R16G16B16A16_SINT,
SLANG_FORMAT_R16G16B16A16_SFLOAT,
// 32-bit
SLANG_FORMAT_R32_UINT,
SLANG_FORMAT_R32_SINT,
SLANG_FORMAT_R32_FLOAT,
SLANG_FORMAT_R32G32_UINT,
SLANG_FORMAT_R32G32_SINT,
SLANG_FORMAT_R32G32_FLOAT,
SLANG_FORMAT_R32G32B32A32_UINT,
SLANG_FORMAT_R32G32B32A32_SINT,
SLANG_FORMAT_R32G32B32A32_FLOAT,
SLANG_FORMAT_INVALID
};
struct glslang_meta
{
std::string name;