anchor.diff:  
     var _x0, _x1, _x2;
     init() {
  +    //_x0 = gl.getExtension("OES_standard_derivatives");
  +    //_x1 = gl.getExtension("OES_texture_float");
  +    //_x2 = gl.getExtension("GL_EXT_draw_buffers");
  +    //print(">>>> extension $_x0 $_x1 $_x2");
       _initCamera();
       _initLight();
       _initPost();
  -    //_x0 = gl.getExtension("OES_standard_derivatives");
  -    _x1 = gl.getExtension("OES_texture_float");
  -    //_x2 = gl.getExtension("GL_EXT_draw_buffers");
  -    //print(">>>> extension $_x0 $_x1 $_x2");
     }
   
     _initCamera() {
  
positive.code:     cameraReq = new glf.RequestRunOn()
        ..ctx = ctx
        ..at = (ctx) {
          ctx.gl.uniform3f(ctx.getUniformLocation(glf.SFNAME_COLORS), 0.5, 0.5, 0.5);
          glf.makeNormalMatrix(transforms, normalMatrix);
          glf.injectMatrix4(ctx, transforms, glf.SFNAME_MODELMATRIX);
          glf.injectMatrix3(ctx, normalMatrix, glf.SFNAME_NORMALMATRIX);
          glf.injectTexture(ctx, tex, 0);
          glf.injectTexture(ctx, texNormal, 1, '_NormalMap0');
          glf.injectTexture(ctx, texDissolve0, 3, '_DissolveMap0');
  
negative.code:     lightReq = new glf.RequestRunOn()
        ..ctx = renderer.lightCtx
        ..at = (ctx) {
          glf.injectMatrix4(ctx, transforms, glf.SFNAME_MODELMATRIX);
          glf.injectMatrix3(ctx, normalMatrix, glf.SFNAME_NORMALMATRIX);
          mesh.injectAndDraw(ctx);
  