//c0 = matrix
//c4 = colour
//c5 = lightpos
//c6 = another color
//c7 = lightpos
//c9 = scalar constants
vs.1.1 // version instruction
dcl_position v0 // declare register data
dcl_normal v4 // v0 is position, v4 is normal
dcl_texcoord0 v8 // v8 is texture coordinates
mov oD0, c4
//mov oPos, v0
m3x3 r0, v4, c0 //transform normal
mul r6, v4, c7.x
add r6, v0, r6
m4x4 oPos, r6, c0
//m3x3 r1, c5, c0 //transform light pos
dp3 r1, r0, -c5 //dot product
mul r2, r1, c4 //multiply dot product with lightcolor
dp3 r3, r0, -c7
mul r4, r3, c4
mul r5, r2, r4
mov oD1, r5 //move to output
m4x4 r7, v0, c0
mul r7, r7, c9
mov oT0, r7

As you can see they are not nice to look at although the outcome does look nice. This shader transforms and lights and does a texture map for the skull mesh.
No comments:
Post a Comment