implemented shader fog

This commit is contained in:
aap 2020-04-20 19:18:28 +02:00
parent 8b677c4dd7
commit 808290e73e
23 changed files with 1769 additions and 1650 deletions

View File

@ -30,8 +30,8 @@ enum
{
VSLOC_texMat = VSLOC_afterLights,
PSLOC_shininess = 0,
PSLOC_colorClamp = 1
PSLOC_shininess = 1,
PSLOC_colorClamp = 2
};
void
@ -51,9 +51,9 @@ matfxRender_Default(InstanceDataHeader *header, InstanceData *inst, int32 lightB
if(inst->material->texture){
d3d::setTexture(0, m->texture);
setPixelShader(default_color_tex_PS);
setPixelShader(default_tex_PS);
}else
setPixelShader(default_color_PS);
setPixelShader(default_PS);
drawInst(header, inst);
}
@ -149,6 +149,9 @@ matfxRenderCB_Shader(Atomic *atomic, InstanceDataHeader *header)
vsBits = lightingCB_Shader(atomic);
uploadMatrices(atomic->getFrame()->getLTM());
d3ddevice->SetVertexShaderConstantF(VSLOC_fogData, (float*)&d3dShaderState.fogData, 1);
d3ddevice->SetPixelShaderConstantF(PSLOC_fogColor, (float*)&d3dShaderState.fogColor, 1);
bool normals = !!(atomic->geometry->flags & Geometry::NORMALS);
float surfProps[4];

View File

@ -138,6 +138,9 @@ defaultRenderCB_Shader(Atomic *atomic, InstanceDataHeader *header)
vsBits = lightingCB_Shader(atomic);
uploadMatrices(atomic->getFrame()->getLTM());
d3ddevice->SetVertexShaderConstantF(VSLOC_fogData, (float*)&d3dShaderState.fogData, 1);
d3ddevice->SetPixelShaderConstantF(PSLOC_fogColor, (float*)&d3dShaderState.fogColor, 1);
// Pick a shader
if((vsBits & VSLIGHT_MASK) == 0)
setVertexShader(default_amb_VS);
@ -166,9 +169,9 @@ defaultRenderCB_Shader(Atomic *atomic, InstanceDataHeader *header)
if(inst->material->texture){
d3d::setTexture(0, m->texture);
setPixelShader(default_color_tex_PS);
setPixelShader(default_tex_PS);
}else
setPixelShader(default_color_PS);
setPixelShader(default_PS);
drawInst(header, inst);
inst++;

View File

@ -71,6 +71,8 @@ struct RwStateCache {
};
static RwStateCache rwStateCache;
D3dShaderState d3dShaderState;
#define MAXNUMSTATES (D3DRS_BLENDOPALPHA+1)
#define MAXNUMTEXSTATES (D3DTSS_CONSTANT+1)
#define MAXNUMSAMPLERSTATES (D3DSAMP_DMAPOFFSET+1)
@ -477,7 +479,8 @@ setRwRenderState(int32 state, void *pvalue)
case FOGENABLE:
if(rwStateCache.fogenable != bval){
rwStateCache.fogenable = bval;
setRenderState(D3DRS_FOGENABLE, rwStateCache.fogenable);
// setRenderState(D3DRS_FOGENABLE, rwStateCache.fogenable);
d3dShaderState.fogData.disable = bval ? 0.0f : 1.0f;
};
break;
case FOGCOLOR:{
@ -489,6 +492,7 @@ setRwRenderState(int32 state, void *pvalue)
if(!equal(rwStateCache.fogcolor, c)){
rwStateCache.fogcolor = c;
setRenderState(D3DRS_FOGCOLOR, D3DCOLOR_RGBA(c.red, c.green, c.blue, c.alpha));
convColor(&d3dShaderState.fogColor, &c);
}} break;
case CULLMODE:
if(rwStateCache.cullmode != value){
@ -686,8 +690,15 @@ beginUpdate(Camera *cam)
d3ddevice->SetTransform(D3DTS_PROJECTION, (D3DMATRIX*)proj);
// TODO: figure out where this is really done
setRenderState(D3DRS_FOGSTART, *(uint32*)&cam->fogPlane);
setRenderState(D3DRS_FOGEND, *(uint32*)&cam->farPlane);
// setRenderState(D3DRS_FOGSTART, *(uint32*)&cam->fogPlane);
// setRenderState(D3DRS_FOGEND, *(uint32*)&cam->farPlane);
d3dShaderState.fogData.start = cam->fogPlane;
d3dShaderState.fogData.end = cam->farPlane;
d3dShaderState.fogData.range = 1.0f/(cam->fogPlane - cam->farPlane);
d3dShaderState.fogDisable.start = 0.0f;
d3dShaderState.fogDisable.end = 0.0f;
d3dShaderState.fogDisable.range = 0.0f;
d3dShaderState.fogDisable.disable = 1.0f;
D3DVIEWPORT9 vp;
vp.MinZ = 0.0f;

View File

@ -109,9 +109,9 @@ im2DRenderPrimitive(PrimitiveType primType, void *vertices, int32 numVertices)
d3ddevice->SetVertexDeclaration(im2ddecl);
if(engine->device.getRenderState(TEXTURERASTER))
setPixelShader(default_color_tex_PS);
setPixelShader(im2d_tex_PS);
else
setPixelShader(default_color_PS);
setPixelShader(im2d_PS);
d3d::flushCache();
@ -163,9 +163,9 @@ im2DRenderIndexedPrimitive(PrimitiveType primType,
d3ddevice->SetVertexDeclaration(im2ddecl);
if(engine->device.getRenderState(TEXTURERASTER))
setPixelShader(default_color_tex_PS);
setPixelShader(im2d_tex_PS);
else
setPixelShader(default_color_PS);
setPixelShader(im2d_PS);
d3d::flushCache();
@ -250,6 +250,13 @@ im3DTransform(void *vertices, int32 numVertices, Matrix *world)
else
uploadMatrices(world);
d3ddevice->SetVertexShaderConstantF(VSLOC_fogData, (float*)&d3dShaderState.fogData, 1);
d3ddevice->SetPixelShaderConstantF(PSLOC_fogColor, (float*)&d3dShaderState.fogColor, 1);
static float surfprops[4] = { 0.0f, 0.0f, 0.0f, 1.0f };
static float white[4] = { 1.0f, 1.0f, 1.0f, 1.0f };
d3ddevice->SetVertexShaderConstantF(VSLOC_surfProps, surfprops, 1);
d3ddevice->SetVertexShaderConstantF(VSLOC_matColor, white, 1);
uint8 *lockedvertices = lockVertices(im3dvertbuf, 0, numVertices*sizeof(Im3DVertex), D3DLOCK_DISCARD);
memcpy(lockedvertices, vertices, numVertices*sizeof(Im3DVertex));
unlockVertices(im3dvertbuf);
@ -257,6 +264,8 @@ im3DTransform(void *vertices, int32 numVertices, Matrix *world)
d3ddevice->SetStreamSource(0, im3dvertbuf, 0, sizeof(Im3DVertex));
d3ddevice->SetVertexDeclaration(im3ddecl);
setVertexShader(default_amb_VS);
num3DVertices = numVertices;
}
@ -270,9 +279,9 @@ im3DRenderIndexed(PrimitiveType primType, void *indices, int32 numIndices)
d3ddevice->SetIndices(im3dindbuf);
if(engine->device.getRenderState(TEXTURERASTER))
setPixelShader(default_color_tex_PS);
setPixelShader(default_tex_PS);
else
setPixelShader(default_color_PS);
setPixelShader(default_PS);
d3d::flushCache();
@ -302,6 +311,7 @@ im3DRenderIndexed(PrimitiveType primType, void *indices, int32 numIndices)
0, num3DVertices,
0, primCount);
setVertexShader(nil);
setPixelShader(nil);
}

View File

@ -25,8 +25,11 @@ IDirect3DDevice9 *d3ddevice = nil;
void *default_amb_VS;
void *default_amb_dir_VS;
void *default_all_VS;
void *default_color_PS;
void *default_color_tex_PS;
void *default_PS;
void *default_tex_PS;
void *im2d_PS;
void *im2d_tex_PS;
void
createDefaultShaders(void)
@ -52,15 +55,28 @@ createDefaultShaders(void)
{
static
#include "shaders/default_color_PS.h"
default_color_PS = createPixelShader((void*)PS_NAME);
assert(default_color_PS);
#include "shaders/default_PS.h"
default_PS = createPixelShader((void*)PS_NAME);
assert(default_PS);
}
{
static
#include "shaders/default_color_tex_PS.h"
default_color_tex_PS = createPixelShader((void*)PS_NAME);
assert(default_color_tex_PS);
#include "shaders/default_tex_PS.h"
default_tex_PS = createPixelShader((void*)PS_NAME);
assert(default_tex_PS);
}
{
static
#include "shaders/im2d_PS.h"
im2d_PS = createPixelShader((void*)PS_NAME);
assert(im2d_PS);
}
{
static
#include "shaders/im2d_tex_PS.h"
im2d_tex_PS = createPixelShader((void*)PS_NAME);
assert(im2d_tex_PS);
}
}
@ -74,10 +90,15 @@ destroyDefaultShaders(void)
destroyVertexShader(default_all_VS);
default_all_VS = nil;
destroyPixelShader(default_color_PS);
default_color_PS = nil;
destroyPixelShader(default_color_tex_PS);
default_color_tex_PS = nil;
destroyPixelShader(default_PS);
default_PS = nil;
destroyPixelShader(default_tex_PS);
default_tex_PS = nil;
destroyPixelShader(im2d_PS);
im2d_PS = nil;
destroyPixelShader(im2d_tex_PS);
im2d_tex_PS = nil;
}

View File

@ -194,6 +194,20 @@ void destroyPixelShader(void *shader);
* Vertex shaders and common pipeline stuff
*/
struct D3dShaderState
{
// for VS
struct {
float32 start;
float32 end;
float32 range; // 1/(start-end)
float32 disable; // lower clamp
} fogData, fogDisable;
// for PS
RGBAf fogColor;
};
extern D3dShaderState d3dShaderState;
// Standard Vertex shader locations
enum
{
@ -202,12 +216,15 @@ enum
VSLOC_normal = 8,
VSLOC_matColor = 12,
VSLOC_surfProps = 13,
VSLOC_ambLight = 14,
VSLOC_lightOffset = 15,
VSLOC_lights = 16,
VSLOC_fogData = 14,
VSLOC_ambLight = 15,
VSLOC_lightOffset = 16,
VSLOC_lights = 17,
VSLOC_afterLights = VSLOC_lights + 8*3,
VSLOC_numLights = 0,
PSLOC_fogColor = 0
};
// Vertex shader bits
@ -232,8 +249,10 @@ int32 uploadLights(WorldLights *lightData); // called by lightingCB_Shader
extern void *default_amb_VS;
extern void *default_amb_dir_VS;
extern void *default_all_VS;
extern void *default_color_PS;
extern void *default_color_tex_PS;
extern void *default_PS;
extern void *default_tex_PS;
extern void *im2d_PS;
extern void *im2d_tex_PS;
void createDefaultShaders(void);
void destroyDefaultShaders(void);

View File

