Merge pull request #95 from elhobbs/master
updated shader for current aemstro
This commit is contained in:
commit
f39571f542
@ -1,56 +1,57 @@
|
|||||||
; make sure you update aemstro_as for this (15/11/14)
|
|
||||||
|
|
||||||
; setup constants
|
; setup constants
|
||||||
.const 20, 1.0, 0.0, 0.5, 1.0
|
.const c20, 1.0, 0.0, 0.5, 1.0
|
||||||
|
|
||||||
; setup outmap
|
; setup outmap
|
||||||
.out o0, result.position
|
.out o0, result.position, 0x0
|
||||||
.out o1, result.color
|
.out o1, result.color, 0x0
|
||||||
.out o2, result.texcoord0
|
.out o2, result.texcoord0, 0x0
|
||||||
.out o3, result.texcoord1
|
.out o3, result.texcoord1, 0x0
|
||||||
.out o4, result.texcoord2
|
.out o4, result.texcoord2, 0x0
|
||||||
|
|
||||||
; setup uniform map (required to use SHDR_GetUniformRegister)
|
; setup uniform map (not required)
|
||||||
.uniform 0, 3, projection ; c0-c3 = projection matrix
|
.uniform c0, c3, projection
|
||||||
.uniform 4, 7, modelview ; c4-c7 = modelview matrix
|
.uniform c4, c7, modelview
|
||||||
.uniform 8, 8, lightDirection ; c8 = light direction vector
|
.uniform c8, c8, lightDirection
|
||||||
.uniform 9, 9, lightAmbient ; c9 = light ambient color
|
.uniform c9, c9, lightAmbient
|
||||||
|
|
||||||
|
.vsh vmain, end_vmain
|
||||||
|
|
||||||
;code
|
;code
|
||||||
main:
|
vmain:
|
||||||
mov r1, v0 (0x6)
|
mov r1, v0 (0x4)
|
||||||
mov r1, c20 (0x3)
|
mov r1, c20 (0x3)
|
||||||
; tempreg = mdlvMtx * in.pos
|
; temp = modvMtx * in.pos
|
||||||
dp4 r0, c4, r1 (0x0)
|
dp4 r0, c4, r1 (0x0)
|
||||||
dp4 r0, c5, r1 (0x1)
|
dp4 r0, c5, r1 (0x1)
|
||||||
dp4 r0, c6, r1 (0x2)
|
dp4 r0, c6, r1 (0x2)
|
||||||
mov r0, c20 (0x3)
|
mov r0, c20 (0x3)
|
||||||
; result.pos = projMtx * tempreg
|
; result.pos = projMtx * temp
|
||||||
dp4 o0, c0, r0 (0x0)
|
dp4 o0, c0, r0 (0x0)
|
||||||
dp4 o0, c1, r0 (0x1)
|
dp4 o0, c1, r0 (0x1)
|
||||||
dp4 o0, c2, r0 (0x2)
|
dp4 o0, c2, r0 (0x2)
|
||||||
dp4 o0, c3, r0 (0x3)
|
dp4 o0, c3, r0 (0x3)
|
||||||
; result.texcoord = in.texcoord
|
; result.texcoord = in.texcoord
|
||||||
mov o2, v1 (0x5)
|
mov o2, v1 (0x5)
|
||||||
mov o3, c20 (0x7)
|
mov o3, c20 (0x7)
|
||||||
mov o4, c20 (0x7)
|
mov o4, c20 (0x7)
|
||||||
; result.color = crappy lighting
|
; result.color = crappy lighting
|
||||||
dp3 r0, c8, v2 (0x6)
|
dp3 r0, c8, v2 (0x4)
|
||||||
max r0, c20, r0 (0x4)
|
max r0, c20, r0 (0x9)
|
||||||
mul r0, c9, r0 (0x8)
|
mul r0, c9, r0 (0x4)
|
||||||
add o1, c9, r0 (0x6)
|
add o1, c9, r0 (0x4)
|
||||||
mov o1, c20 (0x3)
|
mov o1, c20 (0x3)
|
||||||
flush
|
nop
|
||||||
end
|
end
|
||||||
endmain:
|
end_vmain:
|
||||||
|
|
||||||
;operand descriptors
|
;operand descriptors
|
||||||
.opdesc x___, xyzw, xyzw ; 0x0
|
.opdesc x___, xyzw, xyzw ; 0x0
|
||||||
.opdesc _y__, xyzw, xyzw ; 0x1
|
.opdesc _y__, xyzw, xyzw ; 0x1
|
||||||
.opdesc __z_, xyzw, xyzw ; 0x2
|
.opdesc __z_, xyzw, xyzw ; 0x2
|
||||||
.opdesc ___w, xyzw, xyzw ; 0x3
|
.opdesc ___w, xyzw, xyzw ; 0x3
|
||||||
.opdesc xyz_, yyyy, xyzw ; 0x4
|
.opdesc xyz_, xyzw, xyzw ; 0x4
|
||||||
.opdesc xyzw, xyzw, xyzw ; 0x5
|
.opdesc xyzw, xyzw, xyzw ; 0x5
|
||||||
.opdesc xyz_, xyzw, xyzw ; 0x6
|
.opdesc x_zw, xyzw, xyzw ; 0x6
|
||||||
.opdesc xyzw, yyyw, xyzw ; 0x7
|
.opdesc xyzw, yyyw, xyzw ; 0x7
|
||||||
.opdesc xyz_, wwww, xyzw ; 0x8
|
.opdesc xyz_, wwww, wwww ; 0x8
|
||||||
|
.opdesc xyz_, yyyy, xyzw ; 0x9
|
||||||
|
Loading…
Reference in New Issue
Block a user