GlistEngine
Loading...
Searching...
No Matches
gCamera Class Reference

#include <gCamera.h>

Inheritance diagram for gCamera:
Collaboration diagram for gCamera:

Classes

struct  Frustum
 
struct  Plane
 

Public Member Functions

 gCamera (glm::vec3 camPosition=glm::vec3(0.0f, 0.0f, 0.0f))
 
 gCamera (float posX, float posY, float posZ)
 
virtual ~gCamera ()
 
void begin ()
 
void end ()
 
void setFov (float f)
 
void setNearClip (float nearClip)
 
void setFarClip (float farClip)
 
float getNearClip () const
 
float getFarClip () const
 
float getFov () const
 
void move (float dx, float dy, float dz)
 
void move (const glm::vec3 dv)
 
void rotate (const glm::quat &q)
 
void rotate (float radians, float ax, float ay, float az)
 
void rotateDeg (float angle, float ax, float ay, float az)
 
void rotateAround (float radians, const glm::vec3 &axis, const glm::vec3 &point)
 
void rotateAroundDeg (float degrees, const glm::vec3 &axis, const glm::vec3 &point)
 
void scale (float sx, float sy, float sz)
 
void scale (float s)
 
void setPosition (float px, float py, float pz)
 
void setPosition (const glm::vec3 pv)
 
void setOrientation (const glm::quat &o)
 
void setOrientation (const glm::vec3 &angles)
 
void setScale (const glm::vec3 &s)
 
void setScale (float sx, float sy, float sz)
 
void setScale (float s)
 
void dolly (float distance)
 
void truck (float distance)
 
void boom (float distance)
 
void tilt (float radians)
 
void pan (float radians)
 
void roll (float radians)
 
void tiltDeg (float degrees)
 
void panDeg (float degrees)
 
void rollDeg (float degrees)
 
void lookAt (const glm::vec3 &point)
 
void rotateLook (float angle, float ax, float ay, float az)
 
void resetLook ()
 
const glm::mat4 & getLookMatrix () const
 
const glm::quat & getLookOrientation () const
 
void drawGizmos ()
 
bool isInFrustum (const gBoundingBox &box) const
 
- Public Member Functions inherited from gNode
 gNode ()
 
virtual ~gNode ()
 
void move (float dx, float dy, float dz)
 
void move (const glm::vec3 &dv)
 
void rotate (const glm::quat &q)
 
void rotate (float radians, float ax, float ay, float az)
 
void rotateDeg (float degrees, float ax, float ay, float az)
 
void rotateAround (float radians, const glm::vec3 &axis, const glm::vec3 &point)
 
void rotateAroundDeg (float degrees, const glm::vec3 &axis, const glm::vec3 &point)
 
void scale (float sx, float sy, float sz)
 
void scale (float s)
 
void setPosition (float px, float py, float pz)
 
void setPosition (const glm::vec3 &pv)
 
void setOrientation (const glm::quat &o)
 
void setOrientation (const glm::vec3 &angles)
 
void setScale (const glm::vec3 &s)
 
void setScale (float sx, float sy, float sz)
 
void setScale (float s)
 
void truck (float distance)
 
void boom (float distance)
 
void dolly (float distance)
 
void tilt (float radians)
 
void tiltDeg (float degrees)
 
void pan (float radians)
 
void panDeg (float degrees)
 
void roll (float radians)
 
void rollDeg (float degrees)
 
float getPosX () const
 
float getPosY () const
 
float getPosZ () const
 
const glm::vec3 & getPosition () const
 
const glm::quat & getOrientation () const
 
const glm::vec3 & getScale () const
 
glm::vec3 getScalarDirectionX () const
 
glm::vec3 getScalarDirectionY () const
 
glm::vec3 getScalarDirectionZ () const
 
void setTransformationMatrix (const glm::mat4 &transformationMatrix)
 
const glm::mat4 & getTransformationMatrix () const
 
int getId () const
 
void setParent (gNode *parent)
 
gNodegetParent () const
 
void removeParent ()
 
void addChild (gNode *child)
 
void removeChild (gNode *child)
 
void removeChild (int gObjectId)
 
void setEnabled (bool isEnabled)
 
bool isEnabled () const
 
void pushMatrix () const
 
void popMatrix () const
 
- Public Member Functions inherited from gRenderObject
 gRenderObject ()
 
int getScreenWidth ()
 
int getScreenHeight ()
 
void pushMatrix ()
 
void popMatrix ()
 
