source: GTP/trunk/App/Demos/Illum/Shark3D/version164x12u/IllumDemoApplication/src/res/levelutil/shader/basic.s3d_shader @ 2269

Revision 2269, 19.9 KB checked in by barsi, 17 years ago (diff)
Line 
1// Shark 3D Snake Text Stream 1x0 (ascii).
2shader_array
3{
4    // Shader useful for max helper objects.
5    name "pos_helper"
6    ident ""
7    param
8    {
9    }
10}
11{
12    // Shader rendering w/o lighting.
13    name "plain"
14    ident "eng_shader_std.group"
15    param
16    {
17        env "shaderenv"
18        init_method "init_method"
19        child_array
20        {
21            ident "eng_shader_std.modelmesh"
22            param
23            {
24                env "shaderenv"
25                methods "init_method"
26                usage "render"
27                mesh_var "mesh"
28                texchan_var_array "tex0"
29                tex_attr_var_array "attr0"
30                insp_ident "showmesh"
31                insp_rank 80000
32                insp_color 1.0 1.0 0.0
33            }
34        }
35        {
36            ident "eng_shader_std.meshenter"
37            param
38            {
39                env "shaderenv"
40                mesh_var_array "mesh"
41                insp_ident "showbound"
42                insp_rank 80000
43                insp_color 1.0 0.0 0.0
44                enter_array
45                {
46                    triggers "main_trigger" "mirror_trigger"
47                    method "main_method"
48                }
49            }
50        }
51        {
52            ident "eng_shader_std.paintmesh"
53            param
54            {
55                env "shaderenv"
56                methods "main_method"
57                rank 12000
58                insp_ident "showwire"
59               
60                cull_mode "back"
61                depth_test "less_equal"
62                depth_write 1
63
64                mesh_var "mesh"
65                texchan_var_array "tex0"
66                tex_attr_var_array "attr0"
67                attrmat_var_array ""
68                use_vertex_bone_wgh 1
69                use_vertex_bone_subscr 1
70                use_vertex_point 1
71                color 1.0 1.0 1.0
72
73                shaderprog_ident "levelutil/shader/prog/"
74                        & "plain_pointtex.s3d_shaderprog_run"
75                shaderprog_param_array
76            }
77        }
78    }
79}
80{
81    // Simple transparence without lighting.
82    name "plain_transp"
83    ident "eng_shader_std.group"
84    param
85    {
86        env "shaderenv"
87        init_method "init_method"
88        child_array
89        {
90            ident "eng_shader_std.modelmesh"
91            param
92            {
93                env "shaderenv"
94                methods "init_method"
95                usage "render"
96                mesh_var "mesh"
97                texchan_var_array "tex0"
98                tex_attr_var_array "attr0"
99                insp_ident "showmesh"
100                insp_rank 80000
101                insp_color 1.0 1.0 0.0
102            }
103        }
104        {
105            ident "eng_shader_std.meshenter"
106            param
107            {
108                env "shaderenv"
109                mesh_var_array "mesh"
110                insp_ident "showbound"
111                insp_rank 80000
112                insp_color 1.0 0.0 0.0
113                enter_array
114                {
115                    triggers "main_trigger" "mirror_trigger"
116                    method "main_method"
117                }
118            }
119        }
120        {
121            ident "eng_shader_std.paintmesh"
122            param
123            {
124                env "shaderenv"
125                methods "main_method"
126                rank 34000
127                back_to_front 1
128                insp_ident "showwire"
129
130                cull_mode "back"
131                depth_test "less_equal"
132                depth_write 0
133                blend_col_src_fac "src_alpha"
134                blend_col_dest_fac "inv_src_alpha"
135
136                mesh_var "mesh"
137                texchan_var_array "tex0"
138                tex_attr_var_array "attr0"
139                attrmat_var_array ""
140                use_vertex_bone_wgh 1
141                use_vertex_bone_subscr 1
142                use_vertex_point 1
143
144                shaderprog_ident "levelutil/shader/prog/"
145                        & "plain_pointtex.s3d_shaderprog_run"
146                shaderprog_param_array
147            }
148        }
149    }
150}
151{
152    // Shader rendering with lighting not using the normal vectors.
153    name "ambient"
154    ident "eng_shader_std.group"
155    param
156    {
157        env "shaderenv"
158        init_method "init_method"
159        child_array
160        {
161            ident "eng_shader_std.modelmesh"
162            param
163            {
164                env "shaderenv"
165                methods "init_method"
166                usage "render"
167                mesh_var "mesh"
168                texchan_var_array "tex0"
169                tex_attr_var_array "attr0"
170                insp_ident "showmesh"
171                insp_rank 80000
172                insp_color 1.0 1.0 0.0
173            }
174        }
175        {
176            ident "eng_shader_std.meshenter"
177            param
178            {
179                env "shaderenv"
180                mesh_var_array "mesh"
181                insp_ident "showbound"
182                insp_rank 80000
183                insp_color 1.0 0.0 0.0
184                enter_array
185                {
186                    triggers "main_trigger" "mirror_trigger"
187                    method "main_method"
188                }
189                {
190                    triggers "drvlight_trigger"
191                    method "drvlight_method"
192                    param_array
193                    {
194                        src_extvar "ext_light_cenrange"
195                        dest_var "light_cenrange"
196                    }
197                    {
198                        src_extvar "ext_light_diffuse"
199                        dest_var "light_diffuse"
200                    }
201                    {
202                        src_extvar "ext_light_ambient"
203                        dest_var "light_ambient"
204                    }
205                    {
206                        src_extvar "ext_light_specular"
207                        dest_var "light_specular"
208                    }
209                }
210            }
211        }
212        {
213            ident "eng_shader_std.drvlightcoll"
214            param
215            {
216                env "shaderenv"
217                reset_methods "init_method"
218                append_methods "drvlight_method"
219               
220                lightarray_var "lightarray"
221                diffuse_var "light_diffuse"
222                ambient_var "light_ambient"
223                specular_var "light_specular"
224                cenrange_var "light_cenrange"
225            }
226        }
227        {
228            ident "eng_shader_std.paintmesh"
229            param
230            {
231                env "shaderenv"
232                methods "main_method"
233                rank 12000
234                insp_ident "showwire"
235
236                cull_mode "back"
237                depth_test "less_equal"
238                depth_write 1
239
240                mesh_var "mesh"
241                texchan_var_array "tex0"
242                tex_attr_var_array "attr0"
243                attrmat_var_array ""
244                use_vertex_bone_wgh 1
245                use_vertex_bone_subscr 1
246                use_vertex_point 1
247                use_vertex_normal 1
248
249                mtl
250                {
251                    ambient 1. 1. 1.
252                }
253
254                lightarray_var "lightarray"
255
256                shaderprog_ident "levelutil/shader/prog/"
257                        & "standard.s3d_shaderprog_run"
258                shaderprog_param_array
259            }
260        }
261    }
262}
263{
264    // Shader using vertex lighting
265    name "plain_drvlight"
266    ident "eng_shader_std.group"
267    param
268    {
269        env "shaderenv"
270        init_method "init_method"
271        child_array
272        {
273            ident "eng_shader_std.modelmesh"
274            param
275            {
276                env "shaderenv"
277                methods "init_method"
278                usage "render"
279                mesh_var "mesh"
280                texchan_var_array "tex0"
281                tex_attr_var_array "attr0"
282                insp_ident "showmesh"
283                insp_rank 80000
284                insp_color 1.0 1.0 0.0
285            }
286        }
287        {
288            ident "eng_shader_std.meshenter"
289            param
290            {
291                env "shaderenv"
292                mesh_var_array "mesh"
293                insp_ident "showbound"
294                insp_rank 80000
295                insp_color 1.0 0.0 0.0
296                enter_array
297                {
298                    triggers "main_trigger" "mirror_trigger"
299                    method "main_method"
300                }
301                {
302                    triggers "drvlight_trigger"
303                    method "drvlight_method"
304                    param_array
305                    {
306                        src_extvar "ext_light_cenrange"
307                        dest_var "light_cenrange"
308                    }
309                    {
310                        src_extvar "ext_light_diffuse"
311                        dest_var "light_diffuse"
312                    }
313                    {
314                        src_extvar "ext_light_ambient"
315                        dest_var "light_ambient"
316                    }
317                    {
318                        src_extvar "ext_light_specular"
319                        dest_var "light_specular"
320                    }
321                }
322            }
323        }
324        {
325            ident "eng_shader_std.drvlightcoll"
326            param
327            {   
328                env "shaderenv"
329                reset_methods "main_method"
330                append_methods "drvlight_method"
331
332                lightarray_var "lightarray"
333                diffuse_var "light_diffuse"
334                ambient_var "light_ambient"
335                specular_var "light_specular"
336                cenrange_var "light_cenrange"
337            }
338        }
339        {
340            ident "eng_shader_std.paintmesh"
341            param
342            {
343                env "shaderenv"
344                methods "main_method"
345                rank 12000
346                insp_ident "showwire"
347
348                cull_mode "back"
349                depth_test "less_equal"
350                depth_write 1
351
352                mesh_var "mesh"
353                texchan_var_array "tex0"
354                tex_attr_var_array "attr0"
355                attrmat_var_array ""
356
357                use_vertex_bone_wgh 1
358                use_vertex_bone_subscr 1
359                use_vertex_point 1
360                use_vertex_normal 1
361
362                fog_enabled 1
363
364                mtl
365                {
366                    diffuse 1. 1. 1.
367                }
368
369                lightarray_var "lightarray"
370
371                shaderprog_ident "levelutil/shader/prog/"
372                        & "standard.s3d_shaderprog_run"
373                shaderprog_param_array
374            }
375        }
376    }
377}
378{
379    // A simple shader using vertex colors exported from Max.
380    name "plain_vertex_colors"
381    ident "eng_shader_std.group"
382    param
383    {
384        env "shaderenv"
385        init_method "init_method"
386        child_array
387        {
388            ident "eng_shader_std.modelmesh"
389            param
390            {
391                env "shaderenv"
392                methods "init_method"
393                usage "render"
394                mesh_var "mesh"
395                texchan_var_array "tex0"
396                tex_attr_var_array "attr0"
397                insp_ident "showmesh"
398                insp_rank 80000
399                insp_color 1.0 1.0 0.0
400            }
401        }
402        {
403            ident "eng_shader_std.meshenter"
404            param
405            {
406                env "shaderenv"
407                mesh_var_array "mesh"
408                insp_ident "showbound"
409                insp_rank 80000
410                insp_color 1.0 0.0 0.0
411                enter_array
412                {
413                    triggers "main_trigger" "mirror_trigger"
414                    method "main_method"
415                }
416            }
417        }
418        {
419            ident "eng_shader_std.paintmesh"
420            param
421            {
422                env "shaderenv"
423                methods "main_method"
424                rank 12000
425                insp_ident "showwire"
426
427                cull_mode "back"
428                depth_test "less_equal"
429                depth_write 1
430
431                mesh_var "mesh"
432                texchan_var_array "tex0"
433                tex_attr_var_array "attr0"
434                attrmat_var_array ""
435
436                use_vertex_bone_wgh 1
437                use_vertex_bone_subscr 1
438                use_vertex_point 1
439                use_vertex_coloralpha 1
440
441                fog_enabled 1
442
443                shaderprog_ident "levelutil/shader/prog/"
444                        & "plain_pointcoltex.s3d_shaderprog_run"
445                shaderprog_param_array
446            }
447        }
448    }
449}
450{
451    // Additive glass: Additive blending
452    // with faked environment mappping.
453    // In contrast to alpha-blended glass,
454    // such glass looks more unrealistic,
455    // but avoids transparency sorting problems.
456    name "blend_glass_add"
457    ident "eng_shader_std.group"
458    param
459    {
460        env "shaderenv"
461        init_method "init_method"
462        child_array
463        {
464            ident "eng_shader_std.modelmesh"
465            param
466            {
467                env "shaderenv"
468                methods "init_method"
469                usage "render"
470                mesh_var "mesh"
471                texchan_var_array "tex0" // //xxx should be sphere
472                tex_attr_var_array "attr0"
473                insp_ident "showmesh"
474                insp_rank 80000
475                insp_color 1.0 1.0 0.0
476            }
477        }
478        {
479            ident "eng_shader_std.meshenter"
480            param
481            {
482                env "shaderenv"
483                mesh_var_array "mesh"
484                insp_ident "showbound"
485                insp_rank 80000
486                insp_color 1.0 0.0 0.0
487                enter_array
488                {
489                    triggers "main_trigger" "mirror_trigger"
490                    method "main_method"
491                }
492                {
493                    triggers "drvlight_trigger"
494                    method "drvlight_method"
495                    param_array
496                    {
497                        src_extvar "ext_light_cenrange"
498                        dest_var "light_cenrange"
499                    }
500                    {
501                        src_extvar "ext_light_diffuse"
502                        dest_var "light_diffuse"
503                    }
504                    {
505                        src_extvar "ext_light_ambient"
506                        dest_var "light_ambient"
507                    }
508                    {
509                        src_extvar "ext_light_specular"
510                        dest_var "light_specular"
511                    }
512                }
513            }
514        }
515        {
516            ident "eng_shader_std.drvlightcoll"
517            param
518            {
519                env "shaderenv"
520                reset_methods "main_method"
521                append_methods "drvlight_method"
522
523                lightarray_var "lightarray"
524                diffuse_var "light_diffuse"
525                ambient_var "light_ambient"
526                specular_var "light_specular"
527                cenrange_var "light_cenrange"
528            }
529        }
530        {
531            ident "eng_shader_std.paintmesh"
532            param
533            {
534                env "shaderenv"
535                methods "main_method"
536                rank 34000
537                back_to_front 1
538                insp_ident "showwire"
539
540                cull_mode "back"
541                depth_test "less_equal"
542                depth_write 0
543
544                mesh_var "mesh"
545                texchan_var_array "tex0"
546                tex_attr_var_array "attr0"
547                attrmat_var_array ""
548
549                use_vertex_bone_wgh 1
550                use_vertex_bone_subscr 1
551                use_vertex_point 1
552                use_vertex_normal 1
553
554                blend_col_src_fac "one"
555                blend_col_dest_fac "one"
556                fog_black 1
557
558                mtl
559                {
560                    ambient 1. 1. 1.
561                }
562
563                lightarray_var "lightarray"
564
565                shaderprog_ident "levelutil/shader/prog/"
566                        & "standard.s3d_shaderprog_run"
567                shaderprog_param_array
568            }
569        }
570    }
571}
572{
573    // Additive fluid: Transparent, distorted mapping.
574    name "blend_fluid_add"
575    ident "eng_shader_std.group"
576    param
577    {
578        env "shaderenv"
579        init_method "init_method"
580        child_array
581        {
582            ident "eng_shader_std.modelmesh"
583            param
584            {
585                env "shaderenv"
586                methods "init_method"
587                usage "render"
588                mesh_var "mesh"
589                texchan_var_array "tex0" // //xxx should be distort
590                tex_attr_var_array "attr0"
591                insp_ident "showmesh"
592                insp_rank 80000
593                insp_color 1.0 1.0 0.0
594            }
595        }
596        {
597            ident "eng_shader_std.meshenter"
598            param
599            {
600                env "shaderenv"
601                mesh_var_array "mesh"
602                insp_ident "showbound"
603                insp_rank 80000
604                insp_color 1.0 0.0 0.0
605                enter_array
606                {
607                    triggers "main_trigger" "mirror_trigger"
608                    method "main_method"
609                }
610                {
611                    triggers "drvlight_trigger"
612                    method "drvlight_method"
613                    param_array
614                    {
615                        src_extvar "ext_light_cenrange"
616                        dest_var "light_cenrange"
617                    }
618                    {
619                        src_extvar "ext_light_diffuse"
620                        dest_var "light_diffuse"
621                    }
622                    {
623                        src_extvar "ext_light_ambient"
624                        dest_var "light_ambient"
625                    }
626                    {
627                        src_extvar "ext_light_specular"
628                        dest_var "light_specular"
629                    }
630                }
631            }
632        }
633        {
634            ident "eng_shader_std.drvlightcoll"
635            param
636            {
637                env "shaderenv"
638                reset_methods "main_method"
639                append_methods "drvlight_method"
640
641                lightarray_var "lightarray"
642                diffuse_var "light_diffuse"
643                ambient_var "light_ambient"
644                specular_var "light_specular"
645                cenrange_var "light_cenrange"
646            }
647        }
648        {
649            ident "eng_shader_std.paintmesh"
650            param
651            {
652                env "shaderenv"
653                methods "main_method"
654                rank 34000
655                back_to_front 1
656                insp_ident "showwire"
657
658                cull_mode "back"
659                depth_test "less_equal"
660                depth_write 0
661
662                mesh_var "mesh"
663                texchan_var_array "tex0"
664                tex_attr_var_array "attr0"
665                attrmat_var_array ""
666
667                use_vertex_bone_wgh 1
668                use_vertex_bone_subscr 1
669                use_vertex_point 1
670                use_vertex_normal 1
671
672                blend_col_src_fac "one"
673                blend_col_dest_fac "one"
674                fog_black 1
675
676                mtl
677                {
678                    ambient 1. 1. 1.
679                }
680
681                lightarray_var "lightarray"
682
683                shaderprog_ident "levelutil/shader/prog/"
684                        & "standard.s3d_shaderprog_run"
685                shaderprog_param_array
686            }
687        }
688    }
689}
Note: See TracBrowser for help on using the repository browser.