Vp::SceneCamera
Viewport entity representing a Camera node in Core/GUI.
#include "Viewport/entity/nodes/SceneCamera.h"
Inherits from Vp::SceneModel, Vp::TexturedObject, Vp::GameObject, Vp::Entity
Public Functions
Name | |
---|---|
SceneCamera(Core::Mesh * mesh, PhongShader * shader) | |
virtual void | onSceneAdd(Scene & scene) override<br>Called when the entity is added to a scene. |
virtual void | onSceneRemove(Scene & scene) override<br>Called when the entity is removed from a scene. |
virtual void | update(Scene & scene) override |
Public Attributes
Name | |
---|---|
bool | m_fillFrustum |
glm::vec3 | m_frustumColor |
glm::vec3 | m_frustumOutlineColor |
glm::mat4 | m_projectionMatrix |
bool | m_showFrustum |
glm::mat4 | m_viewMatrix |
Protected Attributes
Name | |
---|---|
std::weak_ptr< FrustumObject > | m_frustum |
std::weak_ptr< FrustumObject > | m_frustumOutline |
Additional inherited members
Public Functions inherited from Vp::SceneModel
Name | |
---|---|
SceneModel(Core::Mesh * mesh, PhongShader * shader) | |
SceneModel(std::string modelAlias, PhongShader * shader)<br>Load mesh using an alias. | |
std::string | getModel() |
virtual void | render(Shader * shader, glm::mat4 view, glm::mat4 projection, bool silhouette) override<br>IMPLEMENTATION NOTE: Derived entity classes should expect a certain kind of shader and be able to directly static cast to it. |
void | setModel(std::string modelAlias) |
Public Attributes inherited from Vp::SceneModel
Name | |
---|---|
std::weak_ptr< ColoredObject > | m_axes <br>Visualisation of the basis vectors. |
Core::ID | m_guiNodeId <br>ID of the gui node object is representing. |
std::string | m_modelAlias |
bool | m_showAxes |
Public Functions inherited from Vp::TexturedObject
Name | |
---|---|
TexturedObject(Core::Mesh * mesh, PhongShader * shader) | |
virtual void | render(Shader * shader, glm::mat4 view, glm::mat4 projection, bool silhouette) override<br>IMPLEMENTATION NOTE: Derived entity classes should expect a certain kind of shader and be able to directly static cast to it. |
Public Attributes inherited from Vp::TexturedObject
Name | |
---|---|
glm::vec3 | m_tint |
float | m_tintStrength |
Public Functions inherited from Vp::GameObject
Name | |
---|---|
GameObject() =default<br>Creates an empty GameObject. | |
GameObject(Core::Mesh * mesh, ObjectShader * shader) | |
virtual void | dispose() override |
virtual void | render(Shader * shader, glm::mat4 view, glm::mat4 projection, bool silhouette) override<br>IMPLEMENTATION NOTE: Derived entity classes should expect a certain kind of shader and be able to directly static cast to it. |
Public Attributes inherited from Vp::GameObject
Name | |
---|---|
Core::Mesh * | m_mesh |
float | m_opacity |
Public Functions inherited from Vp::Entity
Name | |
---|---|
Entity() | |
virtual | ~Entity() =default |
virtual void | dispose() =0 |
virtual DisplayType | getDisplayType() const |
virtual glm::vec3 | getHighlightColor() const |
virtual bool | isHighlighted() const |
void | render(glm::mat4 view, glm::mat4 projection) |
void | render(glm::mat4 view, glm::mat4 projection, bool silhouette) |
virtual void | setDisplayType(DisplayType type) |
virtual void | setHighlightColor(glm::vec3 highlightColor) |
virtual void | setHighlighted(bool highlight) |
Protected Functions inherited from Vp::Entity
Name | |
---|---|
void | render(Shader * shader, glm::mat4 view, glm::mat4 projection) |
virtual void | render(Shader * shader, glm::mat4 view, glm::mat4 projection, bool silhouette) =0<br>IMPLEMENTATION NOTE: Derived entity classes should expect a certain kind of shader and be able to directly static cast to it. |
Public Attributes inherited from Vp::Entity
Name | |
---|---|
bool | m_backFaceCull |
unsigned int | m_explicitTransparencyOrder <br>Explicit order for ordered transparency. |
bool | m_highlight <br>Whether to paint this entity with an outline, can be used for selection or just highlighting. |
glm::vec3 | m_highlightColor |
bool | m_highlightUseDepth <br>Whether the highlight outline should respect the scene's depth buffer. |
glm::mat4 | m_modelMatrix <br>Model transformation of the entity. |
bool | m_opaque |
bool | m_selectable <br>Whether this entity should be written into the selection stencil buffer. |
int | m_selectionId <br>Id of the object, -1 if not assigned, for selection purposes. |
Shader * | m_shader |
bool | m_visible |
bool | m_wboit <br>Whether this entity should be rendered using order independent transparency, relevant if using a shader that supports wboit. |
int | m_wboitFunc <br>Index of the weight function to be used in wboit. |
Protected Attributes inherited from Vp::Entity
Name | |
---|---|
DisplayType | m_displayType |
Public Functions Documentation
function SceneCamera
SceneCamera(
Core::Mesh * mesh,
PhongShader * shader
)
SceneCamera(
Core::Mesh * mesh,
PhongShader * shader
)
function onSceneAdd
virtual void onSceneAdd(
Scene & scene
) override
virtual void onSceneAdd(
Scene & scene
) override
Called when the entity is added to a scene.
Parameters:
- scene Scene to which it has been added
Reimplements: Vp::Entity::onSceneAdd
function onSceneRemove
virtual void onSceneRemove(
Scene & scene
) override
virtual void onSceneRemove(
Scene & scene
) override
Called when the entity is removed from a scene.
Parameters:
- scene Scene from which it has been removed
Reimplements: Vp::Entity::onSceneRemove
function update
virtual void update(
Scene & scene
) override
virtual void update(
Scene & scene
) override
Reimplements: Vp::GameObject::update
Public Attributes Documentation
variable m_fillFrustum
bool m_fillFrustum {true};
bool m_fillFrustum {true};
variable m_frustumColor
glm::vec3 m_frustumColor {0.35f, 0.27f, 0.06f};
glm::vec3 m_frustumColor {0.35f, 0.27f, 0.06f};
variable m_frustumOutlineColor
glm::vec3 m_frustumOutlineColor {1.0f, 0.0f, 0.0f};
glm::vec3 m_frustumOutlineColor {1.0f, 0.0f, 0.0f};
variable m_projectionMatrix
glm::mat4 m_projectionMatrix {1};
glm::mat4 m_projectionMatrix {1};
variable m_showFrustum
bool m_showFrustum {true};
bool m_showFrustum {true};
variable m_viewMatrix
glm::mat4 m_viewMatrix {1};
glm::mat4 m_viewMatrix {1};
Protected Attributes Documentation
variable m_frustum
std::weak_ptr< FrustumObject > m_frustum;
std::weak_ptr< FrustumObject > m_frustum;
variable m_frustumOutline
std::weak_ptr< FrustumObject > m_frustumOutline;
std::weak_ptr< FrustumObject > m_frustumOutline;
Updated on 2024-11-06 at 20:16:53 +0000