JuicyGraphics/src/JuicyGraphics/renderer/camera2D.cs
2019-02-14 15:46:16 +01:00

36 lines
771 B
C#

using SharpGL;
using System;
using System.Numerics;
namespace Graphics {
class camera2D {
protected Matrix mat;
public Vector2 translation {
get {
return new Vector2((float)mat[0, 3], (float)mat[1, 3]);
}
set {
mat[0, 3] = value.X;
mat[1, 3] = value.Y;
}
}
const double maxScale = 18.0;
public double scale {
get {
return mat[0, 0];
}
set {
mat[0, 0] = Math.Min(value, maxScale);
mat[1, 1] = Math.Min(value, maxScale);
}
}
public camera2D() {
mat = new Matrix(Matrix.Identity(4));
}
}
}