出现以下错误:Test.fx(1,1):错误X3000:语法错误:意外标记'{'
Text.fx包含:没什么.
我也尝试了一个效果文件,在另一个测试项目中工作正常:
float4x4 mWorld;
struct TInputVertex {
float3 vPosition : POSITION0;
float3 vNormal : NORMAL0;
float2 vTexCoord : TEXCOORD0;
float4 vColor : COLOR0;
};
struct TOutputVertex {
float4 vPosition : POSITION0;
float3 vNormal : TEXCOORD1;
float4 vColor : COLOR0;
};
TOutputVertex vsMain(TInputVertex i) {
TOutputVertex o;
o.vPosition = mul(float4(i.vPosition, 1), mWorld);
o.vColor = i.vColor;
o.vNormal = mul(float4(i.vNormal, 1), mWorld).xyz;
//o.vColor += pow(dot(normal_world, float3(0, 0, 1)) * 2 + 0.3, 10);
return o;
}
struct TInputFragment {
float3 vNormal : TEXCOORD1;
float2 vTexCoord : TEXCOORD0;
float4 vColor : COLOR0;
};
struct TOutputFragment {
float4 vColor : COLOR0;
};
TOutputFragment psMain(TInputFragment i) {
TOutputFragment o;
o.vColor = i.vColor;
o.vColor += pow(dot(i.vNormal, float3(0, 0, 1)) * 2 + 0.3, 10);
return o;
}
technique mytech {
pass p0 {
//ShadeMode = Flat;
//ZEnable = false;
WorldTransform[0] = mWorld;
VertexShader = compile vs_1_1 vsMain();
PixelShader = compile ps_2_0 psMain();
}
}
Run Code Online (Sandbox Code Playgroud)
与结果相同的错误.
在两个项目中包含来自相同dx sdk的dx文件.包括并链接相同的标头和库.
我从测试项目中复制了加载函数.我自己编写了整个测试项目.
HRESULT res = D3DXCreateEffectFromFile(device, file_name, NULL, NULL, 0, 0, &effect, &error_buffer);
Run Code Online (Sandbox Code Playgroud)
谷歌没有出现这样的事情.如果你能从我的湿器上取下匕首,我真的很感激.
安东
解决方案:不要创建RTF文件,然后重命名它们并使用wordpad进行编辑.写字板仍会将其解释为rtf,因为该文件以"{\ rtf1}"开头.将其拖入视觉工作室向我展示了真实的内容.哦,世界,你是如此有趣.
| 归档时间: |
|
| 查看次数: |
5244 次 |
| 最近记录: |