source: GTP/trunk/App/Demos/Illum/Shark3D/version164x12u/IllumDemo/src/res/levelutil/shader/caustic.s3d_shader @ 2196

Revision 2196, 19.8 KB checked in by szirmay, 17 years ago (diff)
Line 
1// Machine-made Shark 3D Snake Text 2x0 Stream. Format: ascii.
2shader_array
3{
4    name "caustic_caster"
5    ident "eng_shader_std.group"
6    param
7    {
8        env "shaderenv"
9        init_method "init_method"
10        child_array
11        {
12            ident "eng_shader_std.modelmesh"
13            param
14            {
15                env "shaderenv"
16                methods "init_method"
17                mesh_var "mesh"
18                texchan_var_array
19                tex_attr_var_array
20                usage "render"
21                tangentu_attr_var
22                tangentv_attr_var
23            }
24        }
25        {
26            ident "eng_shader_std.meshenter"
27            param
28            {
29                env "shaderenv"
30                mesh_var_array "mesh"
31                insp_ident "insp_shader_bound"
32                insp_rank 80000
33                insp_color 1.0 0.0 0.0
34                enter_array
35                {
36                    triggers "main_trigger" "mirror_trigger"
37                    method "main_method"
38                }
39                {
40                    triggers "gtp_distance_impostor_trigger"
41                    method "gtp_distance_impostor_method"
42                }
43                {
44                    triggers "caustic_cast_trigger"
45                    method "caustic_cast_method"
46                    param_array
47                    {
48                        src_extvar "ext_light_cenrange"
49                        dest_var "light_cenrange"
50                    }
51                    {
52                        src_extvar "recievers"
53                        dest_var "recievers"
54                    }
55                }
56            }
57        }
58        {
59            ident "eng_shader_std.constvec"
60            param
61            {
62                env "shaderenv"
63                methods "init_method"
64                val_var "lastCenter"
65                val 0.0 0.0 0.0 1.0
66            }
67        }
68        {
69            ident "gtp_shader.createtex"
70            param
71            {
72                env "shaderenv"
73                methods "init_method"
74                texchan_var "envmap0"
75                width 128
76                height 128
77                texprop_rendertarget 1
78                texprop_cube 1
79                texprop_float 0
80                texprop_comp 4
81                texprop_bitspercomp 8
82                samplermode_clamp 0
83                samplermode_filter 1
84            }
85        }
86        {
87            ident "gtp_shader.envmap"
88            param
89            {
90                env "shaderenv"
91                methods "main_method"
92                rank -89500
93                max_ext 256
94                max_recursion 1
95                ext_dist_scale 20.0
96                proj_neg_z 0.1
97                proj_pos_z 100.0
98                enum_trigger "mirror_trigger"
99                destprop_antialias 0
100                mesh_var "mesh"
101                update_interval 1
102                update_all_face 1
103                start_frame 0
104                last_center_var "lastCenter"
105                world_space 1
106                dest_array
107                {
108                    from_var "envmap0"
109                    to_var "envmap0"
110                    texprop_restrusage 0
111                    texprop_depth 0
112                    texprop_comp 3
113                    texprop_float 0
114                    samplermode_filter 0
115                    samplermode_clamp 1
116                }
117            }
118        }
119        {
120            ident "gtp_shader.createtex"
121            param
122            {
123                env "shaderenv"
124                methods "init_method"
125                texchan_var "dist"
126                width 128
127                height 128
128                texprop_rendertarget 1
129                texprop_cube 1
130                texprop_float 1
131                texprop_comp 2
132                texprop_bitspercomp 16
133                samplermode_clamp 0
134                samplermode_filter 1
135            }
136        }
137        {
138            ident "gtp_shader.envmap"
139            param
140            {
141                env "shaderenv"
142                methods "main_method"
143                rank -89500
144                max_ext 128
145                max_recursion 1
146                ext_dist_scale 20.0
147                proj_neg_z 0.1
148                proj_pos_z 100.0
149                enum_trigger "gtp_distance_impostor_trigger"
150                destprop_antialias 0
151                mesh_var "mesh"
152                update_interval 1
153                update_all_face 1
154                start_frame 0
155                last_center_var "lastCenter"
156                world_space 1
157                dest_array
158                {
159                    from_var "dist"
160                    to_var "dist"
161                    texprop_restrusage 0
162                    texprop_depth 0
163                    texprop_comp 1
164                    texprop_float 1
165                    samplermode_filter 0
166                    samplermode_clamp 1
167                }
168            }
169        }
170        {
171            ident "gtp_shader.worldmat"
172            param
173            {
174                env "shaderenv"
175                methods "main_method"
176                worldmat_var "worldMat"
177            }
178        }
179        {
180            ident "gtp_shader.worldmat"
181            param
182            {
183                env "shaderenv"
184                methods "main_method"
185                worldmat_var "worldMatIT"
186                inverse 1
187                transpose 1
188            }
189        }
190        {
191            ident "eng_shader_std.paintmesh"
192            param
193            {
194                env "shaderenv"
195                methods "main_method"
196                rank 12000
197                insp_ident "insp_shader_mesh"
198                cull_mode "back"
199                depth_test "less_equal"
200                depth_write 1
201                mesh_var "mesh"
202                texchan_var_array "envmap0" "dist"
203                tex_attr_var_array "attr0"
204                attrmat_var_array ""
205                use_vertex_bone_wgh 1
206                use_vertex_bone_subscr 1
207                use_vertex_point 1
208                use_vertex_normal 1
209                use_vertex_coloralpha 0
210                shaderprog_ident
211                    "levelutil/shader/prog/gtp_envmap.s3d_shaderprog_run"
212                shaderprog_param_array
213                {
214                    src_var "lastCenter"
215                    dest_progvar "lastCenter"
216                }
217                {
218                    src_var "worldMat"
219                    dest_progvar "worldMat"
220                }
221                {
222                    src_var "worldMatIT"
223                    dest_progvar "worldMatIT"
224                }
225            }
226        }
227        {
228            ident "eng_shader_std.paintmesh"
229            param
230            {
231                env "shaderenv"
232                methods "gtp_distance_impostor_method"
233                rank 12000
234                insp_ident "insp_shader_mesh"
235                cull_mode "back"
236                depth_test "less_equal"
237                depth_write 1
238                mesh_var "mesh"
239                texchan_var_array
240                tex_attr_var_array "attr0"
241                attrmat_var_array ""
242                use_vertex_bone_wgh 1
243                use_vertex_bone_subscr 1
244                use_vertex_point 1
245                color 1.0 1.0 1.0
246                shaderprog_ident
247                    "levelutil/shader/prog/gtp_distance_impostor.s3d_shaderpro"
248                    & "g_run"
249                shaderprog_param_array
250            }
251        }
252        {
253            ident "gtp_shader.createtex"
254            param
255            {
256                env "shaderenv"
257                methods "init_method"
258                texchan_var "cauCubeMap"
259                texprop_cube 1
260                width 128
261                height 128
262                texprop_rendertarget 1
263                texprop_float 1
264                texprop_comp 4
265                texprop_bitspercomp 16
266                samplermode_clamp 1
267                samplermode_filter 1
268            }
269        }
270        {
271            ident "gtp_shader.createtex"
272            param
273            {
274                env "shaderenv"
275                methods "init_method"
276                texchan_var "photonmap"
277                width 32
278                height 32
279                texprop_rendertarget 1
280                texprop_float 1
281                texprop_comp 4
282                texprop_bitspercomp 32
283                samplermode_clamp 1
284                samplermode_filter 0
285            }
286        }
287        {
288            ident "gtp_shader.focusedprojmat"
289            param
290            {
291                env "shaderenv"
292                methods "caustic_cast_method"
293                mesh_var "mesh"
294                destmat_var "lightViewProj"
295                centerpoint_var "light_cenrange"
296            }
297        }
298        {
299            ident "gtp_shader.worldmat"
300            param
301            {
302                env "shaderenv"
303                methods "init_method"
304                worldmat_var "viewToWorld"
305                inverse 0
306                transpose 0
307            }
308        }
309        {
310            ident "gtp_shader.worldmat"
311            param
312            {
313                env "shaderenv"
314                methods "init_method"
315                worldmat_var "viewToWorldInv"
316                inverse 1
317                transpose 0
318            }
319        }
320        {
321            ident "eng_shader_std.totex"
322            param
323            {
324                env "shaderenv"
325                methods "caustic_cast_method"
326                rank -7800
327                new_method "photonmap_method"
328                size_scale 1.0
329                dest_array
330                {
331                    from_var "photonmap"
332                    to_var "photonmap"
333                    texprop_restrusage 0
334                    texprop_depth 0
335                    texprop_comp 4
336                    texprop_float 1
337                    samplermode_filter 0
338                    samplermode_clamp 1
339                }
340            }
341        }
342        {
343            ident "eng_shader_std.paintmesh"
344            param
345            {
346                env "shaderenv"
347                methods "photonmap_method"
348                rank 1000
349                insp_ident "insp_shader_mesh"
350                cull_mode "front"
351                depth_test "less"
352                depth_write 1
353                mesh_var "mesh"
354                texchan_var_array "dist"
355                tex_attr_var_array "attr0"
356                attrmat_var_array ""
357                use_vertex_bone_wgh 1
358                use_vertex_bone_subscr 1
359                use_vertex_normal 1
360                use_vertex_point 1
361                color 1.0 1.0 1.0
362                shaderprog_ident
363                    "levelutil/shader/prog/gtp_cau_photonmap.s3d_shaderprog_run"
364                shaderprog_param_array
365                {
366                    src_var "lightViewProj"
367                    dest_progvar "lightViewProj"
368                }
369                {
370                    src_var "viewToWorld"
371                    dest_progvar "viewToWorld"
372                }
373                {
374                    src_var "viewToWorldInv"
375                    dest_progvar "viewToWorldInv"
376                }
377                {
378                    src_var "light_cenrange"
379                    dest_progvar "lightPosView"
380                }
381                {
382                    src_var "lastCenter"
383                    dest_progvar "lastCenter"
384                }
385            }
386        }
387   /*  {
388            ident "eng_shader_std.rectmesh"
389            param
390            {
391                env "shaderenv"
392                methods "init_method"
393                mesh_var "screenRect"
394                attr_var "screenRectAttr"
395            }
396        }
397        {
398            ident "eng_shader_std.paintmesh"
399            param
400            {
401                env "shaderenv"
402                methods "main_method"
403                rank 10000
404                insp_ident "insp_shader_mesh"
405                cull_mode "none"
406                depth_test "less_equal"
407                depth_write 1
408                mesh_var "screenRect"
409                texchan_var_array "cauCubeMap"
410                tex_attr_var_array "screenRectAttr"
411                attrmat_var_array ""
412                use_vertex_bone_wgh 1
413                use_vertex_bone_subscr 1
414                use_vertex_point 1
415                color 1.0 1.0 1.0
416                shaderprog_ident
417                    "levelutil/shader/prog/gtp_plain_cubequad.s3d_shaderprog_run"
418                shaderprog_param_array
419            }
420        }*/
421        {
422            ident "gtp_shader.causticcube"
423            param
424            {
425                env "shaderenv"
426                methods "caustic_cast_method"
427                rank -7700
428                iter_start 0
429                iter_end 0
430                iter_step 0
431                width_scale 1.0
432                height_scale 1.0
433                destprop_antialias 1
434                passinfo_var ""
435                src_array "photonmap"
436                update_interval 1
437                update_all_face 1
438                start_frame 0
439                photon_count 32
440                use_points 1
441                dest_array
442                {
443                    from_var "cauCubeMap"
444                    to_var "cauCubeMap"
445                    texprop_restrusage 0
446                    texprop_depth 0
447                    texprop_float 0
448                    texprop_comp 4
449                    texprop_bitspercomp 8
450                    samplermode_filter 0
451                    samplermode_clamp 1
452                }
453                shaderprog_ident
454                    "levelutil/shader/prog/gtp_caustic_cubemap_point.s3d_shaderprog_run"
455                shaderprog_param_array
456            }
457        }       
458        {
459            ident "eng_shader_std.collexec"
460            param
461            {
462                env "shaderenv"
463                methods "main_method"
464                coll_var "recievers"
465                rank 13500
466                exec_trigger "caustic_recieve_trigger"
467                exec_param_array
468                {
469                    src_var "lastCenter"
470                    dest_extvar "lastCenter"
471                }
472                {
473                    src_var "cauCubeMap"
474                    dest_extvar "cauCubeMap"
475                }
476            }
477        }
478    }
479}
480{
481    name "plain_caustic_reciever"
482    ident "eng_shader_std.group"
483    param
484    {
485        env "shaderenv"
486        init_method "init_method"
487        child_array
488        {
489            ident "eng_shader_std.modelmesh"
490            param
491            {
492                env "shaderenv"
493                methods "init_method"
494                usage "render"
495                mesh_var "mesh"
496                texchan_var_array "tex0"
497                tex_attr_var_array "attr0"
498            }
499        }
500        {
501            ident "eng_shader_std.meshenter"
502            param
503            {
504                env "shaderenv"
505                mesh_var_array "mesh"
506                insp_ident "insp_shader_bound"
507                insp_rank 80000
508                insp_color 1.0 0.0 0.0
509                enter_array
510                {
511                    triggers "main_trigger" "mirror_trigger"
512                    method "main_method"
513                }
514                {
515                    triggers "caustic_recieve_trigger"
516                    method "caustic_recieve_method"
517                    param_array
518                    {
519                        src_extvar "lastCenter"
520                        dest_var "cauCubeLastCenter"
521                    }
522                    {
523                        src_extvar "cauCubeMap"
524                        dest_var "cauCubeMap"
525                    }
526                }
527                {
528                    triggers "gtp_distance_impostor_trigger"
529                    method "gtp_distance_impostor_method"
530                }               
531            }
532        }
533       {
534            ident "eng_shader_std.paintmesh"
535            param
536            {
537                env "shaderenv"
538                methods "main_method"
539                rank 12000
540                insp_ident "insp_shader_mesh"
541                cull_mode "back"
542                depth_test "less"
543                depth_write 1
544                depth_bias_overlay 0.0
545                mesh_var "mesh"
546                texchan_var_array "tex0"
547                tex_attr_var_array "attr0"
548                blend_col_dest_fac "one"
549                blend_col_src_fac "one"
550                attrmat_var_array ""
551                use_vertex_bone_wgh 1
552                use_vertex_bone_subscr 1
553                use_vertex_point 1
554                color 1.0 1.0 1.0
555                shaderprog_ident
556                    "levelutil/shader/prog/plain_pointtex.s3d_shaderprog_run"
557                shaderprog_param_array
558            }
559        }
560        {
561            ident "eng_shader_std.paintmesh"
562            param
563            {
564                env "shaderenv"
565                methods "gtp_distance_impostor_method"
566                rank 12000
567                insp_ident "insp_shader_mesh"
568                cull_mode "back"
569                depth_test "less_equal"
570                depth_write 1
571                mesh_var "mesh"
572                texchan_var_array
573                tex_attr_var_array "attr0"
574                attrmat_var_array ""
575                use_vertex_bone_wgh 1
576                use_vertex_bone_subscr 1
577                use_vertex_point 1
578                color 1.0 1.0 1.0
579                shaderprog_ident
580                    "levelutil/shader/prog/gtp_distance_impostor.s3d_shaderpro"
581                    & "g_run"
582                shaderprog_param_array
583            }
584        }
585        {
586            ident "gtp_shader.worldmat"
587            param
588            {
589                env "shaderenv"
590                methods "caustic_recieve_method"
591                worldmat_var "worldMat"
592            }
593        }
594   /*     {
595            ident "eng_shader_std.bundle"
596            param
597            {
598               env "shaderenv"
599               methods "caustic_recieve_method"
600               new_method "caustic_recieve_bundle_method"
601               rank 14000
602            }
603        }*/
604        {
605            ident "eng_shader_std.paintmesh"
606            param
607            {
608                env "shaderenv"
609                methods "caustic_recieve_method"
610                rank 14000
611                insp_ident "insp_shader_mesh"
612                cull_mode "back"
613                depth_test "less_equal"
614                depth_write 1
615                depth_bias_overlay 1
616                depth_bias_offs 1
617                mesh_var "mesh"
618                texchan_var_array "cauCubeMap"
619                tex_attr_var_array "attr0"
620                attrmat_var_array ""
621                use_vertex_bone_wgh 1
622                use_vertex_bone_subscr 1
623                use_vertex_point 1
624                blend_col_dest_fac "one"
625                blend_col_src_fac "one"
626                blend_col_op "src_plus_dest"
627                color 1.0 1.0 1.0
628                shaderprog_ident
629                    "levelutil/shader/prog/gtp_caustic_recieve.s3d_shaderprog_run"
630                shaderprog_param_array
631                {
632                    src_var "cauCubeLastCenter"
633                    dest_progvar "lastCenter"
634                }
635                {
636                    src_var "worldMat"
637                    dest_progvar "worldMat"
638                }
639            }
640        }
641    }
642}
Note: See TracBrowser for help on using the repository browser.