Golias Engine
A C++ 20 'game engine' built with SDL3 with wide platform support.
Public Member Functions | Public Attributes | List of all members
Camera3D Struct Reference

3D Camera More...

#include <components.h>

Public Member Functions

 Camera3D ()
 
glm::mat4 get_view (const Transform3D &transform) const
 
glm::mat4 get_projection (int w, int h) const
 
void move_forward (Transform3D &transform, float dt)
 
void move_backward (Transform3D &transform, float dt)
 
void move_left (Transform3D &transform, float dt)
 
void move_right (Transform3D &transform, float dt)
 
void look_at (float xoffset, float yoffset, float sensitivity=0.1f)
 
void zoom (float yoffset)
 

Public Attributes

float yaw = -90.0f
 
float pitch = 0.0f
 
float fov = 45.0f
 
float speed = 5.0f
 
float view_distance = 1000.f
 

Detailed Description

3D Camera

Version
0.0.1

Constructor & Destructor Documentation

◆ Camera3D()

Camera3D::Camera3D ( )
inlineexplicit

Member Function Documentation

◆ get_projection()

glm::mat4 Camera3D::get_projection ( int  w,
int  h 
) const

◆ get_view()

glm::mat4 Camera3D::get_view ( const Transform3D transform) const

◆ look_at()

void Camera3D::look_at ( float  xoffset,
float  yoffset,
float  sensitivity = 0.1f 
)

◆ move_backward()

void Camera3D::move_backward ( Transform3D transform,
float  dt 
)

◆ move_forward()

void Camera3D::move_forward ( Transform3D transform,
float  dt 
)

◆ move_left()

void Camera3D::move_left ( Transform3D transform,
float  dt 
)

◆ move_right()

void Camera3D::move_right ( Transform3D transform,
float  dt 
)

◆ zoom()

void Camera3D::zoom ( float  yoffset)

Member Data Documentation

◆ fov

float Camera3D::fov = 45.0f

◆ pitch

float Camera3D::pitch = 0.0f

◆ speed

float Camera3D::speed = 5.0f

◆ view_distance

float Camera3D::view_distance = 1000.f

◆ yaw

float Camera3D::yaw = -90.0f

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