8#ifndef ENGINE_GRAPHICS_GCAMERA_H_
9#define ENGINE_GRAPHICS_GCAMERA_H_
16#include <glm/gtc/matrix_transform.hpp>
17#include <glm/gtc/type_ptr.hpp>
22 gCamera(glm::vec3 camPosition = glm::vec3(0.0f, 0.0f, 0.0f));
23 gCamera(
float posX,
float posY,
float posZ);
36 void move(
float dx,
float dy,
float dz);
37 void move(
const glm::vec3 dv);
39 void rotate(
float radians,
float ax,
float ay,
float az);
40 void rotateDeg(
float angle,
float ax,
float ay,
float az);
41 void rotateAround(
float radians,
const glm::vec3& axis,
const glm::vec3& point);
42 void rotateAroundDeg(
float degrees,
const glm::vec3& axis,
const glm::vec3& point);
43 void scale(
float sx,
float sy,
float sz);
58 void pan(
float radians);
65 void rotateLook(
float angle,
float ax,
float ay,
float az);
83 Plane(
const glm::vec3& p1,
const glm::vec3& norm)
84 :
normal(glm::normalize(norm)),
Definition gBoundingBox.h:36
const glm::vec3 & getOrigin() const
void setOrientation(const glm::quat &o)
void setScale(const glm::vec3 &s)
glm::mat4 locallookmatrix
Definition gCamera.h:115
gCamera(glm::vec3 camPosition=glm::vec3(0.0f, 0.0f, 0.0f))
void rotateLook(float angle, float ax, float ay, float az)
float fov
Definition gCamera.h:75
gSkybox * gizmos
Definition gCamera.h:119
float nearclip
Definition gCamera.h:75
void rollDeg(float degrees)
void panDegGizmos(float degrees)
void rotate(const glm::quat &q)
void setNearClip(float nearClip)
void setScale(float sx, float sy, float sz)
float getFov() const
Definition gCamera.h:34
void dolly(float distance)
float getNearClip() const
Definition gCamera.h:32
void truck(float distance)
float farclip
Definition gCamera.h:75
void panDeg(float degrees)
void setPosition(float px, float py, float pz)
glm::quat lookorientation
Definition gCamera.h:113
void move(const glm::vec3 dv)
void setOrientationGizmos(const glm::quat &o)
void rotateDeg(float angle, float ax, float ay, float az)
void rotateGizmos(float radians, float ax, float ay, float az)
glm::vec3 lookposition
Definition gCamera.h:112
Frustum frustum
Definition gCamera.h:110
void setOrientation(const glm::vec3 &angles)
void rotateAround(float radians, const glm::vec3 &axis, const glm::vec3 &point)
void boom(float distance)
const glm::mat4 & getLookMatrix() const
void scale(float sx, float sy, float sz)
void tiltDegGizmos(float degrees)
void setPosition(const glm::vec3 pv)
void setFarClip(float farClip)
void rollDegGizmos(float degrees)
void tiltDeg(float degrees)
void rollGizmos(float radians)
void rotateDegGizmos(float angle, float ax, float ay, float az)
void rotateAroundDeg(float degrees, const glm::vec3 &axis, const glm::vec3 &point)
void move(float dx, float dy, float dz)
float getFarClip() const
Definition gCamera.h:33
void rotate(float radians, float ax, float ay, float az)
void lookAt(const glm::vec3 &point)
void tiltGizmos(float radians)
bool isInFrustum(const gBoundingBox &box) const
void rotateGizmos(const glm::quat &o)
const glm::quat & getLookOrientation() const
glm::vec3 lookscalevec
Definition gCamera.h:114
void panGizmos(float radians)
gCamera(float posX, float posY, float posZ)
float r
Definition gColor.h:22
Plane leftFace
Definition gCamera.h:104
Plane rightFace
Definition gCamera.h:103
Plane nearFace
Definition gCamera.h:107
Plane farFace
Definition gCamera.h:106
Plane bottomFace
Definition gCamera.h:101
Plane topFace
Definition gCamera.h:100
float distance
Definition gCamera.h:79
bool checkAABB(const gBoundingBox &aabb) const
Definition gCamera.h:92
Plane(const glm::vec3 &p1, const glm::vec3 &norm)
Definition gCamera.h:83
glm::vec3 normal
Definition gCamera.h:78
float getSignedDistanceToPlane(const glm::vec3 &point) const
Definition gCamera.h:88