lib/gamnit depth: intro `Plane::repeat_x|y`
authorAlexis Laferrière <alexis.laf@xymus.net>
Fri, 22 Jan 2016 19:05:56 +0000 (14:05 -0500)
committerAlexis Laferrière <alexis.laf@xymus.net>
Mon, 25 Jan 2016 16:54:33 +0000 (11:54 -0500)
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>

lib/gamnit/depth/more_meshes.nit

index fe3f9df..9f2318a 100644 (file)
@@ -24,6 +24,22 @@ class Plane
 
        # TODO allow for complex rotation, either at creation or in Actor
 
+       # Modifier to `texture_coords` to repeat the texture on the X axis
+       #
+       # At 1.0, the texture is stretched to cover the whole plane.
+       # If greater than 1.0, the texture is repeated.
+       #
+       # This value must be set before using `texture_coords` or drawing this plane.
+       var repeat_x = 1.0 is writable
+
+       # Modifier to `texture_coords` to repeat the texture on the Y axis
+       #
+       # At 1.0, the texture is stretched to cover the whole plane.
+       # If greater than 1.0, the texture is repeated.
+       #
+       # This value must be set before using `texture_coords` or drawing this plane.
+       var repeat_y = 1.0 is writable
+
        redef var vertices is lazy do
                var a = [-0.5, 0.0, -0.5]
                var b = [ 0.5, 0.0, -0.5]
@@ -44,8 +60,8 @@ class Plane
        redef var texture_coords: Array[Float] is lazy do
                var offset_left = 0.0
                var offset_top = 0.0
-               var offset_right = 1.0
-               var offset_bottom = 1.0
+               var offset_right = 1.0*repeat_x
+               var offset_bottom = 1.0*repeat_y
                var a = [offset_left,  offset_bottom]
                var b = [offset_right, offset_bottom]
                var c = [offset_left,  offset_top]