@ -0,0 +1,19 @@
struct VS_out {
float4 Position : POSITION;
float3 TexCoord0 : TEXCOORD0;
float4 Color : COLOR0;
};
sampler2D tex0 : register(s0);
float4 fogColor : register(c0);
float4 main(VS_out input) : COLOR
{
float4 color = input.Color;
#ifdef TEX
color *= tex2D(tex0, input.TexCoord0.xy);
#endif
color.rgb = lerp(fogColor.rgb, color.rgb, input.TexCoord0.z);
return color;
}

View File

@ -1,26 +1,4 @@
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)
#include "standardConstants.h"
struct VS_in
{
@ -32,7 +10,7 @@ struct VS_in
struct VS_out {
float4 Position : POSITION;
float2 TexCoord0 : TEXCOORD0;
float3 TexCoord0 : TEXCOORD0; // also fog
float4 Color : COLOR0;
};
@ -45,7 +23,7 @@ VS_out main(in VS_in input)
float3 Vertex = mul(worldMat, input.Position).xyz;
float3 Normal = mul(normalMat, input.Normal);
output.TexCoord0 = input.TexCoord;
output.TexCoord0.xy = input.TexCoord;
output.Color = float4(0.0, 0.0, 0.0, 1.0);
if(surfPrelight > 0.0)
@ -70,5 +48,7 @@ VS_out main(in VS_in input)
output.Color = clamp(output.Color, 0.0, 1.0);
output.Color *= matCol;
output.TexCoord0.z = clamp((output.Position.w - fogEnd)*fogRange, fogDisable, 1.0);
return output;
}

View File

@ -3,7 +3,7 @@
// 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
// default_all_VS.h default_VS.hlsl
//
//
// Parameters:
@ -11,6 +11,7 @@
// float4 ambientLight;
// float4x4 combinedMat;
// int4 firstLight;
// float4 fogData;
//
// struct
// {
@ -41,14 +42,15 @@
// normalMat c8 3
// matCol c12 1
// surfProps c13 1
// ambientLight c14 1
// firstLight c15 1
// lights c16 24
// fogData c14 1
// ambientLight c15 1
// firstLight c16 1
// lights c17 24
//
vs_2_0
def c11, 3, 0, 0, 0
def c40, 0, -0, -1, 1
def c41, 0, -0, -1, 1
dcl_position v0
dcl_normal v1
dcl_texcoord v2
@ -56,7 +58,8 @@
mul r0, v0.y, c1
mad r0, c0, v0.x, r0
mad r0, c2, v0.z, r0
mad oPos, c3, v0.w, r0
mad r0, c3, v0.w, r0
mov oPos, r0
mul r0.xyz, v0.y, c5
mad r0.xyz, c4, v0.x, r0
mad r0.xyz, c6, v0.z, r0
@ -64,422 +67,443 @@
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.xw, c41
slt r1.w, r2.x, c13.w
add r3, v3, c41.yyyz
mad r3, r1.w, r3, c41.xxxw
mov r2.x, c13.x
mad r2.xyz, c14, r2.x, r3
mad r2.xyz, c15, r2.x, r3
mov r4.xyz, r2
mov r0.w, c40.x
mov r1.w, c41.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]
add r4.w, r1.w, c16.x
mul r4.w, r4.w, c11.x
mova a0.x, r4.w
dp3 r4.w, r1, -c19[a0.x]
max r4.w, r4.w, c41.x
mul r5.xyz, r4.w, c17[a0.x]
mad r4.xyz, r5, c13.z, r4
add r0.w, r0.w, c40.w
add r1.w, r1.w, c41.w
endrep
mov r2.xyz, r4
mov r0.w, c40.x
mov r1.w, c41.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
add r4.w, r1.w, c16.y
mul r4.w, r4.w, c11.x
mova a0.x, r4.w
add r5.xyz, r0, -c18[a0.x]
dp3 r4.w, r5, r5
rsq r4.w, r4.w
mul r5.xyz, r4.w, r5
dp3 r5.x, r1, -r5
max r5.x, r5.x, c41.x
mul r5.xyz, r5.x, c17[a0.x]
rcp r4.w, r4.w
rcp r5.w, c17[a0.x].w
mad r4.w, r4.w, -r5.w, c41.w
max r4.w, r4.w, c41.x
mul r5.xyz, r4.w, r5
mad r2.xyz, r5, c13.z, r2
add r0.w, r0.w, c40.w
add r1.w, r1.w, c41.w
endrep
mov r3.xyz, r2
mov r0.w, c40.x
mov r1.w, c41.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
add r4.x, r1.w, c16.z
mul r4.x, r4.x, c11.x
mova a0.x, r4.x
add r4.xyz, r0, -c18[a0.x]
dp3 r4.w, r4, r4
rsq r4.w, r4.w
mul r4.xyz, r4.w, r4
dp3 r5.x, r1, -r4
dp3 r4.x, r4, c19[a0.x]
max r4.y, r5.x, c41.x
add r4.x, r4.x, c18[a0.x].w
add r4.z, r2.w, c18[a0.x].w
rcp r4.z, r4.z
mul r4.x, r4.z, r4.x
slt r4.z, r4.x, c40.x
slt r4.z, r4.x, c41.x
mad r4.y, r4.z, -r4.y, r4.y
max r4.x, r4.x, c18[a0.x].w
max r4.x, r4.x, c19[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
mul r4.xyz, r4.x, c17[a0.x]
rcp r4.w, r4.w
rcp r5.x, c17[a0.x].w
mad r4.w, r4.w, -r5.x, c41.w
max r4.w, r4.w, c41.x
mul r4.xyz, r4.w, r4
mad r3.xyz, r4, c13.z, r3
add r0.w, r0.w, c40.w
add r1.w, r1.w, c41.w
endrep
max r0, r3, c40.x
min r0, r0, c40.w
mul oD0, r0, c12
max r1, r3, c41.x
min r1, r1, c41.w
mul oD0, r1, c12
add r0.x, r0.w, -c14.y
mul r0.x, r0.x, c14.z
max r0.x, r0.x, c14.w
min oT0.z, r0.x, c41.w
mov oT0.xy, v2
// approximately 93 instruction slots used
// approximately 98 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,
158, 0, 67, 84, 65, 66,
28, 0, 0, 0, 67, 2,
0, 0, 0, 2, 254, 255,
11, 0, 0, 0, 28, 0,
12, 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,
60, 2, 0, 0, 12, 1,
0, 0, 2, 0, 15, 0,
1, 0, 62, 0, 28, 1,
0, 0, 0, 0, 0, 0,
24, 1, 0, 0, 2, 0,
44, 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,
56, 1, 0, 0, 0, 0,
0, 0, 72, 1, 0, 0,
2, 0, 16, 0, 1, 0,
66, 0, 84, 1, 0, 0,
0, 0, 0, 0, 100, 1,
0, 0, 2, 0, 14, 0,
1, 0, 58, 0, 28, 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,
108, 1, 0, 0, 2, 0,
17, 0, 24, 0, 70, 0,
184, 1, 0, 0, 0, 0,
0, 0, 200, 1, 0, 0,
2, 0, 12, 0, 1, 0,
50, 0, 28, 1, 0, 0,
0, 0, 0, 0, 207, 1,
0, 0, 2, 0, 8, 0,
3, 0, 34, 0, 220, 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,
236, 1, 0, 0, 1, 0,
0, 0, 1, 0, 2, 0,
252, 1, 0, 0, 0, 0,
0, 0, 12, 2, 0, 0,
1, 0, 1, 0, 1, 0,
6, 0, 252, 1, 0, 0,
0, 0, 0, 0, 27, 2,
0, 0, 1, 0, 2, 0,
1, 0, 10, 0, 252, 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,
41, 2, 0, 0, 2, 0,
13, 0, 1, 0, 54, 0,
28, 1, 0, 0, 0, 0,
0, 0, 51, 2, 0, 0,
2, 0, 4, 0, 4, 0,
18, 0, 56, 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,
108, 105, 103, 104, 116, 115,
0, 99, 111, 108, 111, 114,
0, 171, 171, 171, 1, 0,
3, 0, 1, 0, 4, 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, 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,
0, 0, 102, 111, 103, 68,
97, 116, 97, 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, 115, 1, 0, 0,
124, 1, 0, 0, 140, 1,
0, 0, 124, 1, 0, 0,
149, 1, 0, 0, 124, 1,
0, 0, 5, 0, 0, 0,
1, 0, 12, 0, 8, 0,
3, 0, 160, 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, 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, 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, 41, 0, 15, 160,
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,
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, 7, 128, 4, 0,
0, 0, 15, 128, 0, 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,
0, 4, 0, 0, 15, 128,
2, 0, 228, 160, 0, 0,
170, 144, 0, 0, 228, 128,
4, 0, 0, 4, 0, 0,
7, 128, 7, 0, 228, 160,
15, 128, 3, 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, 0, 15, 192, 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, 41, 0,
228, 160, 12, 0, 0, 3,
1, 0, 8, 128, 2, 0,
0, 128, 13, 0, 255, 160,
2, 0, 0, 3, 3, 0,
15, 128, 3, 0, 228, 144,
41, 0, 149, 160, 4, 0,
0, 4, 3, 0, 15, 128,
1, 0, 255, 128, 3, 0,
228, 128, 41, 0, 192, 160,
1, 0, 0, 2, 2, 0,
1, 128, 13, 0, 0, 160,
4, 0, 0, 4, 2, 0,
7, 128, 15, 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,
1, 0, 8, 128, 41, 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,
0, 0, 228, 240, 2, 0,
0, 3, 4, 0, 8, 128,
1, 0, 255, 128, 16, 0,
0, 160, 5, 0, 0, 3,
4, 0, 8, 128, 4, 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,
1, 176, 4, 0, 255, 128,
8, 0, 0, 4, 4, 0,
8, 128, 1, 0, 228, 128,
19, 32, 228, 161, 0, 0,
0, 176, 11, 0, 0, 3,
4, 0, 8, 128, 4, 0,
255, 128, 40, 0, 0, 160,
255, 128, 41, 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,
17, 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, 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,
1, 0, 255, 128, 41, 0,
255, 160, 39, 0, 0, 0,
1, 0, 0, 2, 2, 0,
7, 128, 4, 0, 228, 128,
1, 0, 0, 2, 1, 0,
8, 128, 41, 0, 0, 160,
38, 0, 0, 1, 1, 0,
228, 240, 2, 0, 0, 3,
4, 0, 8, 128, 1, 0,
255, 128, 16, 0, 85, 160,
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,
8, 128, 4, 0, 255, 128,
11, 0, 0, 160, 46, 0,
0, 2, 0, 0, 1, 176,
4, 0, 255, 128, 2, 0,
0, 4, 5, 0, 7, 128,
0, 0, 228, 128, 18, 32,
228, 161, 0, 0, 0, 176,
8, 0, 0, 3, 4, 0,
8, 128, 5, 0, 228, 128,
5, 0, 228, 128, 7, 0,
0, 2, 4, 0, 8, 128,
4, 0, 255, 128, 5, 0,
0, 3, 5, 0, 7, 128,
4, 0, 255, 128, 5, 0,
228, 128, 8, 0, 0, 3,
5, 0, 1, 128, 1, 0,
228, 128, 5, 0, 228, 129,
11, 0, 0, 3, 5, 0,
1, 128, 5, 0, 0, 128,
41, 0, 0, 160, 5, 0,
0, 4, 5, 0, 7, 128,
5, 0, 0, 128, 17, 32,
228, 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,
8, 128, 4, 0, 255, 128,
6, 0, 0, 3, 5, 0,
8, 128, 17, 32, 255, 160,
0, 0, 0, 176, 4, 0,
0, 4, 4, 0, 8, 128,
4, 0, 255, 128, 5, 0,
255, 129, 41, 0, 255, 160,
11, 0, 0, 3, 4, 0,
8, 128, 4, 0, 255, 128,
41, 0, 0, 160, 5, 0,
0, 3, 5, 0, 7, 128,
4, 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, 1, 0, 8, 128,
1, 0, 255, 128, 41, 0,
255, 160, 39, 0, 0, 0,
1, 0, 0, 2, 3, 0,
7, 128, 2, 0, 228, 128,
1, 0, 0, 2, 1, 0,
8, 128, 41, 0, 0, 160,
38, 0, 0, 1, 2, 0,
228, 240, 2, 0, 0, 3,
4, 0, 1, 128, 1, 0,
255, 128, 16, 0, 170, 160,
5, 0, 0, 3, 4, 0,
1, 128, 4, 0, 0, 128,
4, 0, 85, 128, 5, 0,
11, 0, 0, 160, 46, 0,
0, 2, 0, 0, 1, 176,
4, 0, 0, 128, 2, 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, 0, 228, 128, 18, 32,
228, 161, 0, 0, 0, 176,
8, 0, 0, 3, 4, 0,
8, 128, 4, 0, 228, 128,
4, 0, 228, 128, 7, 0,
0, 2, 4, 0, 8, 128,
4, 0, 255, 128, 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,
4, 0, 255, 128, 4, 0,
228, 128, 8, 0, 0, 3,
5, 0, 1, 128, 1, 0,
228, 128, 4, 0, 228, 129,
8, 0, 0, 4, 4, 0,
1, 128, 4, 0, 228, 128,
19, 32, 228, 160, 0, 0,
0, 176, 11, 0, 0, 3,
4, 0, 2, 128, 5, 0,
0, 128, 41, 0, 0, 160,
2, 0, 0, 4, 4, 0,
1, 128, 4, 0, 0, 128,
18, 32, 255, 160, 0, 0,
0, 176, 2, 0, 0, 4,
4, 0, 4, 128, 2, 0,
255, 128, 18, 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, 41, 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, 19, 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, 17, 32, 228, 160,
0, 0, 0, 176, 6, 0,
0, 2, 4, 0, 8, 128,
4, 0, 255, 128, 6, 0,
0, 3, 5, 0, 1, 128,
17, 32, 255, 160, 0, 0,
0, 176, 4, 0, 0, 4,
4, 0, 8, 128, 4, 0,
255, 128, 5, 0, 0, 129,
41, 0, 255, 160, 11, 0,
0, 3, 4, 0, 8, 128,
4, 0, 255, 128, 41, 0,
0, 160, 5, 0, 0, 3,
4, 0, 7, 128, 4, 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,
1, 0, 8, 128, 1, 0,
255, 128, 41, 0, 255, 160,
39, 0, 0, 0, 11, 0,
0, 3, 1, 0, 15, 128,
3, 0, 228, 128, 41, 0,
0, 160, 10, 0, 0, 3,
1, 0, 15, 128, 1, 0,
228, 128, 41, 0, 255, 160,
5, 0, 0, 3, 0, 0,
15, 208, 1, 0, 228, 128,
12, 0, 228, 160, 2, 0,
0, 3, 0, 0, 1, 128,
0, 0, 255, 128, 14, 0,
85, 161, 5, 0, 0, 3,
0, 0, 1, 128, 0, 0,
0, 128, 14, 0, 170, 160,
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
1, 128, 0, 0, 0, 128,
14, 0, 255, 160, 10, 0,
0, 3, 0, 0, 4, 224,
0, 0, 0, 128, 41, 0,
255, 160, 1, 0, 0, 2,
0, 0, 3, 224, 2, 0,
228, 144, 255, 255, 0, 0
};

