]> git.tdb.fi Git - libs/gl.git/commitdiff
Fix 4th column of camera matrix
authorMikko Rasa <tdb@tdb.fi>
Wed, 24 Feb 2010 21:56:25 +0000 (21:56 +0000)
committerMikko Rasa <tdb@tdb.fi>
Wed, 24 Feb 2010 21:56:25 +0000 (21:56 +0000)
Add getters for camera lens parameters

source/camera.cpp
source/camera.h

index b392f672380ed4a98c77a986d09e7f80e0dac81b..c63fc9307f646e0ae559396d8eac79d9f6d32a7c 100644 (file)
@@ -137,9 +137,9 @@ void Camera::compute_matrix()
        matrix[6] = -look_dir.y;
        matrix[10] = -look_dir.z;
 
-       matrix[12] = -position.x;
-       matrix[13] = -position.y;
-       matrix[14] = -position.z;
+       matrix[12] = -position.x*matrix[0]-position.y*matrix[4]-position.z*matrix[8];
+       matrix[13] = -position.x*matrix[1]-position.y*matrix[5]-position.z*matrix[9];
+       matrix[14] = -position.x*matrix[2]-position.y*matrix[6]-position.z*matrix[10];
 }
 
 } // namespace GL
index 8be79abf9715195d0c5feb978b239c8c925bfa9c..a2d2993afeedd83500e0f1a490f3f100b91a3f2f 100644 (file)
@@ -32,6 +32,10 @@ public:
        void set_field_of_view(float);
        void set_aspect(float);
        void set_depth_clip(float, float);
+       float get_field_of_view() const { return fov; }
+       float get_aspect() const { return aspect; }
+       float get_near_clip() const { return clip_near; }
+       float get_far_clip() const { return clip_far; }
 
        void set_position(const Vector3 &);
        void set_look_direction(const Vector3 &);