1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
|
!!ARBvp1.0
#####################################################
#Skinning-Shader
#####################################################
# Konstanten
ADDRESS a0;
PARAM vec=1.0;
PARAM ModelViewProj[4] = { state.matrix.mvp };
PARAM Mat1[4]={state.matrix.modelview[1]};
# Temporäre Variablen
ARL a0.x,vec.x;
TEMP VecResult;
TEMP VecTrans;
TEMP VecSub;
TEMP VecWeighted;
DP4 VecTrans.x,Mat1[0],vertex.position;
DP4 VecTrans.y,Mat1[1],vertex.position;
DP4 VecTrans.z,Mat1[2],vertex.position;
DP4 VecTrans.w,Mat1[3],vertex.position;
SUB VecSub,VecTrans,vertex.position;
MUL VecWeighted,VecSub,vertex.weight[a0.x].x;
MUL VecWeighted,VecSub,vertex.weight[a0.x].x;
MUL VecWeighted,VecSub,vertex.weight[a0.x].x;
MUL VecWeighted,VecSub,vertex.weight[a0.x].x;
ADD VecResult,vertex.position,VecWeighted;
#Vertexposition
DP4 result.position.x, ModelViewProj[0], VecResult;
DP4 result.position.y, ModelViewProj[1], VecResult;
DP4 result.position.z, ModelViewProj[2], VecResult;
DP4 result.position.w, ModelViewProj[3], VecResult;
# Vertexfarben ausgeben
MOV result.color, vertex.color;
# Texturkoordinaten unverändert weitergeben
MOV result.texcoord, vertex.texcoord;
END
|