/src/renderer/camera.h

https://bitbucket.org/vivkin/gam3b00bs/ · C Header · 31 lines · 26 code · 5 blank · 0 comment · 0 complexity · 71b8d797bb022dbba4f1ffad0384912e MD5 · raw file

  1. #ifndef CAMERA_H
  2. #define CAMERA_H
  3. #include "common.h"
  4. #include "camera.h"
  5. #include <d3d9.h>
  6. #include <d3dx9.h>
  7. struct camera_t
  8. {
  9. D3DXMATRIX view, projection;
  10. D3DXVECTOR3 position;
  11. D3DXVECTOR3 target;
  12. float angle;
  13. float radius;
  14. float phi;
  15. float fov;
  16. float aspect;
  17. float znear;
  18. float zfar;
  19. };
  20. void camera_look_at(camera_t &camera, const D3DXVECTOR3 &position, const D3DXVECTOR3 &center, const D3DXVECTOR3 &up);
  21. void camera_perspective(camera_t &camera, float fov, float aspect, float znear, float zfar);
  22. void camera_rotate(camera_t &camera, float delta);
  23. void camera_move(camera_t &camera, float dx, float dz);
  24. void camera_update(camera_t &camera);
  25. void camera_zoom(camera_t &camera, float delta);
  26. #endif /* CAMERA_H */