source: GTP/trunk/App/Demos/Illum/IBRBillboardCloudTrees/Shark3D/demo_v5x0x7_t164x31u_enterpr_kwin32/src/res/levelutil/shader/prog/indirect_texturing_shmap.s3d_shaderprog @ 2330

Revision 2330, 6.2 KB checked in by igarcia, 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// Shader program configuration.
15// Different drivers access different parameters.
16
17// Opengl Highlevel Shaderlanguage
18ogl
19{
20    glsl
21    {
22        vertshader
23        {
24            code_variant_array
25            {
26                req_ver "1x0"
27                code_array "levelutil/shader/prog/ogl_glsl/"
28                        & "bump_ogl_glsl_vs1x0.s3d_shadercode_run"
29            }
30            tracking
31            {
32                cnt 4
33                codevar "matBone[$]"
34                chan "bone"
35                trans "identity"
36            }
37
38            //  attribute vec4 bone_wgh;
39            bone_wgh "boneWgh"
40            //bone_subscr "boneSubscr"
41
42            predefine_array
43            {
44                name "S3D_USE_BONEWGH"
45            }
46            {
47                name "S3D_PARALLAX_MAPPING"
48            }
49        }
50
51        fragshader
52        {
53            code_variant_array
54            {
55                req_ver "1x0"
56                code_array "levelutil/shader/prog/ogl_glsl/"
57                        & "bump_ogl_glsl_fs1x0.s3d_shadercode_run"
58            }
59            predefine_array
60            {
61                name "S3D_SPECULAR_EXP"
62                val "4.0"
63            }
64            {
65                name "S3D_GEOMETRIC_SHADOW"
66            }
67            {
68                name "S3D_PARALLAX_MAPPING"
69            }
70            {
71                name "S3D_PARALLAX_SCALE"
72                val "0.07"
73            }
74            {
75                name "S3D_PARALLAX_BIAS"
76                val "0.50196078431372549" // = 128/255
77            }
78        }
79
80        param_array
81        {
82            src_progvar "prog_light_cenrange"
83            dest_codevar "lightCenRange"
84            type "float4"
85        }
86        {
87            src_progvar "prog_light_ambient"
88            dest_codevar "lightAmbient"
89            type "float4"
90        }
91        {
92            src_progvar "prog_light_diffuse"
93            dest_codevar "lightDiffuse"
94            type "float4"
95        }
96        {
97            src_progvar "prog_light_specular"
98            dest_codevar "lightSpecular"
99            type "float4"
100        }
101
102        sampler_array "tex0" "normalSamp"
103    }
104}
105
106d3d9
107{
108    hlsl_vertshader
109    {
110        // Code of the pixel program
111        code_variant_array
112        {
113            profile "2x0"
114            entry_point "main"
115            code "levelutil/shader/prog/d3d9_hlsl/"
116                    & "indirect_texturing_shmap_d3d9_hlsl_vs2x0.s3d_shadercode_run"
117            //debug_code_file "src/res/levelutil/shader/prog/d3d9_hlsl/"
118            //      & "indirect_texturing_shmap_d3d9_hlsl_vs1x1.s3d_shadercode"
119        }
120
121
122        // Copy matrices into vertex program constants.
123        // The field "chan" can be one
124        // of "identity", "proj", "view" or "projview" "bone"
125        // The field "trans" can be one
126        // of "identity", "inv", "transp" or "invtransp"
127        // One matrix needs 4 constants.
128        tracking
129        {
130            codevar "projMat"
131            slot 0
132            chan "proj"
133            trans "identity"
134        }
135        {
136            codevar "matView"
137            slot 0
138            chan "view"
139            trans "identity"
140        }
141
142        param_array
143        {
144            src_progvar "prog_light_cenrange"
145            dest_codevar "lightCenRange"
146            type "float4"
147        }
148        {
149            src_progvar "prog_light_projmat"
150            dest_codevar "lightProjMat"
151            type "float4x4"
152        }
153        {
154            src_progvar "prog_light_shmapmat"
155            dest_codevar "lightShmapMat"
156            type "float4x4"
157        }
158
159        predefine_array
160        {
161            name "S3D_SPECULAR_EXP"
162            val "4.0"
163        }
164        {
165            name "S3D_USE_BONESUBSCR"
166        }
167        {
168            name "S3D_MATBONE_CNT"
169            val "32"
170        }
171        {
172            name "S3D_PARALLAX_MAPPING"
173        }
174        {
175            name "S3D_LIGHT_PROJ"
176        }
177        {
178            name "S3D_LIGHT_SHMAP"
179        }
180    }
181
182    hlsl_pixshader
183    {
184        code_variant_array
185        {
186            profile "2x0"
187            entry_point "main"
188            code "levelutil/shader/prog/d3d9_hlsl/"
189                    & "indirect_texturing_shmap_d3d9_hlsl_ps2x0.s3d_shadercode_run"
190        }
191       
192        param_array
193        {
194            src_progvar "prog_light_ambient"
195            dest_codevar "lightAmbient"
196            type "float4"
197        }
198        {
199            src_progvar "prog_light_diffuse"
200            dest_codevar "lightDiffuse"
201            type "float4"
202        }
203        {
204            src_progvar "prog_light_specular"
205            dest_codevar "lightSpecular"
206            type "float4"
207        }
208
209        tex_size_codevar_array "" "" "lightShmapSize"
210        tex_rcpsize_codevar_array "" "" "lightShmapRcpSize"
211
212        predefine_array
213        {
214            name "S3D_SPECULAR_EXP"
215            val "4.0"
216        }
217        {
218            name "S3D_GEOMETRIC_SHADOW"
219        }
220        {
221            name "S3D_PARALLAX_MAPPING"
222        }
223        {
224            name "S3D_PARALLAX_SCALE"
225            val "0.07"
226        }
227        {
228            name "S3D_PARALLAX_BIAS"
229            val "0.50196078431372549" // = 128/255
230        }
231        {
232            name "S3D_LIGHT_PROJ"
233        }
234        {
235            name "S3D_LIGHT_SHMAP"
236        }
237        /*
238        {
239            name "S3D_SHMAP_FILTER16"
240            val ""
241        }
242        */
243        {
244            name "S3D_SHMAP_ZBIAS"
245            //val "0.0003" // For no-filtering
246            val "0.0010" // For 4-filtering
247            //val "0.0010" // For 16-filtering
248        }
249    }
250}
251
Note: See TracBrowser for help on using the repository browser.