我創建了一個着色器,它似乎在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