anchor.diff:                  match renderAsset with
                   | FontAsset (_, font) ->
                   
  -                    // construct sdl color
  -                    let mutable colorSdl = SDL.SDL_Color ()
  -                    colorSdl.r <- color.R8
  -                    colorSdl.g <- color.G8
  -                    colorSdl.b <- color.B8
  -                    colorSdl.a <- color.A8
  -
  +                    // 
                       // NOTE: the resource implications (throughput and fragmentation?) of creating and destroying a
                       // texture one or more times a frame must be understood!
                       let (offset, textSurface) =
  +                        let mutable colorSdl = SDL.SDL_Color ()
  +                        colorSdl.r <- color.R8
  +                        colorSdl.g <- color.G8
  +                        colorSdl.b <- color.B8
  +                        colorSdl.a <- color.A8
                           match justification with
                           | Unjustified wrapped ->
                               let textSurface =
  
positive.code:         box2i v2iZero (v2i Constants.Render.ResolutionX Constants.Render.ResolutionY)
  
      /// Compute the 2d absolute view matrix.
      static member computeViewAbsolute (_ : Vector2) (eyeSize : Vector2) eyeMargin =
          let translation = eyeSize * 0.5f * Constants.Render.VirtualScalar2 - eyeMargin * Constants.Render.VirtualScalar2
          Matrix4x4.CreateTranslation (v3 translation.X translation.Y 1.0f)
  
      /// Compute the 2d relative view matrix.
      static member computeViewRelative (eyePosition : Vector2) (eyeSize : Vector2) eyeMargin =
          let translation = -eyePosition * Constants.Render.VirtualScalar2 + eyeSize * 0.5f * Constants.Render.VirtualScalar2 - eyeMargin * Constants.Render.VirtualScalar2
          Matrix4x4.CreateTranslation (v3 translation.X translation.Y 1.0f)
  
  
negative.code:                         OpenGL.Hl.FlipSurface &textSurface
  
                          // construct mvp matrix
                          let translation = (position + offset + size * 0.5f).V3
                          let scale = v3 (single textSurface.w) (single textSurface.h) 1.0f
                          let modelTranslation = Matrix4x4.CreateTranslation translation
                          let modelScale = Matrix4x4.CreateScale scale
                          let modelMatrix = modelScale * modelTranslation
                          let modelViewProjection = modelMatrix * viewProjection
  
  