Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ; PICA200 Simple Shader
- ; Uniforms
- .fvec projectionMatrix[4]
- .fvec viewMatrix[4]
- .fvec modelMatrix[4]
- ; Constants
- .constf zeros(0.0, 0.0, 0.0, 0.0)
- .constf ones(1.0, 1.0, 1.0, 1.0)
- ; Inputs
- .alias inpos v0
- .alias inclr v1
- .alias innrm v2
- .alias intx0 v3
- ; Outputs
- .out outpos position
- .out outtx0 texcoord0
- .out outclr color
- ; Main Process
- .proc main
- ; Force the w component of inpos to be 1.0
- mov r0.xyz, inpos
- mov r0.w, ones
- ; Transform the vertex.
- dp4 r1.x, modelMatrix[0], r0
- dp4 r1.y, modelMatrix[1], r0
- dp4 r1.z, modelMatrix[2], r0
- dp4 r1.w, modelMatrix[3], r0
- dp4 r2.x, viewMatrix[0], r1
- dp4 r2.y, viewMatrix[1], r1
- dp4 r2.z, viewMatrix[2], r1
- dp4 r2.w, viewMatrix[3], r1
- dp4 outpos.x, projectionMatrix[0], r2
- dp4 outpos.y, projectionMatrix[1], r2
- dp4 outpos.z, projectionMatrix[2], r2
- dp4 outpos.w, projectionMatrix[3], r2
- ; Set the other outputs.
- mov outtx0, intx0
- mov outclr, inclr
- end
- .end
Advertisement
Add Comment
Please, Sign In to add comment