anchor.diff:    DefaultCoordsAttrib := glGetAttribLocation(DefaultProgram, PChar('coords'));
     UVAttrib:=glGetAttribLocation(DefaultProgram, PChar('uv'));
   
  -  //UseFlagUniform:=glGetUniformLocation(DefaultProgram, PChar('useFlag'));
  -  //UsePaletteUniform:=glGetUniformLocation(DefaultProgram, PChar('usePalette'));
  +  UseFlagUniform:=glGetUniformLocation(DefaultProgram, PChar('useFlag'));
  +  UsePaletteUniform:=glGetUniformLocation(DefaultProgram, PChar('usePalette'));
     UseTextureUniform:=glGetUniformLocation(DefaultProgram, PChar('useTexture'));
   
     PaletteUniform:=glGetUniformLocation(DefaultProgram, PChar('palette'));
  
positive.code: 
    'vec4 applyFlag(vec4 inColor)' +
    '{'+
      // 'if(useFlag == 1)'+
       '{'+
          'if(all(greaterThanEqual(inColor,maskColor-eps)) && all(lessThanEqual(inColor,maskColor+eps)))'+
          '  return flagColor;'+
  
negative.code: 
  procedure TShaderContext.SetUseFlag(const Value: Boolean);
  begin
    glUniform1i(UseFlagUniform, ifthen(Value, 1, 0));
  end;
  
  procedure TShaderContext.SetUsePalette(const Value: Boolean);
  begin
    glUniform1i(UsePaletteUniform, ifthen(Value, 1, 0));
  end;
  
  procedure TShaderContext.SetUseTexture(const Value: Boolean);
  