position_(0.0, 0.0, 0.0)
{
quaternion_rotation_world_y(rotation_, 0.0);
- srcRotation_ = rotation_;
- dstRotation_ = rotation_;
calculateSecondary();
}
void setPosition(const Vector3& point);
void setRotation(const Quaternion& rotation);
+ void setProjection(const Matrix4& projection);
+ void setProjection(Scalar fovy, Scalar aspect, Scalar near, Scalar far);
+
+ void uploadProjectionToGL() const;
+
void lookAt(const Vector3& point);
- const Matrix4& getTransformation() const
+ const Matrix4& getModelviewMatrix() const
{
- return transformation_;
+ return modelview_;
}
const Frustum& getFrustum() const
private:
Vector3 position_;
Quaternion rotation_;
+ Matrix4 projection_;
- Matrix4 transformation_;
+ Matrix4 modelview_;
Frustum frustum_;
Lerpv3 pInterp_;
-
- Quaternion srcRotation_;
- Quaternion dstRotation_;
- Scalar tInterp_;
};