如何向FX Composer添加宏定义

时间:2013-03-06 13:19:03

标签: shader nvidia fxcomposer

我尝试使用Project>在项目设置中为FX Composer添加宏定义。 HLSL / CG>编译器选项字段。在两个HLSL字段中,我有/ DMYPROJECT和Cg -DMYPROJECT。

编译Cg着色器时,这可以按预期工作,但我不能让它适用于HLSL。在fxc.exe的命令行中使用相同的选项。

这是我用来测试的代码片段;

#ifndef MYPROJECT
#error ABC
#endif

我错过了什么?

1 个答案:

答案 0 :(得分:1)

无论其他预处理程序指令如何,FX Composer似乎都会执行#error指令,至少对于HLSL而言。如果您尝试使用某些实际代码进行测试,例如将像素颜色设置为黑色或其他内容,我认为您会发现它有效。无论如何,它对我有用。你的问题实际上帮助我弄清楚如何做到这一点,虽然我最终去了Assets,Effects,myeffect,myshader.fx,Properties,Compiler Options。

同样重要的是:在编译器选项字段中,我输入了像MYPROJECT的宏,而不是/ DMYPROJECT,这是有效的。我正在使用FX Composer 2.53.0524.1905和D3D9 HLSL着色器。