@@ -201,7 +201,7 @@ function supportRenderTextureFormat (gl, internalFormat, format, type) {
201201 gl . bindFramebuffer ( gl . FRAMEBUFFER , fbo ) ;
202202 gl . framebufferTexture2D ( gl . FRAMEBUFFER , gl . COLOR_ATTACHMENT0 , gl . TEXTURE_2D , texture , 0 ) ;
203203
204- const status = gl . checkFramebufferStatus ( gl . FRAMEBUFFER ) ;
204+ let status = gl . checkFramebufferStatus ( gl . FRAMEBUFFER ) ;
205205 return status == gl . FRAMEBUFFER_COMPLETE ;
206206}
207207
@@ -400,7 +400,7 @@ function createProgram (vertexShader, fragmentShader) {
400400 gl . linkProgram ( program ) ;
401401
402402 if ( ! gl . getProgramParameter ( program , gl . LINK_STATUS ) )
403- throw gl . getProgramInfoLog ( program ) ;
403+ console . trace ( gl . getProgramInfoLog ( program ) ) ;
404404
405405 return program ;
406406}
@@ -423,7 +423,7 @@ function compileShader (type, source, keywords) {
423423 gl . compileShader ( shader ) ;
424424
425425 if ( ! gl . getShaderParameter ( shader , gl . COMPILE_STATUS ) )
426- throw gl . getShaderInfoLog ( shader ) ;
426+ console . trace ( gl . getShaderInfoLog ( shader ) ) ;
427427
428428 return shader ;
429429} ;
@@ -858,8 +858,10 @@ const vorticityShader = compileShader(gl.FRAGMENT_SHADER, `
858858 force *= curl * C;
859859 force.y *= -1.0;
860860
861- vec2 vel = texture2D(uVelocity, vUv).xy;
862- gl_FragColor = vec4(vel + force * dt, 0.0, 1.0);
861+ vec2 velocity = texture2D(uVelocity, vUv).xy;
862+ velocity += force * dt;
863+ velocity = min(max(velocity, -1000.0), 1000.0);
864+ gl_FragColor = vec4(velocity, 0.0, 1.0);
863865 }
864866` ) ;
865867
@@ -934,10 +936,17 @@ const blit = (() => {
934936 gl . clearColor ( 0.0 , 0.0 , 0.0 , 1.0 ) ;
935937 gl . clear ( gl . COLOR_BUFFER_BIT ) ;
936938 }
939+ // CHECK_FRAMEBUFFER_STATUS();
937940 gl . drawElements ( gl . TRIANGLES , 6 , gl . UNSIGNED_SHORT , 0 ) ;
938941 }
939942} ) ( ) ;
940943
944+ function CHECK_FRAMEBUFFER_STATUS ( ) {
945+ let status = gl . checkFramebufferStatus ( gl . FRAMEBUFFER ) ;
946+ if ( status != gl . FRAMEBUFFER_COMPLETE )
947+ console . trace ( "Framebuffer error: " + status ) ;
948+ }
949+
941950let dye ;
942951let velocity ;
943952let divergence ;
0 commit comments