46 lines
1.1 KiB
C++
46 lines
1.1 KiB
C++
////////////////////////////////////////////////////////////////////////////////
|
|
// Filename: cameraclass.h
|
|
////////////////////////////////////////////////////////////////////////////////
|
|
#ifndef _CAMERACLASS_H_
|
|
#define _CAMERACLASS_H_
|
|
|
|
|
|
//////////////
|
|
// INCLUDES //
|
|
//////////////
|
|
#include <directxmath.h>
|
|
using namespace DirectX;
|
|
|
|
|
|
////////////////////////////////////////////////////////////////////////////////
|
|
// Class name: camera_class
|
|
////////////////////////////////////////////////////////////////////////////////
|
|
class camera_class
|
|
{
|
|
public:
|
|
camera_class();
|
|
camera_class(const camera_class&);
|
|
~camera_class();
|
|
|
|
void set_position(float, float, float);
|
|
void set_rotation(float, float, float);
|
|
|
|
XMFLOAT3 get_position();
|
|
XMFLOAT3 get_rotation();
|
|
|
|
|
|
void render();
|
|
XMMATRIX get_view_matrix(XMMATRIX& view_matrix) const;
|
|
|
|
void render_reflection(float);
|
|
void get_reflection_view_matrix(XMMATRIX&) const;
|
|
|
|
private:
|
|
float position_x_, position_y_, position_z_;
|
|
float rotation_x_, rotation_y_, rotation_z_;
|
|
XMMATRIX view_matrix_;
|
|
XMMATRIX reflection_view_matrix_;
|
|
|
|
};
|
|
|
|
#endif |