0

DirectXとhlslの基本を学び始めたところです。私は本の例に従っています。次の基本的なシェーダーに問題があります。

float4 VS_Main( float4 pos:POSITION):SV_POSITION
{
return pos;
}

インテリジェンスによると、float4は未定義の識別子です。私の知る限り、これは4次元ベクトルを定義するためにHLSLで使用される標準タイプであるはずですが、十分な情報を得ることができず、本も役に立ちません。ここで何が欠けていますか?

4

2 に答える 2

0

VS2012のIntellisenseはHLSLキーワードをサポートしていないと思います。解決できないという事実を無視するだけで大​​丈夫ですfloat4。参照:VS2010-HLSL Intellisense?(いくつかの回答はVS2012に言及しています)。

于 2013-02-02T14:20:43.620 に答える
0

C++ コンパイラは HLSL をコンパイルしません。HLSL はリソースの形で使用され、実行時にロードされることになっています。単純に.cppファイルを作成して、HLSL コードが C++ としてコンパイルされることを期待することはできません。

于 2013-02-02T17:44:53.283 に答える