View File

@ -2,13 +2,14 @@
//
// Generated by Microsoft (R) HLSL Shader Compiler 9.29.952.3111
//
// fxc /T vs_2_0 /Fh default_amb_VS.h defaultVS.hlsl
// fxc /T vs_2_0 /Fh default_amb_VS.h default_VS.hlsl
//
//
// Parameters:
//
// float4 ambientLight;
// float4x4 combinedMat;
// float4 fogData;
// float4 matCol;
// float4 surfProps;
//
@ -20,7 +21,8 @@
// combinedMat c0 4
// matCol c12 1
// surfProps c13 1
// ambientLight c14 1
// fogData c14 1
// ambientLight c15 1
//
vs_2_0
@ -28,92 +30,89 @@
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
mad r0.xyz, c15, r1.x, r0
max r0, r0, c4.x
min r0, r0, c4.w
mul oD0, r0, c12
mul r0, v0.y, c1
mad r0, c0, v0.x, r0
mad r0, c2, v0.z, r0
mad r0, c3, v0.w, r0
add r1.x, r0.w, -c14.y
mov oPos, r0
mul r0.x, r1.x, c14.z
max r0.x, r0.x, c14.w
min oT0.z, r0.x, c4.w
mov oT0.xy, v1
// approximately 14 instruction slots used
// approximately 19 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,
69, 0, 67, 84, 65, 66,
28, 0, 0, 0, 220, 0,
0, 0, 0, 2, 254, 255,
4, 0, 0, 0, 28, 0,
5, 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,
213, 0, 0, 0, 128, 0,
0, 0, 2, 0, 15, 0,
1, 0, 62, 0, 144, 0,
0, 0, 0, 0, 0, 0,
140, 0, 0, 0, 2, 0,
160, 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,
172, 0, 0, 0, 0, 0,
0, 0, 188, 0, 0, 0,
2, 0, 14, 0, 1, 0,
58, 0, 144, 0, 0, 0,
0, 0, 0, 0, 196, 0,
0, 0, 2, 0, 12, 0,
1, 0, 50, 0, 144, 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,
203, 0, 0, 0, 2, 0,
13, 0, 1, 0, 54, 0,
144, 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, 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, 102, 111, 103, 68,
97, 116, 97, 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, 1, 0, 0, 2,
0, 0, 1, 128, 4, 0,
0, 160, 12, 0, 0, 3,
0, 0, 1, 128, 0, 0,
@ -127,7 +126,7 @@ const BYTE g_vs20_main[] =
1, 0, 0, 2, 1, 0,
1, 128, 13, 0, 0, 160,
4, 0, 0, 4, 0, 0,
7, 128, 14, 0, 228, 160,
7, 128, 15, 0, 228, 160,
1, 0, 0, 128, 0, 0,
228, 128, 11, 0, 0, 3,
0, 0, 15, 128, 0, 0,
@ -137,7 +136,33 @@ const BYTE g_vs20_main[] =
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
228, 160, 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, 128,
3, 0, 228, 160, 0, 0,
255, 144, 0, 0, 228, 128,
2, 0, 0, 3, 1, 0,
1, 128, 0, 0, 255, 128,
14, 0, 85, 161, 1, 0,
0, 2, 0, 0, 15, 192,
0, 0, 228, 128, 5, 0,
0, 3, 0, 0, 1, 128,
1, 0, 0, 128, 14, 0,
170, 160, 11, 0, 0, 3,
0, 0, 1, 128, 0, 0,
0, 128, 14, 0, 255, 160,
10, 0, 0, 3, 0, 0,
4, 224, 0, 0, 0, 128,
4, 0, 255, 160, 1, 0,
0, 2, 0, 0, 3, 224,
1, 0, 228, 144, 255, 255,
0, 0
};

View File

@ -2,7 +2,7 @@
//
// 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
// fxc /T vs_2_0 /DDIRECTIONALS /Fh default_amb_dir_VS.h default_VS.hlsl
//
//
// Parameters:
@ -10,6 +10,7 @@
// float4 ambientLight;
// float4x4 combinedMat;
// int4 firstLight;
// float4 fogData;
//
// struct
// {
@ -34,9 +35,10 @@
// normalMat c8 3
// matCol c12 1
// surfProps c13 1
// ambientLight c14 1
// firstLight c15 1
// lights c16 24
// fogData c14 1
// ambientLight c15 1
// firstLight c16 1
// lights c17 24
//
vs_2_0
@ -49,216 +51,238 @@
mul r0, v0.y, c1
mad r0, c0, v0.x, r0
mad r0, c2, v0.z, r0
mad oPos, c3, v0.w, r0
mad r0, c3, v0.w, r0
mov oPos, 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
slt r1.x, r1.x, c13.w
add r2, v3, c5.yyyz
mad r1, r1.x, r2, c5.xxxw
mov r2.x, c13.x
mad r2.xyz, c14, r2.x, r1
mad r2.xyz, c15, r2.x, r1
mov r1.xyz, r2
mov r0.w, c5.x
mov r2.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]
add r3.x, r2.w, c16.x
mul r3.x, r3.x, c4.x
mova a0.x, r3.x
dp3 r3.x, r0, -c19[a0.x]
max r3.x, r3.x, c5.x
mul r3.xyz, r3.x, c17[a0.x]
mad r1.xyz, r3, c13.z, r1
add r0.w, r0.w, c5.w
add r2.w, r2.w, c5.w
endrep
max r0, r1, c5.x
min r0, r0, c5.w
mul oD0, r0, c12
max r1, r1, c5.x
min r1, r1, c5.w
mul oD0, r1, c12
add r0.x, r0.w, -c14.y
mul r0.x, r0.x, c14.z
max r0.x, r0.x, c14.w
min oT0.z, r0.x, c5.w
mov oT0.xy, v2
// approximately 32 instruction slots used
// approximately 37 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,
134, 0, 67, 84, 65, 66,
28, 0, 0, 0, 225, 1,
0, 0, 0, 2, 254, 255,
8, 0, 0, 0, 28, 0,
9, 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,
218, 1, 0, 0, 208, 0,
0, 0, 2, 0, 15, 0,
1, 0, 62, 0, 224, 0,
0, 0, 0, 0, 0, 0,
220, 0, 0, 0, 2, 0,
240, 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,
252, 0, 0, 0, 0, 0,
0, 0, 12, 1, 0, 0,
2, 0, 16, 0, 1, 0,
66, 0, 24, 1, 0, 0,
0, 0, 0, 0, 40, 1,
0, 0, 2, 0, 14, 0,
1, 0, 58, 0, 224, 0,
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,
48, 1, 0, 0, 2, 0,
17, 0, 24, 0, 70, 0,
124, 1, 0, 0, 0, 0,
0, 0, 140, 1, 0, 0,
2, 0, 12, 0, 1, 0,
50, 0, 224, 0, 0, 0,
0, 0, 0, 0, 147, 1,
0, 0, 2, 0, 8, 0,
3, 0, 34, 0, 160, 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,
176, 1, 0, 0, 1, 0,
0, 0, 1, 0, 2, 0,
192, 1, 0, 0, 0, 0,
0, 0, 208, 1, 0, 0,
2, 0, 13, 0, 1, 0,
54, 0, 224, 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,
108, 105, 103, 104, 116, 115,
0, 99, 111, 108, 111, 114,
0, 171, 171, 171, 1, 0,
3, 0, 1, 0, 4, 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, 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,
0, 0, 102, 111, 103, 68,
97, 116, 97, 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, 55, 1, 0, 0,
64, 1, 0, 0, 80, 1,
0, 0, 64, 1, 0, 0,
89, 1, 0, 0, 64, 1,
0, 0, 5, 0, 0, 0,
1, 0, 12, 0, 8, 0,
3, 0, 100, 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, 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, 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,
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, 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,
1, 0, 228, 128, 5, 0,
0, 160, 10, 0, 0, 3,
0, 0, 85, 144, 1, 0,
228, 160, 4, 0, 0, 4,
0, 0, 15, 128, 0, 0,
228, 128, 5, 0, 255, 160,
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, 128, 3, 0, 228, 160,
0, 0, 255, 144, 0, 0,
228, 128, 1, 0, 0, 2,
0, 0, 15, 192, 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, 1, 0, 1, 128,
1, 0, 0, 128, 13, 0,
255, 160, 2, 0, 0, 3,
2, 0, 15, 128, 3, 0,
228, 144, 5, 0, 149, 160,
4, 0, 0, 4, 1, 0,
15, 128, 1, 0, 0, 128,
2, 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, 15, 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, 2, 0, 8, 128,
5, 0, 0, 160, 38, 0,
0, 1, 0, 0, 228, 240,
2, 0, 0, 3, 3, 0,
1, 128, 2, 0, 255, 128,
16, 0, 0, 160, 5, 0,
0, 3, 3, 0, 1, 128,
3, 0, 0, 128, 4, 0,
0, 160, 46, 0, 0, 2,
0, 0, 1, 176, 3, 0,
0, 128, 8, 0, 0, 4,
3, 0, 1, 128, 0, 0,
228, 128, 19, 32, 228, 161,
0, 0, 0, 176, 11, 0,
0, 3, 3, 0, 1, 128,
3, 0, 0, 128, 5, 0,
0, 160, 5, 0, 0, 4,
3, 0, 7, 128, 3, 0,
0, 128, 17, 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, 2, 0,
8, 128, 2, 0, 255, 128,
5, 0, 255, 160, 39, 0,
0, 0, 11, 0, 0, 3,
1, 0, 15, 128, 1, 0,
228, 128, 5, 0, 0, 160,
10, 0, 0, 3, 1, 0,
15, 128, 1, 0, 228, 128,
5, 0, 255, 160, 5, 0,
0, 3, 0, 0, 15, 208,
1, 0, 228, 128, 12, 0,
228, 160, 2, 0, 0, 3,
0, 0, 1, 128, 0, 0,
255, 128, 14, 0, 85, 161,
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
1, 128, 0, 0, 0, 128,
14, 0, 170, 160, 11, 0,
0, 3, 0, 0, 1, 128,
0, 0, 0, 128, 14, 0,
255, 160, 10, 0, 0, 3,
0, 0, 4, 224, 0, 0,
0, 128, 5, 0, 255, 160,
1, 0, 0, 2, 0, 0,
3, 224, 2, 0, 228, 144,
255, 255, 0, 0
};

