anchor.diff:          let rotationOffset = env.SpriteIndex
           env.Rotations.[rotationOffset] <- rotation
           let texCoordsOffset = env.SpriteIndex * 4
  -        env.TexCoordses.[texCoordsOffset] <- texCoords.Position.X
  -        env.TexCoordses.[texCoordsOffset + 1] <- 1.0f - texCoords.Position.Y
  -        env.TexCoordses.[texCoordsOffset + 2] <- texCoords.Size.X
  -        env.TexCoordses.[texCoordsOffset + 3] <- -texCoords.Size.Y
  +        env.TexCoordses.[texCoordsOffset] <- if flipH then texCoords.Position.X + texCoords.Size.X else texCoords.Position.X
  +        env.TexCoordses.[texCoordsOffset + 1] <- if flipV then 1.0f - texCoords.Position.Y + texCoords.Size.Y else 1.0f - texCoords.Position.Y
  +        env.TexCoordses.[texCoordsOffset + 2] <- if flipH then -texCoords.Size.X else texCoords.Size.X
  +        env.TexCoordses.[texCoordsOffset + 3] <- if flipV then texCoords.Size.Y else -texCoords.Size.Y
           let colorOffset = env.SpriteIndex * 4
           env.Colors.[colorOffset] <- color.R
           env.Colors.[colorOffset + 1] <- color.G
  
positive.code:             RestartBatch state env
              OpenGL.Hl.Assert ()
  
          // compute a coord flipping value
          let flipper =
              match flip with
              | FlipNone -> v2 1.0f -1.0f
              | FlipH -> v2 -1.0f -1.0f
              | FlipV -> v2 1.0f 1.0f
              | FlipHV -> v2 -1.0f 1.0f
  
          // populate vertices
          let perimeter = box2 position size
          PopulateVertex perimeter pivot rotation texCoords color env
  
          // advance sprite index
          env.SpriteIndex <- inc env.SpriteIndex
  
negative.code:         OpenGL.Hl.Assert (fn ())
          BeginBatch state env
  
      let inline private PopulateVertex (perimeter : Box2) (pivot : Vector2) (rotation : single) (texCoords : Box2) flipH flipV (color : Color) env =
          let perimeterOffset = env.SpriteIndex * 4
          env.Perimeters.[perimeterOffset] <- perimeter.Position.X
          env.Perimeters.[perimeterOffset + 1] <- perimeter.Position.Y
  