mirror of
https://github.com/aap/librw.git
synced 2025-12-19 17:09:51 +00:00
implemented shader default and immediate pipeline for d3d9
This commit is contained in:
74
src/d3d/shaders/defaultVS.hlsl
Normal file
74
src/d3d/shaders/defaultVS.hlsl
Normal file
@@ -0,0 +1,74 @@
|
||||
float4x4 combinedMat : register(c0);
|
||||
float4x4 worldMat : register(c4);
|
||||
float3x3 normalMat : register(c8);
|
||||
float4 matCol : register(c12);
|
||||
float4 surfProps : register(c13);
|
||||
float4 ambientLight : register(c14);
|
||||
|
||||
#define surfAmbient (surfProps.x)
|
||||
#define surfSpecular (surfProps.y)
|
||||
#define surfDiffuse (surfProps.z)
|
||||
#define surfPrelight (surfProps.w)
|
||||
|
||||
#include "lighting.h"
|
||||
|
||||
int numDirLights : register(i0);
|
||||
int numPointLights : register(i1);
|
||||
int numSpotLights : register(i2);
|
||||
int4 firstLight : register(c15);
|
||||
Light lights[8] : register(c16);
|
||||
|
||||
#define firstDirLight (firstLight.x)
|
||||
#define firstPointLight (firstLight.y)
|
||||
#define firstSpotLight (firstLight.z)
|
||||
|
||||
struct VS_in
|
||||
{
|
||||
float4 Position : POSITION;
|
||||
float3 Normal : NORMAL;
|
||||
float2 TexCoord : TEXCOORD0;
|
||||
float4 Prelight : COLOR0;
|
||||
};
|
||||
|
||||
struct VS_out {
|
||||
float4 Position : POSITION;
|
||||
float2 TexCoord0 : TEXCOORD0;
|
||||
float4 Color : COLOR0;
|
||||
};
|
||||
|
||||
|
||||
VS_out main(in VS_in input)
|
||||
{
|
||||
VS_out output;
|
||||
|
||||
output.Position = mul(combinedMat, input.Position);
|
||||
float3 Vertex = mul(worldMat, input.Position).xyz;
|
||||
float3 Normal = mul(normalMat, input.Normal);
|
||||
|
||||
output.TexCoord0 = input.TexCoord;
|
||||
|
||||
output.Color = float4(0.0, 0.0, 0.0, 1.0);
|
||||
if(surfPrelight > 0.0)
|
||||
output.Color = input.Prelight;
|
||||
|
||||
output.Color.rgb += ambientLight.rgb * surfAmbient;
|
||||
|
||||
int i;
|
||||
#ifdef DIRECTIONALS
|
||||
for(i = 0; i < numDirLights; i++)
|
||||
output.Color.xyz += DoDirLight(lights[i+firstDirLight], Normal)*surfDiffuse;
|
||||
#endif
|
||||
#ifdef POINTLIGHTS
|
||||
for(i = 0; i < numPointLights; i++)
|
||||
output.Color.xyz += DoPointLight(lights[i+firstPointLight], Vertex.xyz, Normal)*surfDiffuse;
|
||||
#endif
|
||||
#ifdef SPOTLIGHTS
|
||||
for(i = 0; i < numSpotLights; i++)
|
||||
output.Color.xyz += DoSpotLight(lights[i+firstSpotLight], Vertex.xyz, Normal)*surfDiffuse;
|
||||
#endif
|
||||
// PS2 clamps before material color
|
||||
output.Color = clamp(output.Color, 0.0, 1.0);
|
||||
output.Color *= matCol;
|
||||
|
||||
return output;
|
||||
}
|
||||
485
src/d3d/shaders/default_all_VS.h
Normal file
485
src/d3d/shaders/default_all_VS.h
Normal file
@@ -0,0 +1,485 @@
|
||||
#if 0
|
||||
//
|
||||
// Generated by Microsoft (R) HLSL Shader Compiler 9.29.952.3111
|
||||
//
|
||||
// fxc /T vs_2_0 /DDIRECTIONALS /DPOINTLIGHTS /DSPOTLIGHTS /Fh
|
||||
// default_all_VS.h defaultVS.hlsl
|
||||
//
|
||||
//
|
||||
// Parameters:
|
||||
//
|
||||
// float4 ambientLight;
|
||||
// float4x4 combinedMat;
|
||||
// int4 firstLight;
|
||||
//
|
||||
// struct
|
||||
// {
|
||||
// float4 color;
|
||||
// float4 position;
|
||||
// float4 direction;
|
||||
//
|
||||
// } lights[8];
|
||||
//
|
||||
// float4 matCol;
|
||||
// float3x3 normalMat;
|
||||
// int numDirLights;
|
||||
// int numPointLights;
|
||||
// int numSpotLights;
|
||||
// float4 surfProps;
|
||||
// float4x4 worldMat;
|
||||
//
|
||||
//
|
||||
// Registers:
|
||||
//
|
||||
// Name Reg Size
|
||||
// -------------- ----- ----
|
||||
// numDirLights i0 1
|
||||
// numPointLights i1 1
|
||||
// numSpotLights i2 1
|
||||
// combinedMat c0 4
|
||||
// worldMat c4 4
|
||||
// normalMat c8 3
|
||||
// matCol c12 1
|
||||
// surfProps c13 1
|
||||
// ambientLight c14 1
|
||||
// firstLight c15 1
|
||||
// lights c16 24
|
||||
//
|
||||
|
||||
vs_2_0
|
||||
def c11, 3, 0, 0, 0
|
||||
def c40, 0, -0, -1, 1
|
||||
dcl_position v0
|
||||
dcl_normal v1
|
||||
dcl_texcoord v2
|
||||
dcl_color v3
|
||||
mul r0, v0.y, c1
|
||||
mad r0, c0, v0.x, r0
|
||||
mad r0, c2, v0.z, r0
|
||||
mad oPos, c3, v0.w, r0
|
||||
mul r0.xyz, v0.y, c5
|
||||
mad r0.xyz, c4, v0.x, r0
|
||||
mad r0.xyz, c6, v0.z, r0
|
||||
mad r0.xyz, c7, v0.w, r0
|
||||
mul r1.xyz, v1.y, c9
|
||||
mad r1.xyz, c8, v1.x, r1
|
||||
mad r1.xyz, c10, v1.z, r1
|
||||
mov r2.xw, c40
|
||||
slt r0.w, r2.x, c13.w
|
||||
add r3, v3, c40.yyyz
|
||||
mad r3, r0.w, r3, c40.xxxw
|
||||
mov r2.x, c13.x
|
||||
mad r2.xyz, c14, r2.x, r3
|
||||
mov r4.xyz, r2
|
||||
mov r0.w, c40.x
|
||||
rep i0
|
||||
add r1.w, r0.w, c15.x
|
||||
mul r1.w, r1.w, c11.x
|
||||
mova a0.x, r1.w
|
||||
dp3 r1.w, r1, -c18[a0.x]
|
||||
max r1.w, r1.w, c40.x
|
||||
mul r5.xyz, r1.w, c16[a0.x]
|
||||
mad r4.xyz, r5, c13.z, r4
|
||||
add r0.w, r0.w, c40.w
|
||||
endrep
|
||||
mov r2.xyz, r4
|
||||
mov r0.w, c40.x
|
||||
rep i1
|
||||
add r1.w, r0.w, c15.y
|
||||
mul r1.w, r1.w, c11.x
|
||||
mova a0.x, r1.w
|
||||
add r5.xyz, r0, -c17[a0.x]
|
||||
dp3 r1.w, r5, r5
|
||||
rsq r1.w, r1.w
|
||||
mul r5.xyz, r1.w, r5
|
||||
dp3 r4.w, r1, -r5
|
||||
max r4.w, r4.w, c40.x
|
||||
mul r5.xyz, r4.w, c16[a0.x]
|
||||
rcp r1.w, r1.w
|
||||
rcp r4.w, c16[a0.x].w
|
||||
mad r1.w, r1.w, -r4.w, c40.w
|
||||
max r1.w, r1.w, c40.x
|
||||
mul r5.xyz, r1.w, r5
|
||||
mad r2.xyz, r5, c13.z, r2
|
||||
add r0.w, r0.w, c40.w
|
||||
endrep
|
||||
mov r3.xyz, r2
|
||||
mov r0.w, c40.x
|
||||
rep i2
|
||||
add r1.w, r0.w, c15.z
|
||||
mul r1.w, r1.w, c11.x
|
||||
mova a0.x, r1.w
|
||||
add r4.xyz, r0, -c17[a0.x]
|
||||
dp3 r1.w, r4, r4
|
||||
rsq r1.w, r1.w
|
||||
mul r4.xyz, r1.w, r4
|
||||
dp3 r4.w, r1, -r4
|
||||
dp3 r4.x, r4, c18[a0.x]
|
||||
max r4.y, r4.w, c40.x
|
||||
add r4.x, r4.x, c17[a0.x].w
|
||||
add r4.z, r2.w, c17[a0.x].w
|
||||
rcp r4.z, r4.z
|
||||
mul r4.x, r4.z, r4.x
|
||||
slt r4.z, r4.x, c40.x
|
||||
mad r4.y, r4.z, -r4.y, r4.y
|
||||
max r4.x, r4.x, c18[a0.x].w
|
||||
mul r4.x, r4.x, r4.y
|
||||
mul r4.xyz, r4.x, c16[a0.x]
|
||||
rcp r1.w, r1.w
|
||||
rcp r4.w, c16[a0.x].w
|
||||
mad r1.w, r1.w, -r4.w, c40.w
|
||||
max r1.w, r1.w, c40.x
|
||||
mul r4.xyz, r1.w, r4
|
||||
mad r3.xyz, r4, c13.z, r3
|
||||
add r0.w, r0.w, c40.w
|
||||
endrep
|
||||
max r0, r3, c40.x
|
||||
min r0, r0, c40.w
|
||||
mul oD0, r0, c12
|
||||
mov oT0.xy, v2
|
||||
|
||||
// approximately 93 instruction slots used
|
||||
#endif
|
||||
|
||||
const BYTE g_vs20_main[] =
|
||||
{
|
||||
0, 2, 254, 255, 254, 255,
|
||||
151, 0, 67, 84, 65, 66,
|
||||
28, 0, 0, 0, 39, 2,
|
||||
0, 0, 0, 2, 254, 255,
|
||||
11, 0, 0, 0, 28, 0,
|
||||
0, 0, 0, 1, 0, 0,
|
||||
32, 2, 0, 0, 248, 0,
|
||||
0, 0, 2, 0, 14, 0,
|
||||
1, 0, 58, 0, 8, 1,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
24, 1, 0, 0, 2, 0,
|
||||
0, 0, 4, 0, 2, 0,
|
||||
36, 1, 0, 0, 0, 0,
|
||||
0, 0, 52, 1, 0, 0,
|
||||
2, 0, 15, 0, 1, 0,
|
||||
62, 0, 64, 1, 0, 0,
|
||||
0, 0, 0, 0, 80, 1,
|
||||
0, 0, 2, 0, 16, 0,
|
||||
24, 0, 66, 0, 156, 1,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
172, 1, 0, 0, 2, 0,
|
||||
12, 0, 1, 0, 50, 0,
|
||||
8, 1, 0, 0, 0, 0,
|
||||
0, 0, 179, 1, 0, 0,
|
||||
2, 0, 8, 0, 3, 0,
|
||||
34, 0, 192, 1, 0, 0,
|
||||
0, 0, 0, 0, 208, 1,
|
||||
0, 0, 1, 0, 0, 0,
|
||||
1, 0, 2, 0, 224, 1,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
240, 1, 0, 0, 1, 0,
|
||||
1, 0, 1, 0, 6, 0,
|
||||
224, 1, 0, 0, 0, 0,
|
||||
0, 0, 255, 1, 0, 0,
|
||||
1, 0, 2, 0, 1, 0,
|
||||
10, 0, 224, 1, 0, 0,
|
||||
0, 0, 0, 0, 13, 2,
|
||||
0, 0, 2, 0, 13, 0,
|
||||
1, 0, 54, 0, 8, 1,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
23, 2, 0, 0, 2, 0,
|
||||
4, 0, 4, 0, 18, 0,
|
||||
36, 1, 0, 0, 0, 0,
|
||||
0, 0, 97, 109, 98, 105,
|
||||
101, 110, 116, 76, 105, 103,
|
||||
104, 116, 0, 171, 171, 171,
|
||||
1, 0, 3, 0, 1, 0,
|
||||
4, 0, 1, 0, 0, 0,
|
||||
0, 0, 0, 0, 99, 111,
|
||||
109, 98, 105, 110, 101, 100,
|
||||
77, 97, 116, 0, 3, 0,
|
||||
3, 0, 4, 0, 4, 0,
|
||||
1, 0, 0, 0, 0, 0,
|
||||
0, 0, 102, 105, 114, 115,
|
||||
116, 76, 105, 103, 104, 116,
|
||||
0, 171, 1, 0, 2, 0,
|
||||
1, 0, 4, 0, 1, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
108, 105, 103, 104, 116, 115,
|
||||
0, 99, 111, 108, 111, 114,
|
||||
0, 171, 171, 171, 1, 0,
|
||||
3, 0, 1, 0, 4, 0,
|
||||
1, 0, 0, 0, 0, 0,
|
||||
0, 0, 112, 111, 115, 105,
|
||||
116, 105, 111, 110, 0, 100,
|
||||
105, 114, 101, 99, 116, 105,
|
||||
111, 110, 0, 171, 87, 1,
|
||||
0, 0, 96, 1, 0, 0,
|
||||
112, 1, 0, 0, 96, 1,
|
||||
0, 0, 121, 1, 0, 0,
|
||||
96, 1, 0, 0, 5, 0,
|
||||
0, 0, 1, 0, 12, 0,
|
||||
8, 0, 3, 0, 132, 1,
|
||||
0, 0, 109, 97, 116, 67,
|
||||
111, 108, 0, 110, 111, 114,
|
||||
109, 97, 108, 77, 97, 116,
|
||||
0, 171, 171, 171, 3, 0,
|
||||
3, 0, 3, 0, 3, 0,
|
||||
1, 0, 0, 0, 0, 0,
|
||||
0, 0, 110, 117, 109, 68,
|
||||
105, 114, 76, 105, 103, 104,
|
||||
116, 115, 0, 171, 171, 171,
|
||||
0, 0, 2, 0, 1, 0,
|
||||
1, 0, 1, 0, 0, 0,
|
||||
0, 0, 0, 0, 110, 117,
|
||||
109, 80, 111, 105, 110, 116,
|
||||
76, 105, 103, 104, 116, 115,
|
||||
0, 110, 117, 109, 83, 112,
|
||||
111, 116, 76, 105, 103, 104,
|
||||
116, 115, 0, 115, 117, 114,
|
||||
102, 80, 114, 111, 112, 115,
|
||||
0, 119, 111, 114, 108, 100,
|
||||
77, 97, 116, 0, 118, 115,
|
||||
95, 50, 95, 48, 0, 77,
|
||||
105, 99, 114, 111, 115, 111,
|
||||
102, 116, 32, 40, 82, 41,
|
||||
32, 72, 76, 83, 76, 32,
|
||||
83, 104, 97, 100, 101, 114,
|
||||
32, 67, 111, 109, 112, 105,
|
||||
108, 101, 114, 32, 57, 46,
|
||||
50, 57, 46, 57, 53, 50,
|
||||
46, 51, 49, 49, 49, 0,
|
||||
81, 0, 0, 5, 11, 0,
|
||||
15, 160, 0, 0, 64, 64,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
81, 0, 0, 5, 40, 0,
|
||||
15, 160, 0, 0, 0, 0,
|
||||
0, 0, 0, 128, 0, 0,
|
||||
128, 191, 0, 0, 128, 63,
|
||||
31, 0, 0, 2, 0, 0,
|
||||
0, 128, 0, 0, 15, 144,
|
||||
31, 0, 0, 2, 3, 0,
|
||||
0, 128, 1, 0, 15, 144,
|
||||
31, 0, 0, 2, 5, 0,
|
||||
0, 128, 2, 0, 15, 144,
|
||||
31, 0, 0, 2, 10, 0,
|
||||
0, 128, 3, 0, 15, 144,
|
||||
5, 0, 0, 3, 0, 0,
|
||||
15, 128, 0, 0, 85, 144,
|
||||
1, 0, 228, 160, 4, 0,
|
||||
0, 4, 0, 0, 15, 128,
|
||||
0, 0, 228, 160, 0, 0,
|
||||
0, 144, 0, 0, 228, 128,
|
||||
4, 0, 0, 4, 0, 0,
|
||||
15, 128, 2, 0, 228, 160,
|
||||
0, 0, 170, 144, 0, 0,
|
||||
228, 128, 4, 0, 0, 4,
|
||||
0, 0, 15, 192, 3, 0,
|
||||
228, 160, 0, 0, 255, 144,
|
||||
0, 0, 228, 128, 5, 0,
|
||||
0, 3, 0, 0, 7, 128,
|
||||
0, 0, 85, 144, 5, 0,
|
||||
228, 160, 4, 0, 0, 4,
|
||||
0, 0, 7, 128, 4, 0,
|
||||
228, 160, 0, 0, 0, 144,
|
||||
0, 0, 228, 128, 4, 0,
|
||||
0, 4, 0, 0, 7, 128,
|
||||
6, 0, 228, 160, 0, 0,
|
||||
170, 144, 0, 0, 228, 128,
|
||||
4, 0, 0, 4, 0, 0,
|
||||
7, 128, 7, 0, 228, 160,
|
||||
0, 0, 255, 144, 0, 0,
|
||||
228, 128, 5, 0, 0, 3,
|
||||
1, 0, 7, 128, 1, 0,
|
||||
85, 144, 9, 0, 228, 160,
|
||||
4, 0, 0, 4, 1, 0,
|
||||
7, 128, 8, 0, 228, 160,
|
||||
1, 0, 0, 144, 1, 0,
|
||||
228, 128, 4, 0, 0, 4,
|
||||
1, 0, 7, 128, 10, 0,
|
||||
228, 160, 1, 0, 170, 144,
|
||||
1, 0, 228, 128, 1, 0,
|
||||
0, 2, 2, 0, 9, 128,
|
||||
40, 0, 228, 160, 12, 0,
|
||||
0, 3, 0, 0, 8, 128,
|
||||
2, 0, 0, 128, 13, 0,
|
||||
255, 160, 2, 0, 0, 3,
|
||||
3, 0, 15, 128, 3, 0,
|
||||
228, 144, 40, 0, 149, 160,
|
||||
4, 0, 0, 4, 3, 0,
|
||||
15, 128, 0, 0, 255, 128,
|
||||
3, 0, 228, 128, 40, 0,
|
||||
192, 160, 1, 0, 0, 2,
|
||||
2, 0, 1, 128, 13, 0,
|
||||
0, 160, 4, 0, 0, 4,
|
||||
2, 0, 7, 128, 14, 0,
|
||||
228, 160, 2, 0, 0, 128,
|
||||
3, 0, 228, 128, 1, 0,
|
||||
0, 2, 4, 0, 7, 128,
|
||||
2, 0, 228, 128, 1, 0,
|
||||
0, 2, 0, 0, 8, 128,
|
||||
40, 0, 0, 160, 38, 0,
|
||||
0, 1, 0, 0, 228, 240,
|
||||
2, 0, 0, 3, 1, 0,
|
||||
8, 128, 0, 0, 255, 128,
|
||||
15, 0, 0, 160, 5, 0,
|
||||
0, 3, 1, 0, 8, 128,
|
||||
1, 0, 255, 128, 11, 0,
|
||||
0, 160, 46, 0, 0, 2,
|
||||
0, 0, 1, 176, 1, 0,
|
||||
255, 128, 8, 0, 0, 4,
|
||||
1, 0, 8, 128, 1, 0,
|
||||
228, 128, 18, 32, 228, 161,
|
||||
0, 0, 0, 176, 11, 0,
|
||||
0, 3, 1, 0, 8, 128,
|
||||
1, 0, 255, 128, 40, 0,
|
||||
0, 160, 5, 0, 0, 4,
|
||||
5, 0, 7, 128, 1, 0,
|
||||
255, 128, 16, 32, 228, 160,
|
||||
0, 0, 0, 176, 4, 0,
|
||||
0, 4, 4, 0, 7, 128,
|
||||
5, 0, 228, 128, 13, 0,
|
||||
170, 160, 4, 0, 228, 128,
|
||||
2, 0, 0, 3, 0, 0,
|
||||
8, 128, 0, 0, 255, 128,
|
||||
40, 0, 255, 160, 39, 0,
|
||||
0, 0, 1, 0, 0, 2,
|
||||
2, 0, 7, 128, 4, 0,
|
||||
228, 128, 1, 0, 0, 2,
|
||||
0, 0, 8, 128, 40, 0,
|
||||
0, 160, 38, 0, 0, 1,
|
||||
1, 0, 228, 240, 2, 0,
|
||||
0, 3, 1, 0, 8, 128,
|
||||
0, 0, 255, 128, 15, 0,
|
||||
85, 160, 5, 0, 0, 3,
|
||||
1, 0, 8, 128, 1, 0,
|
||||
255, 128, 11, 0, 0, 160,
|
||||
46, 0, 0, 2, 0, 0,
|
||||
1, 176, 1, 0, 255, 128,
|
||||
2, 0, 0, 4, 5, 0,
|
||||
7, 128, 0, 0, 228, 128,
|
||||
17, 32, 228, 161, 0, 0,
|
||||
0, 176, 8, 0, 0, 3,
|
||||
1, 0, 8, 128, 5, 0,
|
||||
228, 128, 5, 0, 228, 128,
|
||||
7, 0, 0, 2, 1, 0,
|
||||
8, 128, 1, 0, 255, 128,
|
||||
5, 0, 0, 3, 5, 0,
|
||||
7, 128, 1, 0, 255, 128,
|
||||
5, 0, 228, 128, 8, 0,
|
||||
0, 3, 4, 0, 8, 128,
|
||||
1, 0, 228, 128, 5, 0,
|
||||
228, 129, 11, 0, 0, 3,
|
||||
4, 0, 8, 128, 4, 0,
|
||||
255, 128, 40, 0, 0, 160,
|
||||
5, 0, 0, 4, 5, 0,
|
||||
7, 128, 4, 0, 255, 128,
|
||||
16, 32, 228, 160, 0, 0,
|
||||
0, 176, 6, 0, 0, 2,
|
||||
1, 0, 8, 128, 1, 0,
|
||||
255, 128, 6, 0, 0, 3,
|
||||
4, 0, 8, 128, 16, 32,
|
||||
255, 160, 0, 0, 0, 176,
|
||||
4, 0, 0, 4, 1, 0,
|
||||
8, 128, 1, 0, 255, 128,
|
||||
4, 0, 255, 129, 40, 0,
|
||||
255, 160, 11, 0, 0, 3,
|
||||
1, 0, 8, 128, 1, 0,
|
||||
255, 128, 40, 0, 0, 160,
|
||||
5, 0, 0, 3, 5, 0,
|
||||
7, 128, 1, 0, 255, 128,
|
||||
5, 0, 228, 128, 4, 0,
|
||||
0, 4, 2, 0, 7, 128,
|
||||
5, 0, 228, 128, 13, 0,
|
||||
170, 160, 2, 0, 228, 128,
|
||||
2, 0, 0, 3, 0, 0,
|
||||
8, 128, 0, 0, 255, 128,
|
||||
40, 0, 255, 160, 39, 0,
|
||||
0, 0, 1, 0, 0, 2,
|
||||
3, 0, 7, 128, 2, 0,
|
||||
228, 128, 1, 0, 0, 2,
|
||||
0, 0, 8, 128, 40, 0,
|
||||
0, 160, 38, 0, 0, 1,
|
||||
2, 0, 228, 240, 2, 0,
|
||||
0, 3, 1, 0, 8, 128,
|
||||
0, 0, 255, 128, 15, 0,
|
||||
170, 160, 5, 0, 0, 3,
|
||||
1, 0, 8, 128, 1, 0,
|
||||
255, 128, 11, 0, 0, 160,
|
||||
46, 0, 0, 2, 0, 0,
|
||||
1, 176, 1, 0, 255, 128,
|
||||
2, 0, 0, 4, 4, 0,
|
||||
7, 128, 0, 0, 228, 128,
|
||||
17, 32, 228, 161, 0, 0,
|
||||
0, 176, 8, 0, 0, 3,
|
||||
1, 0, 8, 128, 4, 0,
|
||||
228, 128, 4, 0, 228, 128,
|
||||
7, 0, 0, 2, 1, 0,
|
||||
8, 128, 1, 0, 255, 128,
|
||||
5, 0, 0, 3, 4, 0,
|
||||
7, 128, 1, 0, 255, 128,
|
||||
4, 0, 228, 128, 8, 0,
|
||||
0, 3, 4, 0, 8, 128,
|
||||
1, 0, 228, 128, 4, 0,
|
||||
228, 129, 8, 0, 0, 4,
|
||||
4, 0, 1, 128, 4, 0,
|
||||
228, 128, 18, 32, 228, 160,
|
||||
0, 0, 0, 176, 11, 0,
|
||||
0, 3, 4, 0, 2, 128,
|
||||
4, 0, 255, 128, 40, 0,
|
||||
0, 160, 2, 0, 0, 4,
|
||||
4, 0, 1, 128, 4, 0,
|
||||
0, 128, 17, 32, 255, 160,
|
||||
0, 0, 0, 176, 2, 0,
|
||||
0, 4, 4, 0, 4, 128,
|
||||
2, 0, 255, 128, 17, 32,
|
||||
255, 160, 0, 0, 0, 176,
|
||||
6, 0, 0, 2, 4, 0,
|
||||
4, 128, 4, 0, 170, 128,
|
||||
5, 0, 0, 3, 4, 0,
|
||||
1, 128, 4, 0, 170, 128,
|
||||
4, 0, 0, 128, 12, 0,
|
||||
0, 3, 4, 0, 4, 128,
|
||||
4, 0, 0, 128, 40, 0,
|
||||
0, 160, 4, 0, 0, 4,
|
||||
4, 0, 2, 128, 4, 0,
|
||||
170, 128, 4, 0, 85, 129,
|
||||
4, 0, 85, 128, 11, 0,
|
||||
0, 4, 4, 0, 1, 128,
|
||||
4, 0, 0, 128, 18, 32,
|
||||
255, 160, 0, 0, 0, 176,
|
||||
5, 0, 0, 3, 4, 0,
|
||||
1, 128, 4, 0, 0, 128,
|
||||
4, 0, 85, 128, 5, 0,
|
||||
0, 4, 4, 0, 7, 128,
|
||||
4, 0, 0, 128, 16, 32,
|
||||
228, 160, 0, 0, 0, 176,
|
||||
6, 0, 0, 2, 1, 0,
|
||||
8, 128, 1, 0, 255, 128,
|
||||
6, 0, 0, 3, 4, 0,
|
||||
8, 128, 16, 32, 255, 160,
|
||||
0, 0, 0, 176, 4, 0,
|
||||
0, 4, 1, 0, 8, 128,
|
||||
1, 0, 255, 128, 4, 0,
|
||||
255, 129, 40, 0, 255, 160,
|
||||
11, 0, 0, 3, 1, 0,
|
||||
8, 128, 1, 0, 255, 128,
|
||||
40, 0, 0, 160, 5, 0,
|
||||
0, 3, 4, 0, 7, 128,
|
||||
1, 0, 255, 128, 4, 0,
|
||||
228, 128, 4, 0, 0, 4,
|
||||
3, 0, 7, 128, 4, 0,
|
||||
228, 128, 13, 0, 170, 160,
|
||||
3, 0, 228, 128, 2, 0,
|
||||
0, 3, 0, 0, 8, 128,
|
||||
0, 0, 255, 128, 40, 0,
|
||||
255, 160, 39, 0, 0, 0,
|
||||
11, 0, 0, 3, 0, 0,
|
||||
15, 128, 3, 0, 228, 128,
|
||||
40, 0, 0, 160, 10, 0,
|
||||
0, 3, 0, 0, 15, 128,
|
||||
0, 0, 228, 128, 40, 0,
|
||||
255, 160, 5, 0, 0, 3,
|
||||
0, 0, 15, 208, 0, 0,
|
||||
228, 128, 12, 0, 228, 160,
|
||||
1, 0, 0, 2, 0, 0,
|
||||
3, 224, 2, 0, 228, 144,
|
||||
255, 255, 0, 0
|
||||
};
|
||||
143
src/d3d/shaders/default_amb_VS.h
Normal file
143
src/d3d/shaders/default_amb_VS.h
Normal file
@@ -0,0 +1,143 @@
|
||||
#if 0
|
||||
//
|
||||
// Generated by Microsoft (R) HLSL Shader Compiler 9.29.952.3111
|
||||
//
|
||||
// fxc /T vs_2_0 /Fh default_amb_VS.h defaultVS.hlsl
|
||||
//
|
||||
//
|
||||
// Parameters:
|
||||
//
|
||||
// float4 ambientLight;
|
||||
// float4x4 combinedMat;
|
||||
// float4 matCol;
|
||||
// float4 surfProps;
|
||||
//
|
||||
//
|
||||
// Registers:
|
||||
//
|
||||
// Name Reg Size
|
||||
// ------------ ----- ----
|
||||
// combinedMat c0 4
|
||||
// matCol c12 1
|
||||
// surfProps c13 1
|
||||
// ambientLight c14 1
|
||||
//
|
||||
|
||||
vs_2_0
|
||||
def c4, 0, -0, -1, 1
|
||||
dcl_position v0
|
||||
dcl_texcoord v1
|
||||
dcl_color v2
|
||||
mul r0, v0.y, c1
|
||||
mad r0, c0, v0.x, r0
|
||||
mad r0, c2, v0.z, r0
|
||||
mad oPos, c3, v0.w, r0
|
||||
mov r0.x, c4.x
|
||||
slt r0.x, r0.x, c13.w
|
||||
add r1, v2, c4.yyyz
|
||||
mad r0, r0.x, r1, c4.xxxw
|
||||
mov r1.x, c13.x
|
||||
mad r0.xyz, c14, r1.x, r0
|
||||
max r0, r0, c4.x
|
||||
min r0, r0, c4.w
|
||||
mul oD0, r0, c12
|
||||
mov oT0.xy, v1
|
||||
|
||||
// approximately 14 instruction slots used
|
||||
#endif
|
||||
|
||||
const BYTE g_vs20_main[] =
|
||||
{
|
||||
0, 2, 254, 255, 254, 255,
|
||||
62, 0, 67, 84, 65, 66,
|
||||
28, 0, 0, 0, 192, 0,
|
||||
0, 0, 0, 2, 254, 255,
|
||||
4, 0, 0, 0, 28, 0,
|
||||
0, 0, 0, 1, 0, 0,
|
||||
185, 0, 0, 0, 108, 0,
|
||||
0, 0, 2, 0, 14, 0,
|
||||
1, 0, 58, 0, 124, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
140, 0, 0, 0, 2, 0,
|
||||
0, 0, 4, 0, 2, 0,
|
||||
152, 0, 0, 0, 0, 0,
|
||||
0, 0, 168, 0, 0, 0,
|
||||
2, 0, 12, 0, 1, 0,
|
||||
50, 0, 124, 0, 0, 0,
|
||||
0, 0, 0, 0, 175, 0,
|
||||
0, 0, 2, 0, 13, 0,
|
||||
1, 0, 54, 0, 124, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
97, 109, 98, 105, 101, 110,
|
||||
116, 76, 105, 103, 104, 116,
|
||||
0, 171, 171, 171, 1, 0,
|
||||
3, 0, 1, 0, 4, 0,
|
||||
1, 0, 0, 0, 0, 0,
|
||||
0, 0, 99, 111, 109, 98,
|
||||
105, 110, 101, 100, 77, 97,
|
||||
116, 0, 3, 0, 3, 0,
|
||||
4, 0, 4, 0, 1, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
109, 97, 116, 67, 111, 108,
|
||||
0, 115, 117, 114, 102, 80,
|
||||
114, 111, 112, 115, 0, 118,
|
||||
115, 95, 50, 95, 48, 0,
|
||||
77, 105, 99, 114, 111, 115,
|
||||
111, 102, 116, 32, 40, 82,
|
||||
41, 32, 72, 76, 83, 76,
|
||||
32, 83, 104, 97, 100, 101,
|
||||
114, 32, 67, 111, 109, 112,
|
||||
105, 108, 101, 114, 32, 57,
|
||||
46, 50, 57, 46, 57, 53,
|
||||
50, 46, 51, 49, 49, 49,
|
||||
0, 171, 171, 171, 81, 0,
|
||||
0, 5, 4, 0, 15, 160,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 128, 0, 0, 128, 191,
|
||||
0, 0, 128, 63, 31, 0,
|
||||
0, 2, 0, 0, 0, 128,
|
||||
0, 0, 15, 144, 31, 0,
|
||||
0, 2, 5, 0, 0, 128,
|
||||
1, 0, 15, 144, 31, 0,
|
||||
0, 2, 10, 0, 0, 128,
|
||||
2, 0, 15, 144, 5, 0,
|
||||
0, 3, 0, 0, 15, 128,
|
||||
0, 0, 85, 144, 1, 0,
|
||||
228, 160, 4, 0, 0, 4,
|
||||
0, 0, 15, 128, 0, 0,
|
||||
228, 160, 0, 0, 0, 144,
|
||||
0, 0, 228, 128, 4, 0,
|
||||
0, 4, 0, 0, 15, 128,
|
||||
2, 0, 228, 160, 0, 0,
|
||||
170, 144, 0, 0, 228, 128,
|
||||
4, 0, 0, 4, 0, 0,
|
||||
15, 192, 3, 0, 228, 160,
|
||||
0, 0, 255, 144, 0, 0,
|
||||
228, 128, 1, 0, 0, 2,
|
||||
0, 0, 1, 128, 4, 0,
|
||||
0, 160, 12, 0, 0, 3,
|
||||
0, 0, 1, 128, 0, 0,
|
||||
0, 128, 13, 0, 255, 160,
|
||||
2, 0, 0, 3, 1, 0,
|
||||
15, 128, 2, 0, 228, 144,
|
||||
4, 0, 149, 160, 4, 0,
|
||||
0, 4, 0, 0, 15, 128,
|
||||
0, 0, 0, 128, 1, 0,
|
||||
228, 128, 4, 0, 192, 160,
|
||||
1, 0, 0, 2, 1, 0,
|
||||
1, 128, 13, 0, 0, 160,
|
||||
4, 0, 0, 4, 0, 0,
|
||||
7, 128, 14, 0, 228, 160,
|
||||
1, 0, 0, 128, 0, 0,
|
||||
228, 128, 11, 0, 0, 3,
|
||||
0, 0, 15, 128, 0, 0,
|
||||
228, 128, 4, 0, 0, 160,
|
||||
10, 0, 0, 3, 0, 0,
|
||||
15, 128, 0, 0, 228, 128,
|
||||
4, 0, 255, 160, 5, 0,
|
||||
0, 3, 0, 0, 15, 208,
|
||||
0, 0, 228, 128, 12, 0,
|
||||
228, 160, 1, 0, 0, 2,
|
||||
0, 0, 3, 224, 1, 0,
|
||||
228, 144, 255, 255, 0, 0
|
||||
};
|
||||
264
src/d3d/shaders/default_amb_dir_VS.h
Normal file
264
src/d3d/shaders/default_amb_dir_VS.h
Normal file
@@ -0,0 +1,264 @@
|
||||
#if 0
|
||||
//
|
||||
// Generated by Microsoft (R) HLSL Shader Compiler 9.29.952.3111
|
||||
//
|
||||
// fxc /T vs_2_0 /DDIRECTIONALS /Fh default_amb_dir_VS.h defaultVS.hlsl
|
||||
//
|
||||
//
|
||||
// Parameters:
|
||||
//
|
||||
// float4 ambientLight;
|
||||
// float4x4 combinedMat;
|
||||
// int4 firstLight;
|
||||
//
|
||||
// struct
|
||||
// {
|
||||
// float4 color;
|
||||
// float4 position;
|
||||
// float4 direction;
|
||||
//
|
||||
// } lights[8];
|
||||
//
|
||||
// float4 matCol;
|
||||
// float3x3 normalMat;
|
||||
// int numDirLights;
|
||||
// float4 surfProps;
|
||||
//
|
||||
//
|
||||
// Registers:
|
||||
//
|
||||
// Name Reg Size
|
||||
// ------------ ----- ----
|
||||
// numDirLights i0 1
|
||||
// combinedMat c0 4
|
||||
// normalMat c8 3
|
||||
// matCol c12 1
|
||||
// surfProps c13 1
|
||||
// ambientLight c14 1
|
||||
// firstLight c15 1
|
||||
// lights c16 24
|
||||
//
|
||||
|
||||
vs_2_0
|
||||
def c4, 3, 0, 0, 0
|
||||
def c5, 0, -0, -1, 1
|
||||
dcl_position v0
|
||||
dcl_normal v1
|
||||
dcl_texcoord v2
|
||||
dcl_color v3
|
||||
mul r0, v0.y, c1
|
||||
mad r0, c0, v0.x, r0
|
||||
mad r0, c2, v0.z, r0
|
||||
mad oPos, c3, v0.w, r0
|
||||
mul r0.xyz, v1.y, c9
|
||||
mad r0.xyz, c8, v1.x, r0
|
||||
mad r0.xyz, c10, v1.z, r0
|
||||
mov r1.x, c5.x
|
||||
slt r0.w, r1.x, c13.w
|
||||
add r1, v3, c5.yyyz
|
||||
mad r1, r0.w, r1, c5.xxxw
|
||||
mov r2.x, c13.x
|
||||
mad r2.xyz, c14, r2.x, r1
|
||||
mov r1.xyz, r2
|
||||
mov r0.w, c5.x
|
||||
rep i0
|
||||
add r2.w, r0.w, c15.x
|
||||
mul r2.w, r2.w, c4.x
|
||||
mova a0.x, r2.w
|
||||
dp3 r2.w, r0, -c18[a0.x]
|
||||
max r2.w, r2.w, c5.x
|
||||
mul r3.xyz, r2.w, c16[a0.x]
|
||||
mad r1.xyz, r3, c13.z, r1
|
||||
add r0.w, r0.w, c5.w
|
||||
endrep
|
||||
max r0, r1, c5.x
|
||||
min r0, r0, c5.w
|
||||
mul oD0, r0, c12
|
||||
mov oT0.xy, v2
|
||||
|
||||
// approximately 32 instruction slots used
|
||||
#endif
|
||||
|
||||
const BYTE g_vs20_main[] =
|
||||
{
|
||||
0, 2, 254, 255, 254, 255,
|
||||
127, 0, 67, 84, 65, 66,
|
||||
28, 0, 0, 0, 197, 1,
|
||||
0, 0, 0, 2, 254, 255,
|
||||
8, 0, 0, 0, 28, 0,
|
||||
0, 0, 0, 1, 0, 0,
|
||||
190, 1, 0, 0, 188, 0,
|
||||
0, 0, 2, 0, 14, 0,
|
||||
1, 0, 58, 0, 204, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
220, 0, 0, 0, 2, 0,
|
||||
0, 0, 4, 0, 2, 0,
|
||||
232, 0, 0, 0, 0, 0,
|
||||
0, 0, 248, 0, 0, 0,
|
||||
2, 0, 15, 0, 1, 0,
|
||||
62, 0, 4, 1, 0, 0,
|
||||
0, 0, 0, 0, 20, 1,
|
||||
0, 0, 2, 0, 16, 0,
|
||||
24, 0, 66, 0, 96, 1,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
112, 1, 0, 0, 2, 0,
|
||||
12, 0, 1, 0, 50, 0,
|
||||
204, 0, 0, 0, 0, 0,
|
||||
0, 0, 119, 1, 0, 0,
|
||||
2, 0, 8, 0, 3, 0,
|
||||
34, 0, 132, 1, 0, 0,
|
||||
0, 0, 0, 0, 148, 1,
|
||||
0, 0, 1, 0, 0, 0,
|
||||
1, 0, 2, 0, 164, 1,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
180, 1, 0, 0, 2, 0,
|
||||
13, 0, 1, 0, 54, 0,
|
||||
204, 0, 0, 0, 0, 0,
|
||||
0, 0, 97, 109, 98, 105,
|
||||
101, 110, 116, 76, 105, 103,
|
||||
104, 116, 0, 171, 171, 171,
|
||||
1, 0, 3, 0, 1, 0,
|
||||
4, 0, 1, 0, 0, 0,
|
||||
0, 0, 0, 0, 99, 111,
|
||||
109, 98, 105, 110, 101, 100,
|
||||
77, 97, 116, 0, 3, 0,
|
||||
3, 0, 4, 0, 4, 0,
|
||||
1, 0, 0, 0, 0, 0,
|
||||
0, 0, 102, 105, 114, 115,
|
||||
116, 76, 105, 103, 104, 116,
|
||||
0, 171, 1, 0, 2, 0,
|
||||
1, 0, 4, 0, 1, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
108, 105, 103, 104, 116, 115,
|
||||
0, 99, 111, 108, 111, 114,
|
||||
0, 171, 171, 171, 1, 0,
|
||||
3, 0, 1, 0, 4, 0,
|
||||
1, 0, 0, 0, 0, 0,
|
||||
0, 0, 112, 111, 115, 105,
|
||||
116, 105, 111, 110, 0, 100,
|
||||
105, 114, 101, 99, 116, 105,
|
||||
111, 110, 0, 171, 27, 1,
|
||||
0, 0, 36, 1, 0, 0,
|
||||
52, 1, 0, 0, 36, 1,
|
||||
0, 0, 61, 1, 0, 0,
|
||||
36, 1, 0, 0, 5, 0,
|
||||
0, 0, 1, 0, 12, 0,
|
||||
8, 0, 3, 0, 72, 1,
|
||||
0, 0, 109, 97, 116, 67,
|
||||
111, 108, 0, 110, 111, 114,
|
||||
109, 97, 108, 77, 97, 116,
|
||||
0, 171, 171, 171, 3, 0,
|
||||
3, 0, 3, 0, 3, 0,
|
||||
1, 0, 0, 0, 0, 0,
|
||||
0, 0, 110, 117, 109, 68,
|
||||
105, 114, 76, 105, 103, 104,
|
||||
116, 115, 0, 171, 171, 171,
|
||||
0, 0, 2, 0, 1, 0,
|
||||
1, 0, 1, 0, 0, 0,
|
||||
0, 0, 0, 0, 115, 117,
|
||||
114, 102, 80, 114, 111, 112,
|
||||
115, 0, 118, 115, 95, 50,
|
||||
95, 48, 0, 77, 105, 99,
|
||||
114, 111, 115, 111, 102, 116,
|
||||
32, 40, 82, 41, 32, 72,
|
||||
76, 83, 76, 32, 83, 104,
|
||||
97, 100, 101, 114, 32, 67,
|
||||
111, 109, 112, 105, 108, 101,
|
||||
114, 32, 57, 46, 50, 57,
|
||||
46, 57, 53, 50, 46, 51,
|
||||
49, 49, 49, 0, 171, 171,
|
||||
81, 0, 0, 5, 4, 0,
|
||||
15, 160, 0, 0, 64, 64,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
81, 0, 0, 5, 5, 0,
|
||||
15, 160, 0, 0, 0, 0,
|
||||
0, 0, 0, 128, 0, 0,
|
||||
128, 191, 0, 0, 128, 63,
|
||||
31, 0, 0, 2, 0, 0,
|
||||
0, 128, 0, 0, 15, 144,
|
||||
31, 0, 0, 2, 3, 0,
|
||||
0, 128, 1, 0, 15, 144,
|
||||
31, 0, 0, 2, 5, 0,
|
||||
0, 128, 2, 0, 15, 144,
|
||||
31, 0, 0, 2, 10, 0,
|
||||
0, 128, 3, 0, 15, 144,
|
||||
5, 0, 0, 3, 0, 0,
|
||||
15, 128, 0, 0, 85, 144,
|
||||
1, 0, 228, 160, 4, 0,
|
||||
0, 4, 0, 0, 15, 128,
|
||||
0, 0, 228, 160, 0, 0,
|
||||
0, 144, 0, 0, 228, 128,
|
||||
4, 0, 0, 4, 0, 0,
|
||||
15, 128, 2, 0, 228, 160,
|
||||
0, 0, 170, 144, 0, 0,
|
||||
228, 128, 4, 0, 0, 4,
|
||||
0, 0, 15, 192, 3, 0,
|
||||
228, 160, 0, 0, 255, 144,
|
||||
0, 0, 228, 128, 5, 0,
|
||||
0, 3, 0, 0, 7, 128,
|
||||
1, 0, 85, 144, 9, 0,
|
||||
228, 160, 4, 0, 0, 4,
|
||||
0, 0, 7, 128, 8, 0,
|
||||
228, 160, 1, 0, 0, 144,
|
||||
0, 0, 228, 128, 4, 0,
|
||||
0, 4, 0, 0, 7, 128,
|
||||
10, 0, 228, 160, 1, 0,
|
||||
170, 144, 0, 0, 228, 128,
|
||||
1, 0, 0, 2, 1, 0,
|
||||
1, 128, 5, 0, 0, 160,
|
||||
12, 0, 0, 3, 0, 0,
|
||||
8, 128, 1, 0, 0, 128,
|
||||
13, 0, 255, 160, 2, 0,
|
||||
0, 3, 1, 0, 15, 128,
|
||||
3, 0, 228, 144, 5, 0,
|
||||
149, 160, 4, 0, 0, 4,
|
||||
1, 0, 15, 128, 0, 0,
|
||||
255, 128, 1, 0, 228, 128,
|
||||
5, 0, 192, 160, 1, 0,
|
||||
0, 2, 2, 0, 1, 128,
|
||||
13, 0, 0, 160, 4, 0,
|
||||
0, 4, 2, 0, 7, 128,
|
||||
14, 0, 228, 160, 2, 0,
|
||||
0, 128, 1, 0, 228, 128,
|
||||
1, 0, 0, 2, 1, 0,
|
||||
7, 128, 2, 0, 228, 128,
|
||||
1, 0, 0, 2, 0, 0,
|
||||
8, 128, 5, 0, 0, 160,
|
||||
38, 0, 0, 1, 0, 0,
|
||||
228, 240, 2, 0, 0, 3,
|
||||
2, 0, 8, 128, 0, 0,
|
||||
255, 128, 15, 0, 0, 160,
|
||||
5, 0, 0, 3, 2, 0,
|
||||
8, 128, 2, 0, 255, 128,
|
||||
4, 0, 0, 160, 46, 0,
|
||||
0, 2, 0, 0, 1, 176,
|
||||
2, 0, 255, 128, 8, 0,
|
||||
0, 4, 2, 0, 8, 128,
|
||||
0, 0, 228, 128, 18, 32,
|
||||
228, 161, 0, 0, 0, 176,
|
||||
11, 0, 0, 3, 2, 0,
|
||||
8, 128, 2, 0, 255, 128,
|
||||
5, 0, 0, 160, 5, 0,
|
||||
0, 4, 3, 0, 7, 128,
|
||||
2, 0, 255, 128, 16, 32,
|
||||
228, 160, 0, 0, 0, 176,
|
||||
4, 0, 0, 4, 1, 0,
|
||||
7, 128, 3, 0, 228, 128,
|
||||
13, 0, 170, 160, 1, 0,
|
||||
228, 128, 2, 0, 0, 3,
|
||||
0, 0, 8, 128, 0, 0,
|
||||
255, 128, 5, 0, 255, 160,
|
||||
39, 0, 0, 0, 11, 0,
|
||||
0, 3, 0, 0, 15, 128,
|
||||
1, 0, 228, 128, 5, 0,
|
||||
0, 160, 10, 0, 0, 3,
|
||||
0, 0, 15, 128, 0, 0,
|
||||
228, 128, 5, 0, 255, 160,
|
||||
5, 0, 0, 3, 0, 0,
|
||||
15, 208, 0, 0, 228, 128,
|
||||
12, 0, 228, 160, 1, 0,
|
||||
0, 2, 0, 0, 3, 224,
|
||||
2, 0, 228, 144, 255, 255,
|
||||
0, 0
|
||||
};
|
||||
37
src/d3d/shaders/default_color_PS.h
Normal file
37
src/d3d/shaders/default_color_PS.h
Normal file
@@ -0,0 +1,37 @@
|
||||
#if 0
|
||||
//
|
||||
// Generated by Microsoft (R) HLSL Shader Compiler 9.29.952.3111
|
||||
//
|
||||
// fxc /T ps_2_0 /Fh default_color_PS.h default_color_PS.hlsl
|
||||
//
|
||||
ps_2_0
|
||||
dcl v0
|
||||
mov oC0, v0
|
||||
|
||||
// approximately 1 instruction slot used
|
||||
#endif
|
||||
|
||||
const BYTE g_ps20_main[] =
|
||||
{
|
||||
0, 2, 255, 255, 254, 255,
|
||||
22, 0, 67, 84, 65, 66,
|
||||
28, 0, 0, 0, 35, 0,
|
||||
0, 0, 0, 2, 255, 255,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 1, 0, 0,
|
||||
28, 0, 0, 0, 112, 115,
|
||||
95, 50, 95, 48, 0, 77,
|
||||
105, 99, 114, 111, 115, 111,
|
||||
102, 116, 32, 40, 82, 41,
|
||||
32, 72, 76, 83, 76, 32,
|
||||
83, 104, 97, 100, 101, 114,
|
||||
32, 67, 111, 109, 112, 105,
|
||||
108, 101, 114, 32, 57, 46,
|
||||
50, 57, 46, 57, 53, 50,
|
||||
46, 51, 49, 49, 49, 0,
|
||||
31, 0, 0, 2, 0, 0,
|
||||
0, 128, 0, 0, 15, 144,
|
||||
1, 0, 0, 2, 0, 8,
|
||||
15, 128, 0, 0, 228, 144,
|
||||
255, 255, 0, 0
|
||||
};
|
||||
10
src/d3d/shaders/default_color_PS.hlsl
Normal file
10
src/d3d/shaders/default_color_PS.hlsl
Normal file
@@ -0,0 +1,10 @@
|
||||
struct VS_out {
|
||||
float4 Position : POSITION;
|
||||
float2 TexCoord0 : TEXCOORD0;
|
||||
float4 Color : COLOR0;
|
||||
};
|
||||
|
||||
float4 main(VS_out input) : COLOR
|
||||
{
|
||||
return input.Color;
|
||||
}
|
||||
71
src/d3d/shaders/default_color_tex_PS.h
Normal file
71
src/d3d/shaders/default_color_tex_PS.h
Normal file
@@ -0,0 +1,71 @@
|
||||
#if 0
|
||||
//
|
||||
// Generated by Microsoft (R) HLSL Shader Compiler 9.29.952.3111
|
||||
//
|
||||
// fxc /T ps_2_0 /Fh default_color_tex_PS.h default_color_tex_PS.hlsl
|
||||
//
|
||||
//
|
||||
// Parameters:
|
||||
//
|
||||
// sampler2D tex0;
|
||||
//
|
||||
//
|
||||
// Registers:
|
||||
//
|
||||
// Name Reg Size
|
||||
// ------------ ----- ----
|
||||
// tex0 s0 1
|
||||
//
|
||||
|
||||
ps_2_0
|
||||
dcl t0.xy
|
||||
dcl v0
|
||||
dcl_2d s0
|
||||
texld r0, t0, s0
|
||||
mul r0, r0, v0
|
||||
mov oC0, r0
|
||||
|
||||
// approximately 3 instruction slots used (1 texture, 2 arithmetic)
|
||||
#endif
|
||||
|
||||
const BYTE g_ps20_main[] =
|
||||
{
|
||||
0, 2, 255, 255, 254, 255,
|
||||
33, 0, 67, 84, 65, 66,
|
||||
28, 0, 0, 0, 79, 0,
|
||||
0, 0, 0, 2, 255, 255,
|
||||
1, 0, 0, 0, 28, 0,
|
||||
0, 0, 0, 1, 0, 0,
|
||||
72, 0, 0, 0, 48, 0,
|
||||
0, 0, 3, 0, 0, 0,
|
||||
1, 0, 2, 0, 56, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
116, 101, 120, 48, 0, 171,
|
||||
171, 171, 4, 0, 12, 0,
|
||||
1, 0, 1, 0, 1, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
112, 115, 95, 50, 95, 48,
|
||||
0, 77, 105, 99, 114, 111,
|
||||
115, 111, 102, 116, 32, 40,
|
||||
82, 41, 32, 72, 76, 83,
|
||||
76, 32, 83, 104, 97, 100,
|
||||
101, 114, 32, 67, 111, 109,
|
||||
112, 105, 108, 101, 114, 32,
|
||||
57, 46, 50, 57, 46, 57,
|
||||
53, 50, 46, 51, 49, 49,
|
||||
49, 0, 31, 0, 0, 2,
|
||||
0, 0, 0, 128, 0, 0,
|
||||
3, 176, 31, 0, 0, 2,
|
||||
0, 0, 0, 128, 0, 0,
|
||||
15, 144, 31, 0, 0, 2,
|
||||
0, 0, 0, 144, 0, 8,
|
||||
15, 160, 66, 0, 0, 3,
|
||||
0, 0, 15, 128, 0, 0,
|
||||
228, 176, 0, 8, 228, 160,
|
||||
5, 0, 0, 3, 0, 0,
|
||||
15, 128, 0, 0, 228, 128,
|
||||
0, 0, 228, 144, 1, 0,
|
||||
0, 2, 0, 8, 15, 128,
|
||||
0, 0, 228, 128, 255, 255,
|
||||
0, 0
|
||||
};
|
||||
13
src/d3d/shaders/default_color_tex_PS.hlsl
Normal file
13
src/d3d/shaders/default_color_tex_PS.hlsl
Normal file
@@ -0,0 +1,13 @@
|
||||
struct VS_out {
|
||||
float4 Position : POSITION;
|
||||
float2 TexCoord0 : TEXCOORD0;
|
||||
float4 Color : COLOR0;
|
||||
};
|
||||
|
||||
sampler2D tex0 : register(s0);
|
||||
|
||||
|
||||
float4 main(VS_out input) : COLOR
|
||||
{
|
||||
return tex2D(tex0, input.TexCoord0.xy) * input.Color;
|
||||
}
|
||||
25
src/d3d/shaders/im3d_VS.hlsl
Normal file
25
src/d3d/shaders/im3d_VS.hlsl
Normal file
@@ -0,0 +1,25 @@
|
||||
float4x4 combinedMat : register(c0);
|
||||
|
||||
struct VS_in
|
||||
{
|
||||
float4 Position : POSITION;
|
||||
float2 TexCoord : TEXCOORD0;
|
||||
float4 Color : COLOR0;
|
||||
};
|
||||
|
||||
struct VS_out {
|
||||
float4 Position : POSITION;
|
||||
float2 TexCoord0 : TEXCOORD0;
|
||||
float4 Color : COLOR0;
|
||||
};
|
||||
|
||||
VS_out main(in VS_in input)
|
||||
{
|
||||
VS_out output;
|
||||
|
||||
output.Position = mul(combinedMat, input.Position);
|
||||
output.TexCoord0 = input.TexCoord;
|
||||
output.Color = input.Color;
|
||||
|
||||
return output;
|
||||
}
|
||||
39
src/d3d/shaders/lighting.h
Normal file
39
src/d3d/shaders/lighting.h
Normal file
@@ -0,0 +1,39 @@
|
||||
struct Light
|
||||
{
|
||||
float4 color; // and radius
|
||||
float4 position; // and -cos(angle)
|
||||
float4 direction; // and falloff clamp
|
||||
};
|
||||
|
||||
float3 DoDirLight(Light L, float3 N)
|
||||
{
|
||||
float l = max(0.0, dot(N, -L.direction.xyz));
|
||||
return l*L.color.xyz;
|
||||
}
|
||||
|
||||
float3 DoPointLight(Light L, float3 V, float3 N)
|
||||
{
|
||||
// As on PS2
|
||||
float3 dir = V - L.position.xyz;
|
||||
float dist = length(dir);
|
||||
float atten = max(0.0, (1.0 - dist/L.color.w));
|
||||
float l = max(0.0, dot(N, -normalize(dir)));
|
||||
return l*L.color.xyz*atten;
|
||||
}
|
||||
|
||||
float3 DoSpotLight(Light L, float3 V, float3 N)
|
||||
{
|
||||
// As on PS2
|
||||
float3 dir = V - L.position.xyz;
|
||||
float dist = length(dir);
|
||||
float atten = max(0.0, (1.0 - dist/L.color.w));
|
||||
dir /= dist;
|
||||
float l = max(0.0, dot(N, -dir));
|
||||
float pcos = dot(dir, L.direction.xyz); // cos to point
|
||||
float ccos = -L.position.w; // cos of cone
|
||||
float falloff = (pcos-ccos)/(1.0-ccos);
|
||||
if(falloff < 0) // outside of cone
|
||||
l = 0;
|
||||
l *= max(falloff, L.direction.w); // falloff clamp
|
||||
return l*L.color.xyz*atten;
|
||||
}
|
||||
7
src/d3d/shaders/make.cmd
Normal file
7
src/d3d/shaders/make.cmd
Normal file
@@ -0,0 +1,7 @@
|
||||
@echo off
|
||||
"%DXSDK_DIR%\utilities\bin\x86\fxc.exe" /T vs_2_0 /Fh default_amb_VS.h defaultVS.hlsl
|
||||
"%DXSDK_DIR%\utilities\bin\x86\fxc.exe" /T vs_2_0 /DDIRECTIONALS /Fh default_amb_dir_VS.h defaultVS.hlsl
|
||||
"%DXSDK_DIR%\utilities\bin\x86\fxc.exe" /T vs_2_0 /DDIRECTIONALS /DPOINTLIGHTS /DSPOTLIGHTS /Fh default_all_VS.h defaultVS.hlsl
|
||||
|
||||
"%DXSDK_DIR%\utilities\bin\x86\fxc.exe" /T ps_2_0 /Fh default_color_PS.h default_color_PS.hlsl
|
||||
"%DXSDK_DIR%\utilities\bin\x86\fxc.exe" /T ps_2_0 /Fh default_color_tex_PS.h default_color_tex_PS.hlsl
|
||||
Reference in New Issue
Block a user