diff options
Diffstat (limited to 'src/render/camera.cc')
-rw-r--r-- | src/render/camera.cc | 21 |
1 files changed, 4 insertions, 17 deletions
diff --git a/src/render/camera.cc b/src/render/camera.cc index c7749c4..875b147 100644 --- a/src/render/camera.cc +++ b/src/render/camera.cc @@ -9,6 +9,7 @@ #include "math/matrix4f.h" #include "render/camera.h" #include "render/gl.h" +#include "render/state.h" #include "sys/sys.h" using math::degrees360f; @@ -22,12 +23,9 @@ const float MIN_DELTA = 10e-10; const float pitch_track = -15.0f; const float pitch_overview = -5.0f; -float Camera::camera_aspect = 1.0f; -int Camera::camera_width = 0; -int Camera::camera_height = 0; - float Camera::camera_frustum_size = 0.5f; float Camera::camera_frustum_front = 1.0f; + math::Vector3f Camera::camera_eye; math::Vector3f Camera::camera_target; math::Axis Camera::camera_axis; @@ -48,10 +46,6 @@ float Camera::distance; void Camera::init() { - camera_aspect = 1.0f; - camera_height = 0; - camera_width = 0; - camera_frustum_size = 0.5f; camera_frustum_front = 1.0f; @@ -80,13 +74,6 @@ void Camera::shutdown() { } -void Camera::resize(int width, int height) -{ - camera_width = width; - camera_height = height; - camera_aspect = (float) width / (float) height; -} - void Camera::set_mode(Mode newmode) { direction_target = 0; @@ -344,7 +331,7 @@ void Camera::frustum() gl::matrixmode(GL_PROJECTION); gl::loadidentity(); - gl::frustum(-camera_frustum_size, camera_frustum_size, -camera_frustum_size/Camera::aspect(), camera_frustum_size/Camera::aspect(), camera_frustum_front, 1023.0f); + gl::frustum(-camera_frustum_size, camera_frustum_size, -camera_frustum_size/State::aspect(), camera_frustum_size/State::aspect(), camera_frustum_front, 1023.0f); gl::matrixmode(GL_MODELVIEW); gl::loadidentity(); @@ -365,7 +352,7 @@ void Camera::ortho() // switch to orthographic projection gl::matrixmode(GL_PROJECTION); gl::loadidentity(); - glOrtho(0, camera_width, camera_height, 0, -16.0f, 16.0f); + glOrtho(0, State::width(), State::height(), 0, -16.0f, 16.0f); gl::matrixmode(GL_MODELVIEW); gl::loadidentity(); |