source: GTP/trunk/App/Demos/Illum/Shark3D/version164x12u/IllumDemo/bin/res/levelutil/shader/prog/d3d9_hlsl/gtp_plain_pointtex_d3d9_hlsl_vs2x0.s3d_shadercode_run @ 2196

Revision 2196, 1.8 KB checked in by szirmay, 17 years ago (diff)
Line 
1///////////////////////////////////////////////////////////////////////////////
2//
3//      ##  ######
4//       ######  ###
5//  ## ###############        Shark 3D Engine (www.shark3d.com)
6//   ########## # # #
7//    ########                Copyright (c) 1996-2006 Spinor GmbH.
8//   ######### # # #          All rights reserved.
9//  ##   ##########
10//      ##
11//
12///////////////////////////////////////////////////////////////////////////////
13
14#include \
15    <levelutil/shader/prog/d3d9_hlsl/include_stddef_d3d9_hlsl.s3d_shadercode_run>
16
17///////////////////////////////////////////////////////////////////////////////
18
19struct VS_INPUT
20{
21    float4 posObj: POSITION;
22    S3D_BONE_DECL_STD(boneWgh, boneSubscr)
23    float2 mainTexCoord: TEXCOORD0;
24};
25
26struct VS_OUTPUT
27{
28    float4 posScr: POSITION;
29    float4 diffuse: COLOR0;
30    float2 mainTexCoord: TEXCOORD0;
31    float3 viewVec: TEXCOORD1;
32};
33
34///////////////////////////////////////////////////////////////////////////////
35
36const float4x4 projMat;
37const float4x4 matView;
38const float4 mtrlEmissive;
39
40S3D_MATBONE_DECL_STD(matBone)
41
42///////////////////////////////////////////////////////////////////////////////
43// Vertexshader
44// Profile: 2x0
45
46VS_OUTPUT main(VS_INPUT input)
47{
48    VS_OUTPUT output = (VS_OUTPUT)0;
49
50    float4x4 matBoneFinal;
51    S3D_BONE_TRANSF_STD(
52            matBoneFinal, matBone, input.boneWgh, input.boneSubscr);
53    // Transform vectors by matBoneFinal
54    float4 posView = mul(input.posObj, matBoneFinal);
55
56    output.posScr = mul(posView, projMat);
57    output.diffuse = mtrlEmissive;
58    output.mainTexCoord = input.mainTexCoord;
59    output.viewVec = posView;
60    return output;
61}
62
63///////////////////////////////////////////////////////////////////////////////
Note: See TracBrowser for help on using the repository browser.