AllowOpacity true VertexColors true SpecularEnable xbox // blending disable, none, testonly, standard, additive, scaledadditive, modulate, modulate2x // eg: blending additive // or // blending blendbool, testbool, srcblend, destblend // eg: blending true false srccolor srccolor blending none // texture stage mapid uvsource // These can be specified anywhere, such as in the state block with your texture ops if you prefer // mapid defines where the texture and/or transform source is. // These can be seperated if needed (they're seperate in code just not // defined seperately here) // // stage 4 is diffuse, map specifies transform to use only (if you want csn in diffuse for example) // stage 5 is specular, map specifies transform to use only // filter stage min mag mip texaddrmode texture 0 bump uv filter 0 linear linear none wrap texture 1 diffuse uv filter 1 aniso linear linear wrap texture 2 custom3 worldpos filter 2 linear linear linear wrap // Note, we override UV to CSN or CSRV based on "spheremap" being present when project==1 // (ie: this should only affect mace). texture 3 env csn filter 3 linear linear none wrap // We specify that we'd like normal diffuse, and that // we don't care what gets output for specular at all. texture 4 none diffuse texture 5 none lodfade pixelshader pc { ps.1.1 tex t0 tex t1 tex t2 tex t3 mul r1.rgb, t0, v1 +mov r1.a, t0.a mul_x2 r0.rgb, t1, v0 +mul r0.a, t1.a, v0.a mul_x2 r0.rgb, t2, r0 mad r0.rgb, r1, t3, r0 } pixelshader xbox { xps.1.1 def c0,0,0,0,0 tex t0 tex t1 tex t2 tex t3 mul r1.rgb, t0, v1 +mov r1.a, t0.a mul_x2 r0.rgb, t1, v0 +mul r0.a, t1.a, v0.a mul_x2 r0.rgb, t2, r0 mad r0.rgb, r1, t3, r0 mov v1, c0 } //states //D3DTSS_COLOROP 0 modulate //D3DTSS_COLORARG1 0 texture //D3DTSS_COLORARG2 0 specular //D3DTSS_ALPHAOP 0 selectarg1 //D3DTSS_ALPHAARG1 0 texture //d3dtss_resultarg 0 temp //D3DTSS_COLOROP 1 defaultlightop //D3DTSS_COLORARG1 1 texture //D3DTSS_COLORARG2 1 diffuse //D3DTSS_ALPHAOP 1 modulate //D3DTSS_ALPHAARG1 1 texture //D3DTSS_ALPHAARG2 1 diffuse //D3DTSS_COLOROP 2 defaultlightop //D3DTSS_COLORARG1 2 texture //D3DTSS_COLORARG2 2 current //D3DTSS_ALPHAOP 2 modulate //D3DTSS_ALPHAARG1 2 tfactor //D3DTSS_ALPHAARG2 2 current //D3DTSS_COLOROP 3 multiplyadd //D3DTSS_COLORARG1 3 temp //D3DTSS_COLORARG2 3 texture //D3DTSS_COLORARG0 3 current //D3DTSS_ALPHAOP 3 selectarg1 //D3DTSS_ALPHAARG1 3 current //D3DTSS_COLOROP 4 disable //D3DTSS_ALPHAOP 4 disable //undo //d3dtss_resultarg 0 current