JeremyAnsel.HLSL.Targets adds MSBuild support for HLSL compilation.
To build a hlsl shader file set the "Build Action" property to "HLSL Shader" in the "Advanced" category of the properties window. Then in the "HLSL" category set the "Shader Profile" property to a shader profile.
Supported shader profiles are:
- Compute Shader 5.0
- Domain Shader 5.0
- Geometry Shader 5.0
- Hull Shader 5.0
- Pixel Shader 5.0
- Vertex Shader 5.0
- Compute Shader 4.1
- Geometry Shader 4.1
- Pixel Shader 4.1
- Vertex Shader 4.1
- Compute Shader 4.0
- Geometry Shader 4.0
- Pixel Shader 4.0
- Vertex Shader 4.0
- Pixel Shader 4.0 level 9.1
- Pixel Shader 4.0 level 9.3
- Vertex Shader 4.0 level 9.1
- Vertex Shader 4.0 level 9.3
- Pixel Shader 3.0
- Vertex Shader 3.0
- Pixel Shader 2.0
- Vertex Shader 2.0
If a shader profile is selected for an empty file then the file will be filled with a default shader code.
On compiling the project the default output filename for a shader file is the filename of the shader file with a ".cso" extension.
Additional properties are:
- "Object File Output Name" to set the object file output name
- "Inserts Debug Information" to insert debug information into the output code
- "Preprocessor Definitions" to set the preprocessor definitions
- "Entry Point Name" to set the entry point name
- "Treat Warning As Error" to treat warning as error
- "Output Disassembly Shader" to output disassembly shader
- "Output Disassembly Shader in HTML" to output disassembly shader in HTML