View File

@ -1,37 +0,0 @@
#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
};

View File

@ -1,10 +0,0 @@
struct VS_out {
float4 Position : POSITION;
float2 TexCoord0 : TEXCOORD0;
float4 Color : COLOR0;
};
float4 main(VS_out input) : COLOR
{
return input.Color;
}

View File

@ -1,71 +0,0 @@
#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
};

View File

@ -9,5 +9,9 @@ sampler2D tex0 : register(s0);
float4 main(VS_out input) : COLOR
{
return tex2D(tex0, input.TexCoord0.xy) * input.Color;
float4 color = input.Color;
#ifdef TEX
color *= tex2D(tex0, input.TexCoord0.xy);
#endif
return color;
}

View File

@ -3,5 +3,8 @@
"%DXSDK_DIR%\utilities\bin\x86\fxc.exe" /T vs_2_0 /DDIRECTIONALS /Fh default_amb_dir_VS.h default_VS.hlsl
"%DXSDK_DIR%\utilities\bin\x86\fxc.exe" /T vs_2_0 /DDIRECTIONALS /DPOINTLIGHTS /DSPOTLIGHTS /Fh default_all_VS.h default_VS.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
"%DXSDK_DIR%\utilities\bin\x86\fxc.exe" /T ps_2_0 /Fh default_PS.h default_PS.hlsl
"%DXSDK_DIR%\utilities\bin\x86\fxc.exe" /T ps_2_0 /DTEX /Fh default_tex_PS.h default_PS.hlsl
"%DXSDK_DIR%\utilities\bin\x86\fxc.exe" /T ps_2_0 /Fh im2d_PS.h im2d_PS.hlsl
"%DXSDK_DIR%\utilities\bin\x86\fxc.exe" /T ps_2_0 /DTEX /Fh im2d_tex_PS.h im2d_PS.hlsl

View File

@ -9,6 +9,7 @@
//
// float4 colorClamp;
// sampler2D envTex;
// float4 fogColor;
// float shininess;
//
//
@ -16,90 +17,107 @@
//
// Name Reg Size
// ------------ ----- ----
// shininess c0 1
// colorClamp c1 1
// fogColor c0 1
// shininess c1 1
// colorClamp c2 1
// envTex s1 1
//
ps_2_0
dcl t0.xyz
dcl t1.xy
dcl v0
dcl_2d s1
texld r0, t1, s1
max r1.xyz, v0, c1
mul r1.xyz, r1, c0.x
max r1.xyz, v0, c2
mul r1.xyz, r1, c1.x
mul r0.xyz, r0, r1
mad r0.xyz, v0, v0.w, r0
add r1.xyz, v0, -c0
mad r1.xyz, t0.z, r1, c0
mad r0.xyz, r1, v0.w, r0
mov r0.w, v0.w
mov oC0, r0
// approximately 7 instruction slots used (1 texture, 6 arithmetic)
// approximately 9 instruction slots used (1 texture, 8 arithmetic)
#endif
const BYTE g_ps20_main[] =
{
0, 2, 255, 255, 254, 255,
57, 0, 67, 84, 65, 66,
28, 0, 0, 0, 175, 0,
64, 0, 67, 84, 65, 66,
28, 0, 0, 0, 203, 0,
0, 0, 0, 2, 255, 255,
3, 0, 0, 0, 28, 0,
4, 0, 0, 0, 28, 0,
0, 0, 0, 1, 0, 0,
168, 0, 0, 0, 88, 0,
0, 0, 2, 0, 1, 0,
1, 0, 6, 0, 100, 0,
196, 0, 0, 0, 108, 0,
0, 0, 2, 0, 2, 0,
1, 0, 10, 0, 120, 0,
0, 0, 0, 0, 0, 0,
116, 0, 0, 0, 3, 0,
136, 0, 0, 0, 3, 0,
1, 0, 1, 0, 6, 0,
124, 0, 0, 0, 0, 0,
0, 0, 140, 0, 0, 0,
144, 0, 0, 0, 0, 0,
0, 0, 160, 0, 0, 0,
2, 0, 0, 0, 1, 0,
2, 0, 152, 0, 0, 0,
0, 0, 0, 0, 99, 111,
108, 111, 114, 67, 108, 97,
109, 112, 0, 171, 1, 0,
3, 0, 1, 0, 4, 0,
1, 0, 0, 0, 0, 0,
0, 0, 101, 110, 118, 84,
101, 120, 0, 171, 4, 0,
12, 0, 1, 0, 1, 0,
1, 0, 0, 0, 0, 0,
0, 0, 115, 104, 105, 110,
105, 110, 101, 115, 115, 0,
171, 171, 0, 0, 3, 0,
1, 0, 1, 0, 1, 0,
2, 0, 120, 0, 0, 0,
0, 0, 0, 0, 169, 0,
0, 0, 2, 0, 1, 0,
1, 0, 6, 0, 180, 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, 1, 0,
3, 176, 31, 0, 0, 2,
0, 0, 0, 128, 0, 0,
15, 144, 31, 0, 0, 2,
0, 0, 0, 144, 1, 8,
15, 160, 66, 0, 0, 3,
0, 0, 15, 128, 1, 0,
228, 176, 1, 8, 228, 160,
11, 0, 0, 3, 1, 0,
7, 128, 0, 0, 228, 144,
1, 0, 228, 160, 5, 0,
99, 111, 108, 111, 114, 67,
108, 97, 109, 112, 0, 171,
1, 0, 3, 0, 1, 0,
4, 0, 1, 0, 0, 0,
0, 0, 0, 0, 101, 110,
118, 84, 101, 120, 0, 171,
4, 0, 12, 0, 1, 0,
1, 0, 1, 0, 0, 0,
0, 0, 0, 0, 102, 111,
103, 67, 111, 108, 111, 114,
0, 115, 104, 105, 110, 105,
110, 101, 115, 115, 0, 171,
0, 0, 3, 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, 7, 176,
31, 0, 0, 2, 0, 0,
0, 128, 1, 0, 3, 176,
31, 0, 0, 2, 0, 0,
0, 128, 0, 0, 15, 144,
31, 0, 0, 2, 0, 0,
0, 144, 1, 8, 15, 160,
66, 0, 0, 3, 0, 0,
15, 128, 1, 0, 228, 176,
1, 8, 228, 160, 11, 0,
0, 3, 1, 0, 7, 128,
0, 0, 228, 144, 2, 0,
228, 160, 5, 0, 0, 3,
1, 0, 7, 128, 1, 0,
228, 128, 1, 0, 0, 160,
5, 0, 0, 3, 0, 0,
7, 128, 0, 0, 228, 128,
1, 0, 228, 128, 2, 0,
0, 3, 1, 0, 7, 128,
0, 0, 228, 144, 0, 0,
228, 161, 4, 0, 0, 4,
1, 0, 7, 128, 0, 0,
170, 176, 1, 0, 228, 128,
0, 0, 228, 160, 4, 0,
0, 4, 0, 0, 7, 128,
1, 0, 228, 128, 0, 0,
0, 160, 5, 0, 0, 3,
0, 0, 7, 128, 0, 0,
228, 128, 1, 0, 228, 128,
4, 0, 0, 4, 0, 0,
7, 128, 0, 0, 228, 144,
0, 0, 255, 144, 0, 0,
228, 128, 1, 0, 0, 2,
0, 0, 8, 128, 0, 0,
255, 144, 1, 0, 0, 2,
0, 8, 15, 128, 0, 0,
228, 128, 255, 255, 0, 0
255, 144, 0, 0, 228, 128,
1, 0, 0, 2, 0, 0,
8, 128, 0, 0, 255, 144,
1, 0, 0, 2, 0, 8,
15, 128, 0, 0, 228, 128,
255, 255, 0, 0
};

View File

