如何使用Vulkan编译HLSL着色器?

3

我正在学习Vulkan API,现在是创建管线的时候了,我选择HLSL语言,因为未来想要重用DirectX中的着色器,在获得RTX GPU后打算开展光线追踪相关工作。对于HLSL我还是新手,我写了一个简单的顶点着色器:

float4 main(float2 pos : POSITIONT) : SV_POSITION
{
    return float4(pos, 0, 1);
}

按照这篇教程的步骤,我尝试编译以下命令:glslc.exe VertexShader.hlsl -o vertex.spv

但是出现了以下错误:glslc: error: 'VertexShader.hlsl': 遇到.hls文件但没有指定-fshader-stage

那么如何在Vulkan中编译HLSL呢?


https://github.com/google/shaderc/tree/master/glslc#option-fshader-stage - tkausl
@tkausl 谢谢,已解决。 - Ives TI
@tkausl 请提供一个合适的答案。 - krOoze
提供一个恰当的答案可以让 OP 将其标记为被接受的答案。 - Jeff Linahan
2个回答

3

2

Solveld adding -fshader-stage=vertex


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接