Bomberman
Public Member Functions | Private Attributes | List of all members
RAY::Camera::Camera3D Class Reference

Entity representing a Camera in 3D space. More...

#include <Camera3D.hpp>

Inheritance diagram for RAY::Camera::Camera3D:
Collaboration diagram for RAY::Camera::Camera3D:

Public Member Functions

 Camera3D (const Vector3 &position, const Vector3 &target, const Vector3 &up, float fovy, Projection projection)
 3D Camera constructor More...
 
 Camera3D (const Camera3D &)=default
 A copy constructor. More...
 
 ~Camera3D () override=default
 
Camera3Doperator= (const Camera3D &)=default
 A Camera is assignable. More...
 
void setPosition (const Vector3 &Position)
 Set Position. More...
 
void setTarget (const Vector3 &target)
 Set target. More...
 
void setUp (const Vector3 &up)
 Set up. More...
 
void setFovy (float fovy)
 Set fovy. More...
 
void setProjection (Projection projection)
 Set Projection. More...
 
Vector3 getPosition (void) const
 Get Position. More...
 
Vector3 getTarget (void) const
 Get target. More...
 
Vector3 getUp (void) const
 Get up. More...
 
float getFovy (void) const
 Get Fovy. More...
 
Projection getProjection (void) const
 Get projection. More...
 
Matrix getMatrix (void) const override
 Returns camera 3d transform matrix. More...
 
void setMode (Mode mode)
 Set camera mode (multiple camera modes available) More...
 
void update (void)
 Update camera position for selected mode. More...
 
- Public Member Functions inherited from RAY::Camera::ICamera
virtual ~ICamera ()=default
 

Private Attributes

::Camera3D _camera
 
Mode _mode
 
INTERNAL __pad0__: operator ::Camera3D() const
 

Detailed Description

Entity representing a Camera in 3D space.

Constructor & Destructor Documentation

◆ Camera3D() [1/2]

RAY::Camera::Camera3D::Camera3D ( const Vector3 position,
const Vector3 target,
const Vector3 up,
float  fovy,
Projection  projection 
)

3D Camera constructor

Parameters
positionCamera position
targetCamera target it looks-at
upCamera up vector (rotation over its axis)
fovyCamera field-of-view apperture in Y (degrees) in perspective, used as near plane width in orthographic
projectionCamera projection: CAMERA_PERSPECTIVE or CAMERA_ORTHOGRAPHIC

◆ Camera3D() [2/2]

RAY::Camera::Camera3D::Camera3D ( const Camera3D )
default

A copy constructor.

◆ ~Camera3D()

RAY::Camera::Camera3D::~Camera3D ( )
overridedefault

Member Function Documentation

◆ getFovy()

float RAY::Camera::Camera3D::getFovy ( void  ) const

Get Fovy.

◆ getMatrix()

Matrix RAY::Camera::Camera3D::getMatrix ( void  ) const
overridevirtual

Returns camera 3d transform matrix.

Implements RAY::Camera::ICamera.

◆ getPosition()

RAY::Vector3 RAY::Camera::Camera3D::getPosition ( void  ) const

Get Position.

◆ getProjection()

RAY::Camera::Projection RAY::Camera::Camera3D::getProjection ( void  ) const

Get projection.

◆ getTarget()

RAY::Vector3 RAY::Camera::Camera3D::getTarget ( void  ) const

Get target.

◆ getUp()

RAY::Vector3 RAY::Camera::Camera3D::getUp ( void  ) const

Get up.

◆ operator=()

Camera3D& RAY::Camera::Camera3D::operator= ( const Camera3D )
default

A Camera is assignable.

◆ setFovy()

void RAY::Camera::Camera3D::setFovy ( float  fovy)

Set fovy.

◆ setMode()

void RAY::Camera::Camera3D::setMode ( Mode  mode)

Set camera mode (multiple camera modes available)

◆ setPosition()

void RAY::Camera::Camera3D::setPosition ( const Vector3 Position)

Set Position.

◆ setProjection()

void RAY::Camera::Camera3D::setProjection ( Projection  projection)

Set Projection.

◆ setTarget()

void RAY::Camera::Camera3D::setTarget ( const Vector3 target)

Set target.

◆ setUp()

void RAY::Camera::Camera3D::setUp ( const Vector3 up)

Set up.

◆ update()

void RAY::Camera::Camera3D::update ( void  )

Update camera position for selected mode.

Member Data Documentation

◆ __pad0__

INTERNAL RAY::Camera::Camera3D::__pad0__
private

◆ _camera

::Camera3D RAY::Camera::Camera3D::_camera
private

◆ _mode

Mode RAY::Camera::Camera3D::_mode
private

The documentation for this class was generated from the following files: