每一次执行程序都要编译HLSL文件会影响运行速度,因此,可以先把HLSL文件编译好,程序中直接调用就可以了。
DirectX SDK中自带这样的工具,叫做FXC,命令行程序,可以先自行编译。
本例子中则是利用VS.NET的功能自动调用FXC编译。
右击需要编译的FX文件,点击属性 ->Custom Build Tool,输入相关信息,这里是在CommandLine中输入下面的命令
fxc.exe "%(FullPath)" /nologo /Zi /Tfx_2_0 /Fo"CompiledEffect.fxo"
这里的路径这么短是因为设置了可执行文件路径:Executable Directories。