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

Revision 2269, 6.2 KB checked in by barsi, 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// Definition of the shaders.
15// A shader is an object responsible for drawing objects.
16
17shader_array
18{
19    name "bloom"
20    ident "eng_shader_std.group"
21    param
22    {
23        env "shaderenv"
24        init_method "init_method"
25        child_array
26        {
27            ident "eng_shader_std.regionenter"
28            param
29            {
30                env "shaderenv"
31                usage "geo"
32                insp_ident "showbound"
33                insp_rank 80000
34                insp_color 1.0 0.0 0.0
35   
36                enter_array
37                {
38                    triggers "main_trigger"
39                    method "main_method"
40                }
41            }
42        }
43        {
44            ident "eng_shader_std.bundle"
45            param
46            {
47                env "shaderenv"
48                methods "main_method"
49                rank 35010
50                new_method "bundle_method"
51            }
52        }
53        {
54            ident "eng_shader_std.redirect"
55            param
56            {
57                env "shaderenv"
58                register_methods "main_method"
59                // negative value of 'close_rank'
60                register_rank -35010
61                close_methods "bundle_method"
62                // define when EndRenderTex is called
63                close_rank 90000
64                // define when BeginRenderMain is called
65                open_methods "bundle_method"
66                open_rank 90030
67                destprop_antialias 0
68                dest_array
69                {
70                    from_var ""
71                    to_var "screentex"
72                    texprop_restrusage 0
73                    texprop_depth 0
74                    texprop_float 0
75                    texprop_comp 4
76                    texprop_bitspercomp 0
77                    samplermode_filter 0
78                    samplermode_clamp 1
79                }
80            }
81        }
82        {
83            // Reduce image size and get bright pixels.
84            ident "eng_shader_special.filter"
85            param
86            {
87                env "shaderenv"
88                methods "bundle_method"
89                rank 90010
90   
91                iter_start 0
92                iter_end 0
93                iter_step 0
94                width_scale 0.5
95                height_scale 0.5
96                destprop_antialias 0
97
98                passinfo_var "passinfo"
99   
100                src_array "screentex"
101                dest_array
102                {
103                    from_var ""
104                    to_var "brightsmooth"
105                    texprop_restrusage 0
106                    texprop_depth 0
107                    texprop_float 0
108                    texprop_comp 4
109                    texprop_bitspercomp 0
110                    samplermode_filter 1
111                    samplermode_clamp 1
112                }
113   
114                shaderprog_ident "levelutil/shader/prog/"
115                        & "bloom_bright.s3d_shaderprog_run"
116                //shaderprog_ident "levelutil/shader/prog/"
117                //      & "bloom_presmooth_bright.s3d_shaderprog_run"
118                shaderprog_param_array
119                {
120                    src_var "passinfo"
121                    dest_progvar "prog_passinfo"
122                }
123            }
124        }
125        {
126            // Smooth (exponential averaging).
127            ident "eng_shader_special.filter"
128            param
129            {
130                env "shaderenv"
131                methods "bundle_method"
132                rank 90020
133   
134                iter_start 4
135                iter_end 0
136                iter_step -1
137                width_scale 1.0
138                height_scale 1.0
139                destprop_antialias 0
140
141                passinfo_var "passinfo"
142   
143                src_array "brightsmooth"
144                dest_array
145                {
146                    from_var ""
147                    to_var "brightsmooth"
148                    texprop_restrusage 0
149                    texprop_depth 0
150                    texprop_float 0
151                    texprop_comp 4
152                    texprop_bitspercomp 0
153                    samplermode_filter 1
154                    samplermode_clamp 1
155                }
156       
157                shaderprog_ident "levelutil/shader/prog/"
158                        & "bloom_smooth.s3d_shaderprog_run"
159                shaderprog_param_array
160                {
161                    src_var "passinfo"
162                    dest_progvar "prog_passinfo"
163                }
164            }
165        }
166        {
167            ident "eng_shader_std.rectmesh"
168            param
169            {
170                env "shaderenv"
171                methods "bundle_method"
172
173                mesh_var "rectmesh"
174                attr_var "rectattr"
175            }
176        }
177        {
178            ident "eng_shader_std.paintmesh"
179            param
180            {
181                env "shaderenv"
182                methods "bundle_method"
183                rank 90040
184               
185                cull_mode "back"
186                depth_test "always"
187                depth_write 0
188   
189                mesh_var "rectmesh"
190                texchan_var_array "screentex" "brightsmooth"
191                tex_attr_var_array "rectattr"
192                attrmat_var_array ""
193               
194                use_vertex_point 1
195
196                blend_col_src_fac "one"
197                blend_col_dest_fac "zero"
198
199                shaderprog_ident "levelutil/shader/prog/"
200                        & "bloom_combine.s3d_shaderprog_run"
201                shaderprog_param_array
202                {
203                    src_var "passinfo"
204                    dest_progvar "prog_passinfo"
205                }
206            }
207        }
208    }
209}
210$
Note: See TracBrowser for help on using the repository browser.