lib/gamnit: invert Y axis so higher values are higher on the screen
authorAlexis Laferrière <alexis.laf@xymus.net>
Mon, 1 Feb 2016 16:42:18 +0000 (11:42 -0500)
committerAlexis Laferrière <alexis.laf@xymus.net>
Fri, 5 Feb 2016 23:17:03 +0000 (18:17 -0500)
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>

lib/gamnit/cameras.nit
lib/gamnit/flat.nit

index 0d64395..a1eed2f 100644 (file)
@@ -209,7 +209,7 @@ class UICamera
        end
 
        # Center of the screen, from the point of view of the camera, at z = 0
-       fun center: Point3d[Float] do return new Point3d[Float](position.x + width / 2.0, position.y + height / 2.0, 0.0)
+       fun center: Point3d[Float] do return new Point3d[Float](position.x + width / 2.0, position.y - height / 2.0, 0.0)
 
        # Anchor in the top left corner of the screen, at z = 0
        fun top_left: Point3d[Float] do return new Point3d[Float](position.x, position.y, 0.0)
@@ -218,10 +218,10 @@ class UICamera
        fun top_right: Point3d[Float] do return new Point3d[Float](position.x + width, position.y, 0.0)
 
        # Anchor in the bottom left corner of the screen, at z = 0
-       fun bottom_left: Point3d[Float] do return new Point3d[Float](position.x, position.y + height, 0.0)
+       fun bottom_left: Point3d[Float] do return new Point3d[Float](position.x, position.y - height, 0.0)
 
        # Anchor in the bottom right corner of the screen, at z = 0
-       fun bottom_right: Point3d[Float] do return new Point3d[Float](position.x + width, position.y + height, 0.0)
+       fun bottom_right: Point3d[Float] do return new Point3d[Float](position.x + width, position.y - height, 0.0)
 
        # TODO cache the anchors and the matrix
 
index 1936763..b489f1c 100644 (file)
@@ -83,7 +83,7 @@ class Sprite
                simple_2d_program.color.array_enabled = false
                simple_2d_program.scale.array_enabled = false
 
-               simple_2d_program.translation.uniform(center.x, -center.y, center.z, 0.0)
+               simple_2d_program.translation.uniform(center.x, center.y, center.z, 0.0)
                simple_2d_program.color.uniform(tint[0], tint[1], tint[2], tint[3])
                simple_2d_program.scale.uniform scale