Skip to content

Class atlas::camera

ClassList > atlas > camera

More...

  • #include <components.hpp>

Public Attributes

Type Name
float AspectRatio = 0.f
glm::vec3 Down
glm::vec3 EulerRotation
bool IsMainCamera = false
glm::vec3 Left
float MouseSensitivity = {}
float MovementSpeed = {}
glm::vec3 Position
glm::mat4 Projection
glm::vec3 Right
glm::vec3 Up
glm::mat4 View
glm::vec3 WorldUp
float Zoom = {}
float camera_mouse_sensitivity = 2.5f
float camera_movement_sensitivity = 2.5f

Public Functions

Type Name
camera () = default
camera (float p_aspect_ratio, glm::vec3 position=glm::vec3(0.0f, 1.50f, 0.0f), glm::vec3 up=glm::vec3(0.0f, -1.0f, 0.0f), float yaw=-90.0f, float pitch=0.0f)
float camera_sensitivity () const
glm::vec3 get_front () const
glm::mat4 get_projection () const
glm::mat4 get_view () const
void process_keyboard (CameraMovement p_direction, float p_delta_time)
void process_mouse_movement (float p_x, float p_y, bool p_constraint_pitch=true)
void process_mouse_scroll (float yoffset)
void set_mouse_speed (float p_sensitivity)
void set_movement_speed (float p_sensitivity)
TODO: REMOVE THESE these should be user-defined.
void update_proj_view ()

Detailed Description

TODO: Camera class needs to strip out the following properties

  • Zoom

TODO: Camera should contain

  • Position

Public Attributes Documentation

variable AspectRatio

float atlas::camera::AspectRatio;

variable Down

glm::vec3 atlas::camera::Down;

variable EulerRotation

glm::vec3 atlas::camera::EulerRotation;

variable IsMainCamera

bool atlas::camera::IsMainCamera;

variable Left

glm::vec3 atlas::camera::Left;

variable MouseSensitivity

float atlas::camera::MouseSensitivity;

variable MovementSpeed

float atlas::camera::MovementSpeed;

variable Position

glm::vec3 atlas::camera::Position;

variable Projection

glm::mat4 atlas::camera::Projection;

variable Right

glm::vec3 atlas::camera::Right;

variable Up

glm::vec3 atlas::camera::Up;

variable View

glm::mat4 atlas::camera::View;

variable WorldUp

glm::vec3 atlas::camera::WorldUp;

variable Zoom

float atlas::camera::Zoom;

variable camera_mouse_sensitivity

float atlas::camera::camera_mouse_sensitivity;

variable camera_movement_sensitivity

float atlas::camera::camera_movement_sensitivity;

Public Functions Documentation

function camera [1/2]

atlas::camera::camera () = default

function camera [2/2]

inline atlas::camera::camera (
    float p_aspect_ratio,
    glm::vec3 position=glm::vec3(0.0f, 1.50f, 0.0f),
    glm::vec3 up=glm::vec3(0.0f, -1.0f, 0.0f),
    float yaw=-90.0f,
    float pitch=0.0f
) 

function camera_sensitivity

inline float atlas::camera::camera_sensitivity () const

function get_front

inline glm::vec3 atlas::camera::get_front () const

function get_projection

inline glm::mat4 atlas::camera::get_projection () const

function get_view

inline glm::mat4 atlas::camera::get_view () const

function process_keyboard

inline void atlas::camera::process_keyboard (
    CameraMovement p_direction,
    float p_delta_time
) 

function process_mouse_movement

inline void atlas::camera::process_mouse_movement (
    float p_x,
    float p_y,
    bool p_constraint_pitch=true
) 

function process_mouse_scroll

inline void atlas::camera::process_mouse_scroll (
    float yoffset
) 

function set_mouse_speed

inline void atlas::camera::set_mouse_speed (
    float p_sensitivity
) 

function set_movement_speed

TODO: REMOVE THESE these should be user-defined.

inline void atlas::camera::set_movement_speed (
    float p_sensitivity
) 


function update_proj_view

inline void atlas::camera::update_proj_view () 


The documentation for this class was generated from the following file TheAtlasEngine/atlas/core/scene/components.hpp