From 763d0b5acb584a4d2eca5e02922afed7d499141e Mon Sep 17 00:00:00 2001 From: Alexander Weinrauch Date: Wed, 17 Nov 2021 08:28:59 +0100 Subject: Added 8/16/64 bit int/unsigned int texture formats support for glsl shaders (#2017) Co-authored-by: Yong He --- source/slang/slang-emit-glsl.cpp | 19 ++++++------------- 1 file changed, 6 insertions(+), 13 deletions(-) (limited to 'source') diff --git a/source/slang/slang-emit-glsl.cpp b/source/slang/slang-emit-glsl.cpp index 5540daa19..d5175a423 100644 --- a/source/slang/slang-emit-glsl.cpp +++ b/source/slang/slang-emit-glsl.cpp @@ -447,6 +447,12 @@ void GLSLSourceEmitter::_emitGLSLImageFormatModifier(IRInst* var, IRTextureType* case BaseType::Half: m_writer->emit("16f"); break; case BaseType::UInt: m_writer->emit("32ui"); break; case BaseType::Int: m_writer->emit("32i"); break; + case BaseType::Int8: m_writer->emit("8i"); break; + case BaseType::Int16: m_writer->emit("16i"); break; + case BaseType::Int64: m_writer->emit("64i"); break; + case BaseType::UInt8: m_writer->emit("8ui"); break; + case BaseType::UInt16: m_writer->emit("16ui"); break; + case BaseType::UInt64: m_writer->emit("64ui"); break; // TODO: Here are formats that are available in GLSL, // but that are not handled by the above cases. @@ -468,20 +474,7 @@ void GLSLSourceEmitter::_emitGLSLImageFormatModifier(IRInst* var, IRTextureType* // r16_snorm // r8_snorm // - // rgba16i - // rgba8i - // rg16i - // rg8i - // r16i - // r8i - // - // rgba16ui // rgb10_a2ui - // rgba8ui - // rg16ui - // rg8ui - // r16ui - // r8ui } m_writer->emit(")\n"); } -- cgit v1.2.3