anchor.diff:    }
   }
   
  +
  +int _ChannelsToFormat(int channels) {
  +  switch (channels) {
  +    case 4:
  +      return GL_RGBA;
  +    case 2:
  +      return GL_RG;
  +    default:
  +      assert(false);
  +      return -1;
  +  }
  +}
  +
   class Framebuffer {
     ChronosGL _cgl;
   
  
positive.code: 
    Framebuffer(this._cgl, this.colorTexture,
        [this.depthTexture,
        this.stencilTexture,
        bool depthStencilCombined = false]) {
      _framebuffer = _cgl.createFramebuffer();
  
      _cgl.bindFramebuffer(GL_FRAMEBUFFER, _framebuffer);
  
negative.code: part of core;
  
  const int GL_CLEAR_ALL =
  GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT | GL_STENCIL_BUFFER_BIT;
  
  int TextureChannelsByType(int format) {
    switch (format) {
  