source: GTP/trunk/App/Demos/Geom/Shark3D/clod_head_demo_win32/src/res/levelutil/shader/posteffects.s3d_shader @ 2236

Revision 2236, 6.1 KB checked in by gumbau, 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_comp 4
75                    texprop_float 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_comp 4
107                    texprop_float 0
108                    samplermode_filter 1
109                    samplermode_clamp 1
110                }
111   
112                shaderprog_ident "levelutil/shader/prog/"
113                        & "bloom_bright.s3d_shaderprog_run"
114                //shaderprog_ident "levelutil/shader/prog/"
115                //      & "bloom_presmooth_bright.s3d_shaderprog_run"
116                shaderprog_param_array
117                {
118                    src_var "passinfo"
119                    dest_progvar "prog_passinfo"
120                }
121            }
122        }
123        {
124            // Smooth (exponential averaging).
125            ident "eng_shader_special.filter"
126            param
127            {
128                env "shaderenv"
129                methods "bundle_method"
130                rank 90020
131   
132                iter_start 4
133                iter_end 0
134                iter_step -1
135                width_scale 1.0
136                height_scale 1.0
137                destprop_antialias 0
138
139                passinfo_var "passinfo"
140   
141                src_array "brightsmooth"
142                dest_array
143                {
144                    from_var ""
145                    to_var "brightsmooth"
146                    texprop_restrusage 0
147                    texprop_depth 0
148                    texprop_comp 4
149                    texprop_float 0
150                    samplermode_filter 1
151                    samplermode_clamp 1
152                }
153       
154                shaderprog_ident "levelutil/shader/prog/"
155                        & "bloom_smooth.s3d_shaderprog_run"
156                shaderprog_param_array
157                {
158                    src_var "passinfo"
159                    dest_progvar "prog_passinfo"
160                }
161            }
162        }
163        {
164            ident "eng_shader_std.rectmesh"
165            param
166            {
167                env "shaderenv"
168                methods "bundle_method"
169
170                mesh_var "rectmesh"
171                attr_var "rectattr"
172            }
173        }
174        {
175            ident "eng_shader_std.paintmesh"
176            param
177            {
178                env "shaderenv"
179                methods "bundle_method"
180                rank 90040
181               
182                cull_mode "back"
183                depth_test "always"
184                depth_write 0
185   
186                mesh_var "rectmesh"
187                texchan_var_array "screentex" "brightsmooth"
188                tex_attr_var_array "rectattr"
189                attrmat_var_array ""
190               
191                use_vertex_point 1
192
193                blend_col_src_fac "one"
194                blend_col_dest_fac "zero"
195
196                shaderprog_ident "levelutil/shader/prog/"
197                        & "bloom_combine.s3d_shaderprog_run"
198                shaderprog_param_array
199                {
200                    src_var "passinfo"
201                    dest_progvar "prog_passinfo"
202                }
203            }
204        }
205    }
206}
207$
Note: See TracBrowser for help on using the repository browser.