62 lines
1.7 KiB
Plaintext
62 lines
1.7 KiB
Plaintext
|
renderProgram debugTools/showTangentSpace {
|
||
|
hwSkinningVersion debugTools/showTangentSpace_hwskinning debugTools/showTangentSpace_hardskinning
|
||
|
|
||
|
program vertex arb { <%
|
||
|
OPTION ARB_position_invariant;
|
||
|
|
||
|
TEMP bitangent;
|
||
|
TEMP R0;
|
||
|
|
||
|
# derive bitangent
|
||
|
XPD bitangent, $normalAttrib, $tangentAttrib;
|
||
|
MUL bitangent, bitangent, $tangentAttrib.w;
|
||
|
|
||
|
MUL R0.xyz, $normalAttrib, $diffuseColor.x;
|
||
|
MAD R0.xyz, $tangentAttrib, $diffuseColor.y, R0;
|
||
|
MAD R0.xyz, bitangent, $diffuseColor.z, R0;
|
||
|
ADD result.color.xyz, R0, 0.5;
|
||
|
MOV result.color.w, 1;
|
||
|
%> }
|
||
|
|
||
|
program fragment arb { <%
|
||
|
OPTION ARB_precision_hint_fastest;
|
||
|
|
||
|
MOV result.color, fragment.color;
|
||
|
%> }
|
||
|
|
||
|
}
|
||
|
|
||
|
renderProgram debugTools/showTangentSpace_hwskinning {
|
||
|
program vertex arb { <%
|
||
|
TEMP position, normal, tangent, bitangent;
|
||
|
TEMP R0;
|
||
|
|
||
|
useTemplate skinningMatrix_ARB< "position", "normal", "tangent", "bitangent" >
|
||
|
|
||
|
MUL R0.xyz, normal, $diffuseColor.x;
|
||
|
MAD R0.xyz, tangent, $diffuseColor.y, R0;
|
||
|
MAD R0.xyz, bitangent, $diffuseColor.z, R0;
|
||
|
ADD result.color.xyz, R0, 0.5;
|
||
|
MOV result.color.w, 1;
|
||
|
%> }
|
||
|
|
||
|
program fragment reference debugTools/showTangentSpace
|
||
|
}
|
||
|
|
||
|
renderProgram debugTools/showTangentSpace_hardskinning {
|
||
|
program vertex arb { <%
|
||
|
TEMP position, normal, tangent, bitangent;
|
||
|
TEMP R0;
|
||
|
|
||
|
useTemplate hardSkinningMatrix_ARB< "position", "normal", "tangent", "bitangent" >
|
||
|
|
||
|
MUL R0.xyz, normal, $diffuseColor.x;
|
||
|
MAD R0.xyz, tangent, $diffuseColor.y, R0;
|
||
|
MAD R0.xyz, bitangent, $diffuseColor.z, R0;
|
||
|
ADD result.color.xyz, R0, 0.5;
|
||
|
MOV result.color.w, 1;
|
||
|
%> }
|
||
|
|
||
|
program fragment reference debugTools/showTangentSpace
|
||
|
}
|