source: GTP/trunk/App/Demos/Illum/IBRBillboardCloudTrees/Shark3D/bin/res/levelutil/shader/posteffects.s3d_shader_run @ 2517

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