@ -1,6 +1,6 @@
struct VS_out {
float4 Position : POSITION;
float2 TexCoord0 : TEXCOORD0;
float3 TexCoord0 : TEXCOORD0;
float2 TexCoord1 : TEXCOORD1;
float4 Color : COLOR0;
};
@ -8,8 +8,10 @@ struct VS_out {
sampler2D diffTex : register(s0);
sampler2D envTex : register(s1);
float shininess : register(c0);
float4 colorClamp : register(c1);
float4 fogColor : register(c0);
float shininess : register(c1);
float4 colorClamp : register(c2);
float4 main(VS_out input) : COLOR
{
@ -21,6 +23,8 @@ float4 main(VS_out input) : COLOR
float4 envColor = max(pass1, colorClamp);
float4 pass2 = envColor*shininess*tex2D(envTex, input.TexCoord1.xy);
pass1.rgb = lerp(fogColor.rgb, pass1.rgb, input.TexCoord0.z);
// We simulate drawing this in two passes.
// First pass with standard blending, second with addition
// We premultiply alpha so render state should be one.

View File

@ -1,28 +1,6 @@
float4x4 combinedMat : register(c0);
float4x4 worldMat : register(c4);
float3x3 normalMat : register(c8);
float4 matCol : register(c12);
float4 surfProps : register(c13);
float4 ambientLight : register(c14);
#include "standardConstants.h"
#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);
float4x4 texMat : register(c40);
#define firstDirLight (firstLight.x)
#define firstPointLight (firstLight.y)
#define firstSpotLight (firstLight.z)
float4x4 texMat : register(c41);
struct VS_in
{
@ -34,7 +12,7 @@ struct VS_in
struct VS_out {
float4 Position : POSITION;
float2 TexCoord0 : TEXCOORD0;
float3 TexCoord0 : TEXCOORD0; // also fog
float2 TexCoord1 : TEXCOORD1;
float4 Color : COLOR0;
};
@ -48,7 +26,7 @@ VS_out main(in VS_in input)
float3 Vertex = mul(worldMat, input.Position).xyz;
float3 Normal = mul(normalMat, input.Normal);
output.TexCoord0 = input.TexCoord;
output.TexCoord0.xy = input.TexCoord;
output.TexCoord1 = mul(texMat, float4(Normal, 1.0)).xy;
output.Color = float4(0.0, 0.0, 0.0, 1.0);
@ -74,5 +52,7 @@ VS_out main(in VS_in input)
output.Color = clamp(output.Color, 0.0, 1.0);
output.Color *= matCol;
output.TexCoord0.z = clamp((output.Position.w - fogEnd)*fogRange, fogDisable, 1.0);
return output;
}

View File

@ -11,6 +11,7 @@
// float4 ambientLight;
// float4x4 combinedMat;
// int4 firstLight;
// float4 fogData;
//
// struct
// {
@ -42,15 +43,16 @@
// normalMat c8 3
// matCol c12 1
// surfProps c13 1
// ambientLight c14 1
// firstLight c15 1
// lights c16 24
// texMat c40 4
// fogData c14 1
// ambientLight c15 1
// firstLight c16 1
// lights c17 24
// texMat c41 4
//
vs_2_0
def c11, 3, 0, 0, 0
def c44, 0, -0, -1, 1
def c45, 0, -0, -1, 1
dcl_position v0
dcl_normal v1
dcl_texcoord v2
@ -58,7 +60,8 @@
mul r0, v0.y, c1
mad r0, c0, v0.x, r0
mad r0, c2, v0.z, r0
mad oPos, c3, v0.w, r0
mad r0, c3, v0.w, r0
mov oPos, r0
mul r0.xyz, v0.y, c5
mad r0.xyz, c4, v0.x, r0
mad r0.xyz, c6, v0.z, r0
@ -66,443 +69,464 @@
mul r1.xyz, v1.y, c9
mad r1.xyz, c8, v1.x, r1
mad r1.xyz, c10, v1.z, r1
mov r2.xw, c44
slt r0.w, r2.x, c13.w
add r3, v3, c44.yyyz
mad r3, r0.w, r3, c44.xxxw
mov r2.xw, c45
slt r1.w, r2.x, c13.w
add r3, v3, c45.yyyz
mad r3, r1.w, r3, c45.xxxw
mov r2.x, c13.x
mad r2.xyz, c14, r2.x, r3
mad r2.xyz, c15, r2.x, r3
mov r4.xyz, r2
mov r0.w, c44.x
mov r1.w, c45.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, c44.x
mul r5.xyz, r1.w, c16[a0.x]
add r4.w, r1.w, c16.x
mul r4.w, r4.w, c11.x
mova a0.x, r4.w
dp3 r4.w, r1, -c19[a0.x]
max r4.w, r4.w, c45.x
mul r5.xyz, r4.w, c17[a0.x]
mad r4.xyz, r5, c13.z, r4
add r0.w, r0.w, c44.w
add r1.w, r1.w, c45.w
endrep
mov r2.xyz, r4
mov r0.w, c44.x
mov r1.w, c45.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, c44.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, c44.w
max r1.w, r1.w, c44.x
mul r5.xyz, r1.w, r5
add r4.w, r1.w, c16.y
mul r4.w, r4.w, c11.x
mova a0.x, r4.w
add r5.xyz, r0, -c18[a0.x]
dp3 r4.w, r5, r5
rsq r4.w, r4.w
mul r5.xyz, r4.w, r5
dp3 r5.x, r1, -r5
max r5.x, r5.x, c45.x
mul r5.xyz, r5.x, c17[a0.x]
rcp r4.w, r4.w
rcp r5.w, c17[a0.x].w
mad r4.w, r4.w, -r5.w, c45.w
max r4.w, r4.w, c45.x
mul r5.xyz, r4.w, r5
mad r2.xyz, r5, c13.z, r2
add r0.w, r0.w, c44.w
add r1.w, r1.w, c45.w
endrep
mov r3.xyz, r2
mov r0.w, c44.x
mov r1.w, c45.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, c44.x
add r4.x, r4.x, c17[a0.x].w
add r4.z, r2.w, c17[a0.x].w
add r4.x, r1.w, c16.z
mul r4.x, r4.x, c11.x
mova a0.x, r4.x
add r4.xyz, r0, -c18[a0.x]
dp3 r4.w, r4, r4
rsq r4.w, r4.w
mul r4.xyz, r4.w, r4
dp3 r5.x, r1, -r4
dp3 r4.x, r4, c19[a0.x]
max r4.y, r5.x, c45.x
add r4.x, r4.x, c18[a0.x].w
add r4.z, r2.w, c18[a0.x].w
rcp r4.z, r4.z
mul r4.x, r4.z, r4.x
slt r4.z, r4.x, c44.x
slt r4.z, r4.x, c45.x
mad r4.y, r4.z, -r4.y, r4.y
max r4.x, r4.x, c18[a0.x].w
max r4.x, r4.x, c19[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, c44.w
max r1.w, r1.w, c44.x
mul r4.xyz, r1.w, r4
mul r4.xyz, r4.x, c17[a0.x]
rcp r4.w, r4.w
rcp r5.x, c17[a0.x].w
mad r4.w, r4.w, -r5.x, c45.w
max r4.w, r4.w, c45.x
mul r4.xyz, r4.w, r4
mad r3.xyz, r4, c13.z, r3
add r0.w, r0.w, c44.w
add r1.w, r1.w, c45.w
endrep
max r0, r3, c44.x
min r0, r0, c44.w
mul oD0, r0, c12
mul r0.xy, r1.y, c41
mad r0.xy, c40, r1.x, r0
mad r0.xy, c42, r1.z, r0
add oT1.xy, r0, c43
max r2, r3, c45.x
min r2, r2, c45.w
mul oD0, r2, c12
mul r0.xy, r1.y, c42
mad r0.xy, c41, r1.x, r0
mad r0.xy, c43, r1.z, r0
add oT1.xy, r0, c44
add r0.x, r0.w, -c14.y
mul r0.x, r0.x, c14.z
max r0.x, r0.x, c14.w
min oT0.z, r0.x, c45.w
mov oT0.xy, v2
// approximately 97 instruction slots used
// approximately 102 instruction slots used
#endif
const BYTE g_vs20_main[] =
{
0, 2, 254, 255, 254, 255,
158, 0, 67, 84, 65, 66,
28, 0, 0, 0, 66, 2,
165, 0, 67, 84, 65, 66,
28, 0, 0, 0, 94, 2,
0, 0, 0, 2, 254, 255,
12, 0, 0, 0, 28, 0,
13, 0, 0, 0, 28, 0,
0, 0, 0, 1, 0, 0,
59, 2, 0, 0, 12, 1,
0, 0, 2, 0, 14, 0,
1, 0, 58, 0, 28, 1,
87, 2, 0, 0, 32, 1,
0, 0, 2, 0, 15, 0,
1, 0, 62, 0, 48, 1,
0, 0, 0, 0, 0, 0,
44, 1, 0, 0, 2, 0,
64, 1, 0, 0, 2, 0,
0, 0, 4, 0, 2, 0,
56, 1, 0, 0, 0, 0,
0, 0, 72, 1, 0, 0,
2, 0, 15, 0, 1, 0,
62, 0, 84, 1, 0, 0,
0, 0, 0, 0, 100, 1,
0, 0, 2, 0, 16, 0,
24, 0, 66, 0, 176, 1,
76, 1, 0, 0, 0, 0,
0, 0, 92, 1, 0, 0,
2, 0, 16, 0, 1, 0,
66, 0, 104, 1, 0, 0,
0, 0, 0, 0, 120, 1,
0, 0, 2, 0, 14, 0,
1, 0, 58, 0, 48, 1,
0, 0, 0, 0, 0, 0,
192, 1, 0, 0, 2, 0,
12, 0, 1, 0, 50, 0,
28, 1, 0, 0, 0, 0,
0, 0, 199, 1, 0, 0,
2, 0, 8, 0, 3, 0,
34, 0, 212, 1, 0, 0,
0, 0, 0, 0, 228, 1,
0, 0, 1, 0, 0, 0,
1, 0, 2, 0, 244, 1,
128, 1, 0, 0, 2, 0,
17, 0, 24, 0, 70, 0,
204, 1, 0, 0, 0, 0,
0, 0, 220, 1, 0, 0,
2, 0, 12, 0, 1, 0,
50, 0, 48, 1, 0, 0,
0, 0, 0, 0, 227, 1,
0, 0, 2, 0, 8, 0,
3, 0, 34, 0, 240, 1,
0, 0, 0, 0, 0, 0,
4, 2, 0, 0, 1, 0,
1, 0, 1, 0, 6, 0,
244, 1, 0, 0, 0, 0,
0, 0, 19, 2, 0, 0,
1, 0, 2, 0, 1, 0,
10, 0, 244, 1, 0, 0,
0, 0, 0, 0, 33, 2,
0, 0, 2, 0, 13, 0,
1, 0, 54, 0, 28, 1,
0, 0, 0, 0, 0, 0,
43, 2, 0, 0, 2, 0,
40, 0, 4, 0, 162, 0,
56, 1, 0, 0, 0, 0,
0, 0, 50, 2, 0, 0,
2, 0, 4, 0, 4, 0,
18, 0, 56, 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,
107, 1, 0, 0, 116, 1,
0, 0, 132, 1, 0, 0,
116, 1, 0, 0, 141, 1,
0, 0, 116, 1, 0, 0,
5, 0, 0, 0, 1, 0,
12, 0, 8, 0, 3, 0,
152, 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,
0, 2, 0, 0, 1, 0,
0, 0, 1, 0, 2, 0,
16, 2, 0, 0, 0, 0,
0, 0, 32, 2, 0, 0,
1, 0, 1, 0, 1, 0,
6, 0, 16, 2, 0, 0,
0, 0, 0, 0, 47, 2,
0, 0, 1, 0, 2, 0,
1, 0, 10, 0, 16, 2,
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, 116, 101, 120,
77, 97, 116, 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, 171, 81, 0,
0, 5, 11, 0, 15, 160,
0, 0, 64, 64, 0, 0,
61, 2, 0, 0, 2, 0,
13, 0, 1, 0, 54, 0,
48, 1, 0, 0, 0, 0,
0, 0, 71, 2, 0, 0,
2, 0, 41, 0, 4, 0,
166, 0, 76, 1, 0, 0,
0, 0, 0, 0, 78, 2,
0, 0, 2, 0, 4, 0,
4, 0, 18, 0, 76, 1,
0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 81, 0,
0, 5, 44, 0, 15, 160,
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,
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,
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, 102, 111,
103, 68, 97, 116, 97, 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, 135, 1,
0, 0, 144, 1, 0, 0,
160, 1, 0, 0, 144, 1,
0, 0, 169, 1, 0, 0,
144, 1, 0, 0, 5, 0,
0, 0, 1, 0, 12, 0,
8, 0, 3, 0, 180, 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, 116, 101, 120, 77, 97,
116, 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, 171, 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,
45, 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,
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,
85, 144, 1, 0, 228, 160,
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,
15, 128, 0, 0, 228, 160,
0, 0, 0, 144, 0, 0,
228, 128, 4, 0, 0, 4,
0, 0, 7, 128, 6, 0,
0, 0, 15, 128, 2, 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,
0, 4, 0, 0, 15, 128,
3, 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, 44, 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,
44, 0, 149, 160, 4, 0,
0, 4, 3, 0, 15, 128,
0, 0, 255, 128, 3, 0,
228, 128, 44, 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, 44, 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, 44, 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, 44, 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, 44, 0, 0, 160,
38, 0, 0, 1, 1, 0,
15, 192, 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, 45, 0, 228, 160,
12, 0, 0, 3, 1, 0,
8, 128, 2, 0, 0, 128,
13, 0, 255, 160, 2, 0,
0, 3, 3, 0, 15, 128,
3, 0, 228, 144, 45, 0,
149, 160, 4, 0, 0, 4,
3, 0, 15, 128, 1, 0,
255, 128, 3, 0, 228, 128,
45, 0, 192, 160, 1, 0,
0, 2, 2, 0, 1, 128,
13, 0, 0, 160, 4, 0,
0, 4, 2, 0, 7, 128,
15, 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, 1, 0,
8, 128, 45, 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, 85, 160,
5, 0, 0, 3, 1, 0,
8, 128, 1, 0, 255, 128,
4, 0, 8, 128, 1, 0,
255, 128, 16, 0, 0, 160,
5, 0, 0, 3, 4, 0,
8, 128, 4, 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,
4, 0, 255, 128, 8, 0,
0, 4, 4, 0, 8, 128,
1, 0, 228, 128, 19, 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,
44, 0, 0, 160, 5, 0,
45, 0, 0, 160, 5, 0,
0, 4, 5, 0, 7, 128,
4, 0, 255, 128, 16, 32,
4, 0, 255, 128, 17, 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, 44, 0, 255, 160,
11, 0, 0, 3, 1, 0,
8, 128, 1, 0, 255, 128,
44, 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, 44, 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, 44, 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, 44, 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, 44, 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,
44, 0, 255, 160, 11, 0,
0, 3, 1, 0, 8, 128,
1, 0, 255, 128, 44, 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,
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, 44, 0, 255, 160,
39, 0, 0, 0, 11, 0,
0, 3, 0, 0, 15, 128,
3, 0, 228, 128, 44, 0,
0, 160, 10, 0, 0, 3,
0, 0, 15, 128, 0, 0,
228, 128, 44, 0, 255, 160,
5, 0, 0, 3, 0, 0,
15, 208, 0, 0, 228, 128,
12, 0, 228, 160, 5, 0,
0, 3, 0, 0, 3, 128,
1, 0, 85, 128, 41, 0,
228, 160, 4, 0, 0, 4,
0, 0, 3, 128, 40, 0,
228, 160, 1, 0, 0, 128,
0, 0, 228, 128, 4, 0,
0, 4, 0, 0, 3, 128,
42, 0, 228, 160, 1, 0,
170, 128, 0, 0, 228, 128,
1, 0, 8, 128, 1, 0,
255, 128, 45, 0, 255, 160,
39, 0, 0, 0, 1, 0,
0, 2, 2, 0, 7, 128,
4, 0, 228, 128, 1, 0,
0, 2, 1, 0, 8, 128,
45, 0, 0, 160, 38, 0,
0, 1, 1, 0, 228, 240,
2, 0, 0, 3, 4, 0,
8, 128, 1, 0, 255, 128,
16, 0, 85, 160, 5, 0,
0, 3, 4, 0, 8, 128,
4, 0, 255, 128, 11, 0,
0, 160, 46, 0, 0, 2,
0, 0, 1, 176, 4, 0,
255, 128, 2, 0, 0, 4,
5, 0, 7, 128, 0, 0,
228, 128, 18, 32, 228, 161,
0, 0, 0, 176, 8, 0,
0, 3, 4, 0, 8, 128,
5, 0, 228, 128, 5, 0,
228, 128, 7, 0, 0, 2,
4, 0, 8, 128, 4, 0,
255, 128, 5, 0, 0, 3,
5, 0, 7, 128, 4, 0,
255, 128, 5, 0, 228, 128,
8, 0, 0, 3, 5, 0,
1, 128, 1, 0, 228, 128,
5, 0, 228, 129, 11, 0,
0, 3, 5, 0, 1, 128,
5, 0, 0, 128, 45, 0,
0, 160, 5, 0, 0, 4,
5, 0, 7, 128, 5, 0,
0, 128, 17, 32, 228, 160,
0, 0, 0, 176, 6, 0,
0, 2, 4, 0, 8, 128,
4, 0, 255, 128, 6, 0,
0, 3, 5, 0, 8, 128,
17, 32, 255, 160, 0, 0,
0, 176, 4, 0, 0, 4,
4, 0, 8, 128, 4, 0,
255, 128, 5, 0, 255, 129,
45, 0, 255, 160, 11, 0,
0, 3, 4, 0, 8, 128,
4, 0, 255, 128, 45, 0,
0, 160, 5, 0, 0, 3,
5, 0, 7, 128, 4, 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,
1, 0, 8, 128, 1, 0,
255, 128, 45, 0, 255, 160,
39, 0, 0, 0, 1, 0,
0, 2, 3, 0, 7, 128,
2, 0, 228, 128, 1, 0,
0, 2, 1, 0, 8, 128,
45, 0, 0, 160, 38, 0,
0, 1, 2, 0, 228, 240,
2, 0, 0, 3, 4, 0,
1, 128, 1, 0, 255, 128,
16, 0, 170, 160, 5, 0,
0, 3, 4, 0, 1, 128,
4, 0, 0, 128, 11, 0,
0, 160, 46, 0, 0, 2,
0, 0, 1, 176, 4, 0,
0, 128, 2, 0, 0, 4,
4, 0, 7, 128, 0, 0,
228, 128, 18, 32, 228, 161,
0, 0, 0, 176, 8, 0,
0, 3, 4, 0, 8, 128,
4, 0, 228, 128, 4, 0,
228, 128, 7, 0, 0, 2,
4, 0, 8, 128, 4, 0,
255, 128, 5, 0, 0, 3,
4, 0, 7, 128, 4, 0,
255, 128, 4, 0, 228, 128,
8, 0, 0, 3, 5, 0,
1, 128, 1, 0, 228, 128,
4, 0, 228, 129, 8, 0,
0, 4, 4, 0, 1, 128,
4, 0, 228, 128, 19, 32,
228, 160, 0, 0, 0, 176,
11, 0, 0, 3, 4, 0,
2, 128, 5, 0, 0, 128,
45, 0, 0, 160, 2, 0,
0, 4, 4, 0, 1, 128,
4, 0, 0, 128, 18, 32,
255, 160, 0, 0, 0, 176,
2, 0, 0, 4, 4, 0,
4, 128, 2, 0, 255, 128,
18, 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,
45, 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,
19, 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,
17, 32, 228, 160, 0, 0,
0, 176, 6, 0, 0, 2,
4, 0, 8, 128, 4, 0,
255, 128, 6, 0, 0, 3,
5, 0, 1, 128, 17, 32,
255, 160, 0, 0, 0, 176,
4, 0, 0, 4, 4, 0,
8, 128, 4, 0, 255, 128,
5, 0, 0, 129, 45, 0,
255, 160, 11, 0, 0, 3,
4, 0, 8, 128, 4, 0,
255, 128, 45, 0, 0, 160,
5, 0, 0, 3, 4, 0,
7, 128, 4, 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, 1, 0,
3, 224, 0, 0, 228, 128,
43, 0, 228, 160, 1, 0,
0, 2, 0, 0, 3, 224,
2, 0, 228, 144, 255, 255,
0, 0
8, 128, 1, 0, 255, 128,
45, 0, 255, 160, 39, 0,
0, 0, 11, 0, 0, 3,
2, 0, 15, 128, 3, 0,
228, 128, 45, 0, 0, 160,
10, 0, 0, 3, 2, 0,
15, 128, 2, 0, 228, 128,
45, 0, 255, 160, 5, 0,
0, 3, 0, 0, 15, 208,
2, 0, 228, 128, 12, 0,
228, 160, 5, 0, 0, 3,
0, 0, 3, 128, 1, 0,
85, 128, 42, 0, 228, 160,
4, 0, 0, 4, 0, 0,
3, 128, 41, 0, 228, 160,
1, 0, 0, 128, 0, 0,
228, 128, 4, 0, 0, 4,
0, 0, 3, 128, 43, 0,
228, 160, 1, 0, 170, 128,
0, 0, 228, 128, 2, 0,
0, 3, 1, 0, 3, 224,
0, 0, 228, 128, 44, 0,
228, 160, 2, 0, 0, 3,
0, 0, 1, 128, 0, 0,
255, 128, 14, 0, 85, 161,
5, 0, 0, 3, 0, 0,
1, 128, 0, 0, 0, 128,
14, 0, 170, 160, 11, 0,
0, 3, 0, 0, 1, 128,
0, 0, 0, 128, 14, 0,
255, 160, 10, 0, 0, 3,
0, 0, 4, 224, 0, 0,
0, 128, 45, 0, 255, 160,
1, 0, 0, 2, 0, 0,
3, 224, 2, 0, 228, 144,
255, 255, 0, 0
};

View File

@ -9,6 +9,7 @@
//
// float4 ambientLight;
// float4x4 combinedMat;
// float4 fogData;
// float4 matCol;
// float3x3 normalMat;
// float4 surfProps;
@ -23,8 +24,9 @@
// normalMat c8 3
// matCol c12 1
// surfProps c13 1
// ambientLight c14 1
// texMat c40 4
// fogData c14 1
// ambientLight c15 1
// texMat c41 4
//
vs_2_0
@ -33,113 +35,110 @@
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
mul r0.yw, r0.y, c41.xxzy
mad r0.xy, c40, r0.x, r0.ywzw
mad r0.xy, c42, r0.z, r0
add oT1.xy, r0, c43
mul r0.yw, r0.y, c42.xxzy
mad r0.xy, c41, r0.x, r0.ywzw
mad r0.xy, c43, r0.z, r0
add oT1.xy, r0, c44
mov r0.x, c4.x
slt r0.x, r0.x, c13.w
add r1, v3, c4.yyyz
mad r0, r0.x, r1, c4.xxxw
mov r1.x, c13.x
mad r0.xyz, c14, r1.x, r0
mad r0.xyz, c15, r1.x, r0
max r0, r0, c4.x
min r0, r0, c4.w
mul oD0, r0, c12
mul r0, v0.y, c1
mad r0, c0, v0.x, r0
mad r0, c2, v0.z, r0
mad r0, c3, v0.w, r0
add r1.x, r0.w, -c14.y
mov oPos, r0
mul r0.x, r1.x, c14.z
max r0.x, r0.x, c14.w
min oT0.z, r0.x, c4.w
mov oT0.xy, v2
// approximately 21 instruction slots used
// approximately 26 instruction slots used
#endif
const BYTE g_vs20_main[] =
{
0, 2, 254, 255, 254, 255,
81, 0, 67, 84, 65, 66,
28, 0, 0, 0, 12, 1,
88, 0, 67, 84, 65, 66,
28, 0, 0, 0, 40, 1,
0, 0, 0, 2, 254, 255,
6, 0, 0, 0, 28, 0,
7, 0, 0, 0, 28, 0,
0, 0, 0, 1, 0, 0,
5, 1, 0, 0, 148, 0,
0, 0, 2, 0, 14, 0,
1, 0, 58, 0, 164, 0,
33, 1, 0, 0, 168, 0,
0, 0, 2, 0, 15, 0,
1, 0, 62, 0, 184, 0,
0, 0, 0, 0, 0, 0,
180, 0, 0, 0, 2, 0,
200, 0, 0, 0, 2, 0,
0, 0, 4, 0, 2, 0,
192, 0, 0, 0, 0, 0,
0, 0, 208, 0, 0, 0,
2, 0, 12, 0, 1, 0,
50, 0, 164, 0, 0, 0,
0, 0, 0, 0, 215, 0,
0, 0, 2, 0, 8, 0,
3, 0, 34, 0, 228, 0,
212, 0, 0, 0, 0, 0,
0, 0, 228, 0, 0, 0,
2, 0, 14, 0, 1, 0,
58, 0, 184, 0, 0, 0,
0, 0, 0, 0, 236, 0,
0, 0, 2, 0, 12, 0,
1, 0, 50, 0, 184, 0,
0, 0, 0, 0, 0, 0,
244, 0, 0, 0, 2, 0,
13, 0, 1, 0, 54, 0,
164, 0, 0, 0, 0, 0,
0, 0, 254, 0, 0, 0,
2, 0, 40, 0, 4, 0,
162, 0, 192, 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,
243, 0, 0, 0, 2, 0,
8, 0, 3, 0, 34, 0,
0, 1, 0, 0, 0, 0,
0, 0, 16, 1, 0, 0,
2, 0, 13, 0, 1, 0,
54, 0, 184, 0, 0, 0,
0, 0, 0, 0, 26, 1,
0, 0, 2, 0, 41, 0,
4, 0, 166, 0, 212, 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, 110,
111, 114, 109, 97, 108, 77,
97, 116, 0, 171, 171, 171,
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, 111, 103, 68, 97, 116,
97, 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,
3, 0, 1, 0, 0, 0,
0, 0, 0, 0, 115, 117,
114, 102, 80, 114, 111, 112,
115, 0, 116, 101, 120, 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, 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,
1, 0, 0, 0, 0, 0,
0, 0, 115, 117, 114, 102,
80, 114, 111, 112, 115, 0,
116, 101, 120, 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, 171, 171, 171,
81, 0, 0, 5, 4, 0,
15, 160, 0, 0, 0, 0,
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,
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,
7, 128, 1, 0, 85, 144,
9, 0, 228, 160, 4, 0,
@ -151,16 +150,16 @@ const BYTE g_vs20_main[] =
1, 0, 170, 144, 0, 0,
228, 128, 5, 0, 0, 3,
0, 0, 10, 128, 0, 0,
85, 128, 41, 0, 96, 160,
85, 128, 42, 0, 96, 160,
4, 0, 0, 4, 0, 0,
3, 128, 40, 0, 228, 160,
3, 128, 41, 0, 228, 160,
0, 0, 0, 128, 0, 0,
237, 128, 4, 0, 0, 4,
0, 0, 3, 128, 42, 0,
0, 0, 3, 128, 43, 0,
228, 160, 0, 0, 170, 128,
0, 0, 228, 128, 2, 0,
0, 3, 1, 0, 3, 224,
0, 0, 228, 128, 43, 0,
0, 0, 228, 128, 44, 0,
228, 160, 1, 0, 0, 2,
0, 0, 1, 128, 4, 0,
0, 160, 12, 0, 0, 3,
@ -175,7 +174,7 @@ const BYTE g_vs20_main[] =
1, 0, 0, 2, 1, 0,
1, 128, 13, 0, 0, 160,
4, 0, 0, 4, 0, 0,
7, 128, 14, 0, 228, 160,
7, 128, 15, 0, 228, 160,
1, 0, 0, 128, 0, 0,
228, 128, 11, 0, 0, 3,
0, 0, 15, 128, 0, 0,
@ -185,7 +184,33 @@ const BYTE g_vs20_main[] =
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, 2, 0,
228, 144, 255, 255, 0, 0
228, 160, 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, 128,
3, 0, 228, 160, 0, 0,
255, 144, 0, 0, 228, 128,
2, 0, 0, 3, 1, 0,
1, 128, 0, 0, 255, 128,
14, 0, 85, 161, 1, 0,
0, 2, 0, 0, 15, 192,
0, 0, 228, 128, 5, 0,
0, 3, 0, 0, 1, 128,
1, 0, 0, 128, 14, 0,
170, 160, 11, 0, 0, 3,
0, 0, 1, 128, 0, 0,
0, 128, 14, 0, 255, 160,
10, 0, 0, 3, 0, 0,
4, 224, 0, 0, 0, 128,
4, 0, 255, 160, 1, 0,
0, 2, 0, 0, 3, 224,
2, 0, 228, 144, 255, 255,
0, 0
};

View File

@ -10,6 +10,7 @@
// float4 ambientLight;
// float4x4 combinedMat;
// int4 firstLight;
// float4 fogData;
//
// struct
// {
@ -35,10 +36,11 @@
// normalMat c8 3
// matCol c12 1
// surfProps c13 1
// ambientLight c14 1
// firstLight c15 1
// lights c16 24
// texMat c40 4
// fogData c14 1
// ambientLight c15 1
// firstLight c16 1
// lights c17 24
// texMat c41 4
//
vs_2_0
@ -51,236 +53,259 @@
mul r0, v0.y, c1
mad r0, c0, v0.x, r0
mad r0, c2, v0.z, r0
mad oPos, c3, v0.w, r0
mad r0, c3, v0.w, r0
mov oPos, 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
slt r1.x, r1.x, c13.w
add r2, v3, c5.yyyz
mad r1, r1.x, r2, c5.xxxw
mov r2.x, c13.x
mad r2.xyz, c14, r2.x, r1
mad r2.xyz, c15, r2.x, r1
mov r1.xyz, r2
mov r0.w, c5.x
mov r2.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]
add r3.x, r2.w, c16.x
mul r3.x, r3.x, c4.x
mova a0.x, r3.x
dp3 r3.x, r0, -c19[a0.x]
max r3.x, r3.x, c5.x
mul r3.xyz, r3.x, c17[a0.x]
mad r1.xyz, r3, c13.z, r1
add r0.w, r0.w, c5.w
add r2.w, r2.w, c5.w
endrep
max r1, r1, c5.x
min r1, r1, c5.w
mul oD0, r1, c12
mul r0.yw, r0.y, c41.xxzy
mad r0.xy, c40, r0.x, r0.ywzw
mad r0.xy, c42, r0.z, r0
add oT1.xy, r0, c43
mul r1.xy, r0.y, c42
mad r0.xy, c41, r0.x, r1
mad r0.xy, c43, r0.z, r0
add oT1.xy, r0, c44
add r0.x, r0.w, -c14.y
mul r0.x, r0.x, c14.z
max r0.x, r0.x, c14.w
min oT0.z, r0.x, c5.w
mov oT0.xy, v2
// approximately 36 instruction slots used
// approximately 41 instruction slots used
#endif
const BYTE g_vs20_main[] =
{
0, 2, 254, 255, 254, 255,
134, 0, 67, 84, 65, 66,
28, 0, 0, 0, 224, 1,
141, 0, 67, 84, 65, 66,
28, 0, 0, 0, 252, 1,
0, 0, 0, 2, 254, 255,
9, 0, 0, 0, 28, 0,
10, 0, 0, 0, 28, 0,
0, 0, 0, 1, 0, 0,
217, 1, 0, 0, 208, 0,
0, 0, 2, 0, 14, 0,
1, 0, 58, 0, 224, 0,
245, 1, 0, 0, 228, 0,
0, 0, 2, 0, 15, 0,
1, 0, 62, 0, 244, 0,
0, 0, 0, 0, 0, 0,
240, 0, 0, 0, 2, 0,
4, 1, 0, 0, 2, 0,
0, 0, 4, 0, 2, 0,
252, 0, 0, 0, 0, 0,
0, 0, 12, 1, 0, 0,
2, 0, 15, 0, 1, 0,
62, 0, 24, 1, 0, 0,
0, 0, 0, 0, 40, 1,
0, 0, 2, 0, 16, 0,
24, 0, 66, 0, 116, 1,
16, 1, 0, 0, 0, 0,
0, 0, 32, 1, 0, 0,
2, 0, 16, 0, 1, 0,
66, 0, 44, 1, 0, 0,
0, 0, 0, 0, 60, 1,
0, 0, 2, 0, 14, 0,
1, 0, 58, 0, 244, 0,
0, 0, 0, 0, 0, 0,
132, 1, 0, 0, 2, 0,
12, 0, 1, 0, 50, 0,
224, 0, 0, 0, 0, 0,
0, 0, 139, 1, 0, 0,
2, 0, 8, 0, 3, 0,
34, 0, 152, 1, 0, 0,
0, 0, 0, 0, 168, 1,
0, 0, 1, 0, 0, 0,
1, 0, 2, 0, 184, 1,
68, 1, 0, 0, 2, 0,
17, 0, 24, 0, 70, 0,
144, 1, 0, 0, 0, 0,
0, 0, 160, 1, 0, 0,
2, 0, 12, 0, 1, 0,
50, 0, 244, 0, 0, 0,
0, 0, 0, 0, 167, 1,
0, 0, 2, 0, 8, 0,
3, 0, 34, 0, 180, 1,
0, 0, 0, 0, 0, 0,
200, 1, 0, 0, 2, 0,
13, 0, 1, 0, 54, 0,
224, 0, 0, 0, 0, 0,
0, 0, 210, 1, 0, 0,
2, 0, 40, 0, 4, 0,
162, 0, 252, 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,
196, 1, 0, 0, 1, 0,
0, 0, 1, 0, 2, 0,
212, 1, 0, 0, 0, 0,
0, 0, 228, 1, 0, 0,
2, 0, 13, 0, 1, 0,
54, 0, 244, 0, 0, 0,
0, 0, 0, 0, 238, 1,
0, 0, 2, 0, 41, 0,
4, 0, 166, 0, 16, 1,
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,
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, 108, 105, 103, 104,
116, 115, 0, 99, 111, 108,
111, 114, 0, 171, 171, 171,
1, 0, 3, 0, 1, 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, 112, 111,
115, 105, 116, 105, 111, 110,
0, 100, 105, 114, 101, 99,
116, 105, 111, 110, 0, 171,
47, 1, 0, 0, 56, 1,
0, 0, 72, 1, 0, 0,
56, 1, 0, 0, 81, 1,
0, 0, 56, 1, 0, 0,
5, 0, 0, 0, 1, 0,
12, 0, 8, 0, 3, 0,
92, 1, 0, 0, 109, 97,
116, 67, 111, 108, 0, 110,
111, 114, 109, 97, 108, 77,
97, 116, 0, 171, 171, 171,
0, 0, 0, 0, 102, 111,
103, 68, 97, 116, 97, 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, 75, 1,
0, 0, 84, 1, 0, 0,
100, 1, 0, 0, 84, 1,
0, 0, 109, 1, 0, 0,
84, 1, 0, 0, 5, 0,
0, 0, 1, 0, 12, 0,
8, 0, 3, 0, 120, 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,
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,
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, 116, 101, 120, 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, 171,
171, 171, 81, 0, 0, 5,
4, 0, 15, 160, 0, 0,
64, 64, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
115, 117, 114, 102, 80, 114,
111, 112, 115, 0, 116, 101,
120, 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, 171, 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, 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,
228, 160, 0, 0, 0, 144,
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, 128,
2, 0, 228, 160, 0, 0,
170, 144, 0, 0, 228, 128,
3, 0, 228, 160, 0, 0,
255, 144, 0, 0, 228, 128,
1, 0, 0, 2, 0, 0,
15, 192, 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,
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,
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,
1, 0, 1, 128, 1, 0,
0, 128, 13, 0, 255, 160,
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,
15, 128, 3, 0, 228, 144,
5, 0, 149, 160, 4, 0,
0, 4, 1, 0, 15, 128,
1, 0, 0, 128, 2, 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, 15, 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,
2, 0, 8, 128, 5, 0,
0, 160, 38, 0, 0, 1,
0, 0, 228, 240, 2, 0,
0, 3, 3, 0, 1, 128,
2, 0, 255, 128, 16, 0,
0, 160, 5, 0, 0, 3,
3, 0, 1, 128, 3, 0,
0, 128, 4, 0, 0, 160,
46, 0, 0, 2, 0, 0,
1, 176, 3, 0, 0, 128,
8, 0, 0, 4, 3, 0,
1, 128, 0, 0, 228, 128,
19, 32, 228, 161, 0, 0,
0, 176, 11, 0, 0, 3,
3, 0, 1, 128, 3, 0,
0, 128, 5, 0, 0, 160,
5, 0, 0, 4, 3, 0,
7, 128, 3, 0, 0, 128,
17, 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, 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,
1, 0, 15, 128, 1, 0,
228, 128, 5, 0, 0, 160,
10, 0, 0, 3, 1, 0,
255, 160, 39, 0, 0, 0,
11, 0, 0, 3, 1, 0,
15, 128, 1, 0, 228, 128,
5, 0, 255, 160, 5, 0,
0, 3, 0, 0, 15, 208,
1, 0, 228, 128, 12, 0,
228, 160, 5, 0, 0, 3,
0, 0, 10, 128, 0, 0,
85, 128, 41, 0, 96, 160,
5, 0, 0, 160, 10, 0,
0, 3, 1, 0, 15, 128,
1, 0, 228, 128, 5, 0,
255, 160, 5, 0, 0, 3,
0, 0, 15, 208, 1, 0,
228, 128, 12, 0, 228, 160,
5, 0, 0, 3, 1, 0,
3, 128, 0, 0, 85, 128,
42, 0, 228, 160, 4, 0,
0, 4, 0, 0, 3, 128,
41, 0, 228, 160, 0, 0,
0, 128, 1, 0, 228, 128,
4, 0, 0, 4, 0, 0,
3, 128, 40, 0, 228, 160,
0, 0, 0, 128, 0, 0,
237, 128, 4, 0, 0, 4,
0, 0, 3, 128, 42, 0,
228, 160, 0, 0, 170, 128,
0, 0, 228, 128, 2, 0,
0, 3, 1, 0, 3, 224,
0, 0, 228, 128, 43, 0,
228, 160, 1, 0, 0, 2,
0, 0, 3, 224, 2, 0,
228, 144, 255, 255, 0, 0
3, 128, 43, 0, 228, 160,
0, 0, 170, 128, 0, 0,
228, 128, 2, 0, 0, 3,
1, 0, 3, 224, 0, 0,
228, 128, 44, 0, 228, 160,
2, 0, 0, 3, 0, 0,
1, 128, 0, 0, 255, 128,
14, 0, 85, 161, 5, 0,
0, 3, 0, 0, 1, 128,
0, 0, 0, 128, 14, 0,
170, 160, 11, 0, 0, 3,
0, 0, 1, 128, 0, 0,
0, 128, 14, 0, 255, 160,
10, 0, 0, 3, 0, 0,
4, 224, 0, 0, 0, 128,
5, 0, 255, 160, 1, 0,
0, 2, 0, 0, 3, 224,
2, 0, 228, 144, 255, 255,
0, 0
};

View File

@ -10,6 +10,7 @@
// float4 colorClamp;
// sampler2D diffTex;
// sampler2D envTex;
// float4 fogColor;
// float shininess;
//
//
@ -17,109 +18,123 @@
//
// Name Reg Size
// ------------ ----- ----
// shininess c0 1
// colorClamp c1 1
// fogColor c0 1
// shininess c1 1
// colorClamp c2 1
// diffTex s0 1
// envTex s1 1
//
ps_2_0
dcl t0.xy
dcl t0.xyz
dcl t1.xy
dcl v0
dcl_2d s0
dcl_2d s1
texld r0, t1, s1
texld r1, t0, s0
mul r1, r1, v0
max r2.xyz, r1, c1
mul r2.xyz, r2, c0.x
mul r0.xyz, r0, r2
mad r1.xyz, r1, r1.w, r0
mov oC0, r1
texld r0, t0, s0
texld r1, t1, s1
mad r2.xyz, v0, r0, -c0
mul r0, r0, v0
mad r2.xyz, t0.z, r2, c0
max r3.xyz, r0, c2
mul r3.xyz, r3, c1.x
mul r1.xyz, r1, r3
mad r0.xyz, r2, r0.w, r1
mov oC0, r0
// approximately 8 instruction slots used (2 texture, 6 arithmetic)
// approximately 10 instruction slots used (2 texture, 8 arithmetic)
#endif
const BYTE g_ps20_main[] =
{
0, 2, 255, 255, 254, 255,
68, 0, 67, 84, 65, 66,
28, 0, 0, 0, 219, 0,
75, 0, 67, 84, 65, 66,
28, 0, 0, 0, 247, 0,
0, 0, 0, 2, 255, 255,
4, 0, 0, 0, 28, 0,
5, 0, 0, 0, 28, 0,
0, 0, 0, 1, 0, 0,
212, 0, 0, 0, 108, 0,
0, 0, 2, 0, 1, 0,
1, 0, 6, 0, 120, 0,
240, 0, 0, 0, 128, 0,
0, 0, 2, 0, 2, 0,
1, 0, 10, 0, 140, 0,
0, 0, 0, 0, 0, 0,
136, 0, 0, 0, 3, 0,
156, 0, 0, 0, 3, 0,
0, 0, 1, 0, 2, 0,
144, 0, 0, 0, 0, 0,
0, 0, 160, 0, 0, 0,
164, 0, 0, 0, 0, 0,
0, 0, 180, 0, 0, 0,
3, 0, 1, 0, 1, 0,
6, 0, 168, 0, 0, 0,
0, 0, 0, 0, 184, 0,
6, 0, 188, 0, 0, 0,
0, 0, 0, 0, 204, 0,
0, 0, 2, 0, 0, 0,
1, 0, 2, 0, 196, 0,
1, 0, 2, 0, 140, 0,
0, 0, 0, 0, 0, 0,
99, 111, 108, 111, 114, 67,
108, 97, 109, 112, 0, 171,
1, 0, 3, 0, 1, 0,
4, 0, 1, 0, 0, 0,
0, 0, 0, 0, 100, 105,
102, 102, 84, 101, 120, 0,
4, 0, 12, 0, 1, 0,
1, 0, 1, 0, 0, 0,
0, 0, 0, 0, 101, 110,
118, 84, 101, 120, 0, 171,
4, 0, 12, 0, 1, 0,
1, 0, 1, 0, 0, 0,
0, 0, 0, 0, 115, 104,
105, 110, 105, 110, 101, 115,
115, 0, 171, 171, 0, 0,
3, 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,
1, 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, 31, 0,
0, 2, 0, 0, 0, 144,
1, 8, 15, 160, 66, 0,
0, 3, 0, 0, 15, 128,
1, 0, 228, 176, 1, 8,
228, 160, 66, 0, 0, 3,
1, 0, 15, 128, 0, 0,
213, 0, 0, 0, 2, 0,
1, 0, 1, 0, 6, 0,
224, 0, 0, 0, 0, 0,
0, 0, 99, 111, 108, 111,
114, 67, 108, 97, 109, 112,
0, 171, 1, 0, 3, 0,
1, 0, 4, 0, 1, 0,
0, 0, 0, 0, 0, 0,
100, 105, 102, 102, 84, 101,
120, 0, 4, 0, 12, 0,
1, 0, 1, 0, 1, 0,
0, 0, 0, 0, 0, 0,
101, 110, 118, 84, 101, 120,
0, 171, 4, 0, 12, 0,
1, 0, 1, 0, 1, 0,
0, 0, 0, 0, 0, 0,
102, 111, 103, 67, 111, 108,
111, 114, 0, 115, 104, 105,
110, 105, 110, 101, 115, 115,
0, 171, 0, 0, 3, 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,
7, 176, 31, 0, 0, 2,
0, 0, 0, 128, 1, 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, 31, 0, 0, 2,
0, 0, 0, 144, 1, 8,
15, 160, 66, 0, 0, 3,
0, 0, 15, 128, 0, 0,
228, 176, 0, 8, 228, 160,
5, 0, 0, 3, 1, 0,
15, 128, 1, 0, 228, 128,
0, 0, 228, 144, 11, 0,
0, 3, 2, 0, 7, 128,
1, 0, 228, 128, 1, 0,
228, 160, 5, 0, 0, 3,
2, 0, 7, 128, 2, 0,
228, 128, 0, 0, 0, 160,
66, 0, 0, 3, 1, 0,
15, 128, 1, 0, 228, 176,
1, 8, 228, 160, 4, 0,
0, 4, 2, 0, 7, 128,
0, 0, 228, 144, 0, 0,
228, 128, 0, 0, 228, 161,
5, 0, 0, 3, 0, 0,
15, 128, 0, 0, 228, 128,
0, 0, 228, 144, 4, 0,
0, 4, 2, 0, 7, 128,
0, 0, 170, 176, 2, 0,
228, 128, 0, 0, 228, 160,
11, 0, 0, 3, 3, 0,
7, 128, 0, 0, 228, 128,
2, 0, 228, 128, 4, 0,
0, 4, 1, 0, 7, 128,
1, 0, 228, 128, 1, 0,
255, 128, 0, 0, 228, 128,
1, 0, 0, 2, 0, 8,
15, 128, 1, 0, 228, 128,
255, 255, 0, 0
2, 0, 228, 160, 5, 0,
0, 3, 3, 0, 7, 128,
3, 0, 228, 128, 1, 0,
0, 160, 5, 0, 0, 3,
1, 0, 7, 128, 1, 0,
228, 128, 3, 0, 228, 128,
4, 0, 0, 4, 0, 0,
7, 128, 2, 0, 228, 128,
0, 0, 255, 128, 1, 0,
228, 128, 1, 0, 0, 2,
0, 8, 15, 128, 0, 0,
228, 128, 255, 255, 0, 0
};