Vp::SceneScreen
Viewport entity representing a screen node. More...
#include "Viewport/entity/nodes/SceneScreen.h"
Inherits from Vp::TexturedObject, Vp::SceneSelectable, Vp::GameObject, Vp::Entity
Public Functions
Name | |
---|---|
SceneScreen() | |
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 |
void | updateModelTransform(float width, float height, float scaleFactor, bool yUp) |
Public Attributes
Name | |
---|---|
float | m_programOpacity <br>Runtime opacity factor. |
float | m_scale <br>Optional scaling factor of the model, eg. an implicit model transformation. |
std::weak_ptr< TexturedObject > | m_screenBase |
Additional inherited members
Public Functions inherited from Vp::TexturedObject
Name | |
---|---|
TexturedObject(Core::Mesh * mesh, PhongShader * shader) | |
virtual void | prepareRenderContext(RenderContext & context, const DisplayOptions & displayOptions) override |
Public Attributes inherited from Vp::TexturedObject
Name | |
---|---|
glm::vec3 | m_tint |
float | m_tintStrength |
Public Attributes inherited from Vp::SceneSelectable
Name | |
---|---|
Core::ID | m_guiNodeId <br>ID of the gui node object is representing. |
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 | prepareRenderContext(RenderContext & context, const DisplayOptions & displayOptions) override |
void | render(const glm::mat4 & model, const glm::mat4 & view, const glm::mat4 & projection, const DisplayOptions & displayOptions)<br>Renders the entity with default rendering parameters. |
virtual void | render(const glm::mat4 & model, const glm::mat4 & view, const glm::mat4 & projection, const RenderContext & context) override<br>IMPLEMENTATION NOTE: Derived entity classes should expect a certain kind of shader and be able to directly static cast to it. |
virtual void | render(const glm::mat4 & model, const glm::mat4 & view, const glm::mat4 & projection, const RenderContext & context)<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 Classes inherited from Vp::Entity
Name | |
---|---|
struct | RenderContext |
Public Types inherited from Vp::Entity
Name | |
---|---|
enum class | RenderType { NORMAL, CUSTOM, SILHOUETTE} |
Public Functions inherited from Vp::Entity
Name | |
---|---|
Entity() | |
virtual | ~Entity() =default |
RenderContext | createRenderContext(const DisplayOptions & displayOptions) |
virtual void | dispose() =0 |
DisplayType | getDisplayType() const |
glm::vec3 | getHighlightColor() const |
bool | isHighlighted() const |
virtual void | prepareRenderContext(RenderContext & context, const DisplayOptions & displayOptions) =0 |
void | render(const glm::mat4 & model, const glm::mat4 & view, const glm::mat4 & projection, const DisplayOptions & displayOptions)<br>Renders the entity with default rendering parameters. |
virtual void | render(const glm::mat4 & model, const glm::mat4 & view, const glm::mat4 & projection, const RenderContext & context) =0<br>IMPLEMENTATION NOTE: Derived entity classes should expect a certain kind of shader and be able to directly static cast to it. |
void | setDisplayType(DisplayType type) |
void | setHighlightColor(glm::vec3 highlightColor) |
void | setHighlighted(bool highlight) |
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. |
bool | m_ignoreReferenceSpace <br>When true, the "global"/"reference space" model matrix passed to viewport drawing methods is ignored. |
bool | m_ignoreUserClipping <br>Whether to ignore user clip planes defined in DisplayOptions. |
glm::mat4 | m_lastModelMatrix <br>Potentially modifed model matrix last passed to the shader. |
glm::mat4 | m_modelMatrix <br>Model "world" transformation of the entity. |
glm::mat4 | m_modMatrix <br>Modification transformation, precedes any other transformations, modifies entity vertex data as if the modified data came directly from a source (model file). |
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 |
Detailed Description
class Vp::SceneScreen;
class Vp::SceneScreen;
Viewport entity representing a screen node.
Only visible when visualizing screen space. Monitor 3D model credits: LiveToWin34 (https://skfb.ly/otsCS) (CC Attribution 4.0) (modified)
Public Functions Documentation
function SceneScreen
SceneScreen()
SceneScreen()
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
function updateModelTransform
void updateModelTransform(
float width,
float height,
float scaleFactor,
bool yUp
)
void updateModelTransform(
float width,
float height,
float scaleFactor,
bool yUp
)
Public Attributes Documentation
variable m_programOpacity
float m_programOpacity {1.f};
float m_programOpacity {1.f};
Runtime opacity factor.
variable m_scale
float m_scale {1.f};
float m_scale {1.f};
Optional scaling factor of the model, eg. an implicit model transformation.
variable m_screenBase
std::weak_ptr< TexturedObject > m_screenBase;
std::weak_ptr< TexturedObject > m_screenBase;
Updated on 2025-05-31 at 12:55:31 +0000