我创建了一个着色器,它似乎在VS2012着色器设计器中很好地工作。它将其保存为DGSL格式,然后导出到HLSL。使用VS2012着色器设计器创建XNA着色器
我想我能在XNA项目中使用这一点,但有两件事情是非常新的给我,我希望有人能指出我在正确的方向:
1)每次我看到了这么远着色器有过这样
technique RibbonShader
{
pass Pass0
{
VertexShader = compile vs_2_0 VertexShader();
PixelShader = compile ps_2_0 PixelShader();
}
}
段不幸的是由VS2012导出功能生成的HLSL只有一个主要功能,像这样:
P2F main(V2P pixel)
{
// lots of stuff
return result;
}
有人可以根请详细说明我需要做什么来让我的着色器(具有'main'功能的着色器)在设计器中很好地处于具有上述技术/传递格式的格式中?
谢谢。我将补充说明,生成的着色器包含许多参数,其中大部分参数都被忽略,其中一些参数是必不可少的。没有文档指出哪些对着色器的使用很重要。没有示例显示如何使用这种方式生成的HLSL。 事实上,我可能是唯一已经尝试过的人,因为我发现DGSL导出在ANSI中是这样做的,FX编译器需要UNICODE,所以我必须用记事本手动转换。它如何能够工作我不知道。 – Dave 2013-03-13 19:01:43