shader

 

Tag: shader
Parent tag: shaders
Attributes:

  • name (string)
  • vs (string) – vertex shader filename
  • tc (string) – tessellation control shader filename
  • te (string) – tessellation evaluator shader filename
  • gs (string) – geometry shader filename
  • ps (string) – pixel or fragment shader filename
  • cs (string) – compute shader filename

Child tags:

  • vs
  • tc
  • te
  • gs
  • ps
  • cs

The child tags are only necessary when we want to specify more than a single file for a shader. When specifying multiple files, the text sent to the shader is the concatenation of the given files in the given order.

The file names are relative to the project file.

Examples:

	
<shader name="tessShader" 	
		ps="shaders/tessDemo.frag" 
		tc="shaders/tessDemo.tesc"
		te="shaders/tessDemo.tese"
		vs="shaders/tessDemo.vert" />

<shader name="compute" 	cs="shaders/contour.comp" /> 

<shader name="fillArrays" 		
		vs="shaders/dirlightdiffambpix.vert"
		gs="shaders/fillArrays.geom"
		ps="shaders/dirlightdiffambpix.frag" />
	
<shader name="projGrid" >	
	<vs>
		<file name= "shaders/header.glsl" />
		<file name= "shaders/defines.glsl" />
		<file name= "shaders/grid.vert" />
	</vs>	
	<ps>
		<file name= "shaders/header.glsl" />
		<file name= "shaders/defines.glsl" />
		<file name= "shaders/grid.frag" />
	</ps>
</shader>