- Public Member Functions inherited from gObject
 gObject ()
 
void logi (std::string message)
 
void logd (std::string message)
 
void logw (std::string message)
 
void loge (std::string message)
 
void logi (std::string tag, std::string message)
 
void logd (std::string tag, std::string message)
 
void logw (std::string tag, std::string message)
 
void loge (std::string tag, std::string message)
 

Protected Member Functions

void processLookMatrix ()
 
void rotateGizmos (const glm::quat &o)
 
void rotateGizmos (float radians, float ax, float ay, float az)
 
void rotateDegGizmos (float angle, float ax, float ay, float az)
 
void setOrientationGizmos (const glm::quat &o)
 
void tiltGizmos (float radians)
 
void panGizmos (float radians)
 
void rollGizmos (float radians)
 
void tiltDegGizmos (float degrees)
 
void panDegGizmos (float degrees)
 
void rollDegGizmos (float degrees)
 
- Protected Member Functions inherited from gNode
virtual void processTransformationMatrix ()
 

Protected Attributes

float fov
 
float nearclip
 
float farclip
 
Frustum frustum
 
glm::vec3 lookposition
 
glm::quat lookorientation
 
glm::vec3 lookscalevec
 
glm::mat4 locallookmatrix
 
gSkyboxgizmos
 
- Protected Attributes inherited from gNode
gNodeparent
 
std::deque< gNode * > children
 
glm::mat4 localtransformationmatrix
 
bool isenabled
 
glm::vec3 position
 
glm::quat orientation
 
glm::vec3 scalevec
 
glm::vec3 prevposition
 
glm::quat prevorientation
 
glm::vec3 prevscalevec
 

Additional Inherited Members

- Static Public Member Functions inherited from gRenderObject
static void setScreenSize (int screenWidth, int screenHeight)
 
static void setUnitScreenSize (int unitWidth, int unitHeight)
 
static void setScreenScaling (int screenScaling)
 
static void enableShadowMapping ()
 
static void disableShadowMapping ()
 
static bool isShadowMappingEnabled ()
 
static gRenderergetRenderer ()
 
static void destroyRenderer ()
 
static void createRenderer ()
 
- Static Public Member Functions inherited from gObject
static std::string gGetAppDir ()
 
static std::string gGetAssetsDir ()
 
static void gSetAssetsDir (std::string assetsDir)
 
static std::string gGetFilesDir ()
 
static std::string gGetImagesDir ()
 
static std::string gGetFontsDir ()
 
static std::string gGetModelsDir ()
 
static std::string gGetTexturesDir ()
 
static std::string gGetShadersDir ()
 
static std::string gGetSoundsDir ()
 
static std::string gGetDatabasesDir ()
 
static std::string gGetVideosDir ()
 
static void setCurrentResolution (int scalingNo, int currentResolutionNo)
 
- Static Public Attributes inherited from gObject
static const int LOGLEVEL_SILENT
 
static const int LOGLEVEL_DEBUG
 
static const int LOGLEVEL_INFO
 
static const int LOGLEVEL_WARNING
 
static const int LOGLEVEL_ERROR
 
- Static Protected Attributes inherited from gRenderObject
static bool isshadowmappingenabled
 
- Static Protected Attributes inherited from gObject
static int renderpassnum
 
static int renderpassno
 
static int releasescaling
 
static int releaseresolution
 

Constructor & Destructor Documentation

◆ gCamera() [1/2]

gCamera::gCamera ( glm::vec3  camPosition = glm::vec3(0.0f, 0.0f, 0.0f))

◆ gCamera() [2/2]

gCamera::gCamera ( float  posX,
float  posY,
float  posZ 
)

◆ ~gCamera()

virtual gCamera::~gCamera ( )
virtual

Member Function Documentation

◆ begin()

void gCamera::begin ( )

◆ boom()

void gCamera::boom ( float  distance)

◆ dolly()

void gCamera::dolly ( float  distance)

◆ drawGizmos()

void gCamera::drawGizmos ( )

◆ end()

void gCamera::end ( )

◆ getFarClip()

float gCamera::getFarClip ( ) const
inline

◆ getFov()

float gCamera::getFov ( ) const
inline

◆ getLookMatrix()

const glm::mat4 & gCamera::getLookMatrix ( ) const

◆ getLookOrientation()

const glm::quat & gCamera::getLookOrientation ( ) const

◆ getNearClip()

float gCamera::getNearClip ( ) const
inline

◆ isInFrustum()

