私は C++ でボクセル エンジンを作成しており、Vulkan レンダラーを実装しています。HLSL でシェーダーを作成し、SPIRV-Cross 経由で変換することにしました。しかし、これは私に問題をもたらします - glslang の HLSL コンパイラーはサンプラーを許可しません。たとえば、このピクセル シェーダーは次のようになります。
uniform sampler2D tex;
float4 main(float2 uv : TEXCOORD0) : COLOR0 {
return tex2D(tex, uv);
}
次のコンパイラ出力が得られます。
Expected Sampled Image to be of type OpTypeSampledImage
%19 = OpImageSampleImplicitLod %v4float %17 %18
GLSL でシェーダーを作成する必要があるのか、それとも別のライブラリを使用する必要があるのかわかりません。どんな助けでも大歓迎です。