summaryrefslogtreecommitdiffstats
path: root/core/math/camera_matrix.h
diff options
context:
space:
mode:
Diffstat (limited to 'core/math/camera_matrix.h')
-rw-r--r--core/math/camera_matrix.h16
1 files changed, 16 insertions, 0 deletions
diff --git a/core/math/camera_matrix.h b/core/math/camera_matrix.h
index b5c75ca562..60f7d15974 100644
--- a/core/math/camera_matrix.h
+++ b/core/math/camera_matrix.h
@@ -75,6 +75,7 @@ struct CameraMatrix {
bool get_endpoints(const Transform &p_transform, Vector3 *p_8points) const;
Vector2 get_viewport_half_extents() const;
+ void get_far_plane_size(real_t &r_width, real_t &r_height) const;
void invert();
CameraMatrix inverse() const;
@@ -93,6 +94,21 @@ struct CameraMatrix {
void flip_y();
+ bool operator==(const CameraMatrix &p_cam) const {
+ for (uint32_t i = 0; i < 4; i++) {
+ for (uint32_t j = 0; j < 4; j++) {
+ if (matrix[i][j] != p_cam.matrix[i][j]) {
+ return false;
+ }
+ }
+ }
+ return true;
+ }
+
+ bool operator!=(const CameraMatrix &p_cam) const {
+ return !(*this == p_cam);
+ }
+
CameraMatrix();
CameraMatrix(const Transform &p_transform);
~CameraMatrix();