candlewick 0.1.0
A renderer
Loading...
Searching...
No Matches
candlewick::Camera Struct Reference

The main way of using a camera to render things. More...

#include <candlewick/core/Camera.h>

Public Member Functions

Eigen::Isometry3f pose () const
 
Float3 position () const
 
auto viewProj () const
 View-projection matrix \(\mathbf{P} \cdot \mathbf{V}\).
 
Float3 transformVector (const Float3 &v) const
 Transform a vector to view-space. This applies the view matrix linear part.
 
Float3 transformPoint (const Float3 &p) const
 Transform a point to view-space. This applies the view matrix as a 3D transform.
 
Shortcuts for the basis vectors of the pose matrix

i.e. the world-space camera orientation vectors.

Float3 right () const
 
auto right ()
 
Float3 up () const
 
auto up ()
 
Float3 forward () const
 

Public Attributes

Mat4f projection
 Projection matrix \(\mathbf{P}\).
 
Eigen::Isometry3f view
 Camera view matrix \(\mathbf{V}\)
 

Detailed Description

The main way of using a camera to render things.

Member Function Documentation

◆ forward()

Float3 candlewick::Camera::forward ( ) const
inline

◆ pose()

Eigen::Isometry3f candlewick::Camera::pose ( ) const
inline

Compute and return the camera pose matrix \(\mathbf{M} = \mathbf{V}^{-1}\)

◆ position()

Float3 candlewick::Camera::position ( ) const
inline

◆ right() [1/2]

auto candlewick::Camera::right ( )
inline

◆ right() [2/2]

Float3 candlewick::Camera::right ( ) const
inline

◆ transformPoint()

Float3 candlewick::Camera::transformPoint ( const Float3 & p) const
inline

Transform a point to view-space. This applies the view matrix as a 3D transform.

◆ transformVector()

Float3 candlewick::Camera::transformVector ( const Float3 & v) const
inline

Transform a vector to view-space. This applies the view matrix linear part.

◆ up() [1/2]

auto candlewick::Camera::up ( )
inline

◆ up() [2/2]

Float3 candlewick::Camera::up ( ) const
inline

◆ viewProj()

auto candlewick::Camera::viewProj ( ) const
inline

View-projection matrix \(\mathbf{P} \cdot \mathbf{V}\).

Member Data Documentation

◆ projection

Mat4f candlewick::Camera::projection

Projection matrix \(\mathbf{P}\).

◆ view

Eigen::Isometry3f candlewick::Camera::view

Camera view matrix \(\mathbf{V}\)


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