@@ -10,6 +10,7 @@ <h1>Shader Filters</h1>
1010< a href ="javascript:link4() "> Blur</ a > ,
1111< a href ="javascript:link5() "> Pixelate</ a > ,
1212< a href ="javascript:link6() "> Waterpaint</ a > ,
13+ < a href ="javascript:link7() "> Mirror</ a > ,
1314< a href ="javascript:linknone() "> No filters</ a > < br >
1415< a href ="javascript:link1a() "> Blinds</ a > ,
1516< a href ="javascript:link2a() "> Platonic solids</ a >
@@ -137,6 +138,14 @@ <h1>Shader Filters</h1>
137138"}" ] . join ( "\n" ) ) ;
138139}
139140
141+ function makeMirror ( context ) {
142+ return ShaderProgram . makeEffect ( context , [
143+ "vec4 textureEffect(sampler2D sampler, vec2 uvCoord, vec2 textureSize){" ,
144+ " vec4 color=texture2D(sampler,vec2(1.0-uvCoord.x,uvCoord.y));" ,
145+ " return color;" ,
146+ "}" ] . join ( "\n" ) ) ;
147+ }
148+
140149function link1 ( ) {
141150 if ( scene ) {
142151 if ( currentFilter ) currentFilter . dispose ( ) ;
@@ -198,6 +207,13 @@ <h1>Shader Filters</h1>
198207 scene . useFilter ( currentFilter ) ;
199208 }
200209}
210+ function link7 ( ) {
211+ if ( scene ) {
212+ if ( currentFilter ) currentFilter . dispose ( ) ;
213+ currentFilter = makeMirror ( scene ) ;
214+ scene . useFilter ( currentFilter ) ;
215+ }
216+ }
201217function linknone ( ) {
202218 if ( scene ) {
203219 if ( currentFilter ) currentFilter . dispose ( ) ;
0 commit comments