Переглянути джерело

orbital: play with the camera.

legacy
Sam Hocevar sam 12 роки тому
джерело
коміт
2723dabfac
2 змінених файлів з 8 додано та 1 видалено
  1. +7
    -1
      src/camera.cpp
  2. +1
    -0
      src/camera.h

+ 7
- 1
src/camera.cpp Переглянути файл

@@ -45,6 +45,11 @@ void Camera::SetPosition(vec3 const &pos)
m_position = pos;
}

void Camera::SetRotation(quat const &rot)
{
m_rotation = rot;
}

void Camera::SetOrtho(float width, float height, float near, float far)
{
m_proj_matrix = mat4::ortho(width, height, near, far);
@@ -93,7 +98,8 @@ void Camera::TickGame(float seconds)
m_position += vec3(rightleft, pgupdown, -updown) * 200.f * seconds;
m_target += vec3(rightleft, 0, -updown) * 200.f * seconds;

m_view_matrix = mat4::lookat(m_position, m_target, m_up);
m_view_matrix = mat4::lookat(m_position, m_target, m_up)
* mat4(m_rotation);
}

void Camera::TickDraw(float seconds)


+ 1
- 0
src/camera.h Переглянути файл

@@ -30,6 +30,7 @@ public:
char const *GetName() { return "<camera>"; }

void SetPosition(vec3 const &pos);
void SetRotation(quat const &rot);
void SetOrtho(float width, float height, float near, float far);
void SetPerspective(float fov, float width, float height,
float near, float far);


Завантаження…
Відмінити
Зберегти