bool gCamera::isInFrustum ( const gBoundingBox box) const

◆ lookAt()

void gCamera::lookAt ( const glm::vec3 &  point)

◆ move() [1/2]

void gCamera::move ( const glm::vec3  dv)

◆ move() [2/2]

void gCamera::move ( float  dx,
float  dy,
float  dz 
)

◆ pan()

void gCamera::pan ( float  radians)

◆ panDeg()

void gCamera::panDeg ( float  degrees)

◆ panDegGizmos()

void gCamera::panDegGizmos ( float  degrees)
protected

◆ panGizmos()

void gCamera::panGizmos ( float  radians)
protected

◆ processLookMatrix()

void gCamera::processLookMatrix ( )
protected

◆ resetLook()

void gCamera::resetLook ( )

◆ roll()

void gCamera::roll ( float  radians)

◆ rollDeg()

void gCamera::rollDeg ( float  degrees)

◆ rollDegGizmos()

void gCamera::rollDegGizmos ( float  degrees)
protected

◆ rollGizmos()

void gCamera::rollGizmos ( float  radians)
protected

◆ rotate() [1/2]

void gCamera::rotate ( const glm::quat &  q)

◆ rotate() [2/2]

void gCamera::rotate ( float  radians,
float  ax,
float  ay,
float  az 
)

◆ rotateAround()

void gCamera::rotateAround ( float  radians,
const glm::vec3 &  axis,
const glm::vec3 &  point 
)

◆ rotateAroundDeg()

void gCamera::rotateAroundDeg ( float  degrees,
const glm::vec3 &  axis,
const glm::vec3 &  point 
)

◆ rotateDeg()

void gCamera::rotateDeg ( float  angle,
float  ax,
float  ay,
float  az 
)

◆ rotateDegGizmos()

void gCamera::rotateDegGizmos ( float  angle,
float  ax,
float  ay,
float  az 
)
protected

◆ rotateGizmos() [1/2]

void gCamera::rotateGizmos ( const glm::quat &  o)
protected

◆ rotateGizmos() [2/2]

void gCamera::rotateGizmos ( float  radians,
float  ax,
float  ay,
float  az 
)
protected

◆ rotateLook()

void gCamera::rotateLook ( float  angle,
float  ax,
float  ay,
float  az 
)

◆ scale() [1/2]

void gCamera::scale ( float  s)

◆ scale() [2/2]

void gCamera::scale ( float  sx,
float  sy,
float  sz 
)

◆ setFarClip()

void gCamera::setFarClip ( float  farClip)

◆ setFov()

void gCamera::setFov ( float  f)

◆ setNearClip()

void gCamera::setNearClip ( float  nearClip)

◆ setOrientation() [1/2]

void gCamera::setOrientation ( const glm::quat &  o)

◆ setOrientation() [2/2]

void gCamera::setOrientation ( const glm::vec3 &  angles)

◆ setOrientationGizmos()

void gCamera::setOrientationGizmos ( const glm::quat &  o)
protected

◆ setPosition() [1/2]

void gCamera::setPosition ( const glm::vec3  pv)

◆ setPosition() [2/2]

void gCamera::setPosition ( float  px,
float  py,
float  pz 
)

◆ setScale() [1/3]

void gCamera::setScale ( const glm::vec3 &  s)

◆ setScale() [2/3]

void gCamera::setScale ( float  s)

◆ setScale() [3/3]

void gCamera::setScale ( float  sx,
float  sy,
float  sz 
)

◆ tilt()

void gCamera::tilt ( float  radians)

◆ tiltDeg()

void gCamera::tiltDeg ( float  degrees)

◆ tiltDegGizmos()

void gCamera::tiltDegGizmos ( float  degrees)
protected

◆ tiltGizmos()

void gCamera::tiltGizmos ( float  radians)
protected

◆ truck()

void gCamera::truck ( float  distance)

Member Data Documentation

◆ farclip

float gCamera::farclip
protected

◆ fov

float gCamera::fov
protected

◆ frustum

Frustum gCamera::frustum
protected

◆ gizmos

gSkybox* gCamera::gizmos
protected

◆ locallookmatrix

glm::mat4 gCamera::locallookmatrix
protected

◆ lookorientation

glm::quat gCamera::lookorientation
protected

◆ lookposition

glm::vec3 gCamera::lookposition
protected

◆ lookscalevec

glm::vec3 gCamera::lookscalevec
protected

◆ nearclip

float gCamera::nearclip
protected

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