Cogs.Core
Public Member Functions | Public Attributes | List of all members
Cogs::Core::CameraData Struct Reference

Contains data describing a Camera instance and its derived data structured such as matrix data and view frustum. More...

#include <CameraSystem.h>

Public Member Functions

 CameraData ()=default
 Default constructs camera data.
 
 CameraData (const CameraData &other)=delete
 Disabled copy constructor operator to avoid accidental copying when referencing.
 
CameraDataoperator= (const CameraData &other)=default
 Assign operator must be enabled as Copying is done in FilterListTask.cpp & friends.
 

Public Attributes

void(* bindRenderTargetCallback )(void *clientData) = nullptr
 
void * bindRenderTargetCallbackData = nullptr
 
RenderLayers layerMask = RenderLayers::Default
 
LightingLayers lightingMask = LightingLayers::Default
 
bool reflection = false
 
bool flipWindingOrder = false
 
bool useClearColor = false
 
glm::mat4 viewMatrix
 
glm::mat4 projectionMatrix
 
glm::mat4 viewProjection
 
glm::mat4 inverseViewMatrix
 
glm::mat4 inverseViewProjectionMatrix
 
glm::mat4 inverseProjectionMatrix
 
glm::mat4 viewFromViewportMatrix
 
glm::mat4 prevViewProjection
 
glm::vec2 viewportSize
 
glm::vec2 viewportOrigin
 
glm::vec4 clearColor
 
glm::uvec2 blueNoiseOffset
 
Geometry::Frustum frustum
 
Geometry::BoundingBox sceneBounds
 
RenderPassOptionspassOptions = nullptr
 
float nearDepthBounds = 0.f
 
float farDepthBounds = 0.f
 
float nearClipPlanes = 0.f
 
float farClipPlanes = 0.f
 
float nearDistance = 0.f
 
float farDistance = 0.f
 
float fieldOfView = 0.f
 
float depthClamp = 0.f
 
float discardThreshold = 0.f
 
float keepThreshold = 0.f
 
float exposure = 2.f
 
uint32_t clientFlags = 0
 
ComponentModel::ComponentHandle camera = ComponentModel::ComponentHandle::Empty()
 
ComponentModel::ComponentHandle environment = ComponentModel::ComponentHandle::Empty()
 
ComponentModel::ComponentHandle cameraArray = ComponentModel::ComponentHandle::Empty()
 
glm::mat4 rawProjectionMatrix
 Projection matrix that has not been adjusted by the renderer, and is thus appropriate for direct screen calculations.
 
glm::mat4 rawViewProjection
 
glm::mat4 rawViewCullMatrix
 
std::shared_ptr< CullingDatacullingData
 
RenderPass::ERenderPass renderPass = RenderPass::Main
 
int rayPickId = -1
 

Detailed Description

Contains data describing a Camera instance and its derived data structured such as matrix data and view frustum.

Definition at line 66 of file CameraSystem.h.

Member Data Documentation

◆ bindRenderTargetCallback

void(* Cogs::Core::CameraData::bindRenderTargetCallback) (void *clientData) = nullptr

Definition at line 77 of file CameraSystem.h.

◆ bindRenderTargetCallbackData

void* Cogs::Core::CameraData::bindRenderTargetCallbackData = nullptr

Definition at line 78 of file CameraSystem.h.

◆ blueNoiseOffset

glm::uvec2 Cogs::Core::CameraData::blueNoiseOffset

Definition at line 102 of file CameraSystem.h.

◆ camera

Definition at line 124 of file CameraSystem.h.

◆ cameraArray

Definition at line 126 of file CameraSystem.h.

◆ clearColor

glm::vec4 Cogs::Core::CameraData::clearColor

Definition at line 100 of file CameraSystem.h.

◆ clientFlags

uint32_t Cogs::Core::CameraData::clientFlags = 0

Definition at line 122 of file CameraSystem.h.

◆ cullingData

std::shared_ptr<CullingData> Cogs::Core::CameraData::cullingData

Definition at line 133 of file CameraSystem.h.

◆ depthClamp

float Cogs::Core::CameraData::depthClamp = 0.f

Definition at line 117 of file CameraSystem.h.

◆ discardThreshold

float Cogs::Core::CameraData::discardThreshold = 0.f

Definition at line 118 of file CameraSystem.h.

◆ environment

Definition at line 125 of file CameraSystem.h.

◆ exposure

float Cogs::Core::CameraData::exposure = 2.f

Definition at line 120 of file CameraSystem.h.

◆ farClipPlanes

float Cogs::Core::CameraData::farClipPlanes = 0.f

Definition at line 112 of file CameraSystem.h.

◆ farDepthBounds

float Cogs::Core::CameraData::farDepthBounds = 0.f

Definition at line 110 of file CameraSystem.h.

◆ farDistance

float Cogs::Core::CameraData::farDistance = 0.f

Definition at line 115 of file CameraSystem.h.

◆ fieldOfView

float Cogs::Core::CameraData::fieldOfView = 0.f

Definition at line 116 of file CameraSystem.h.

◆ flipWindingOrder

bool Cogs::Core::CameraData::flipWindingOrder = false

Definition at line 84 of file CameraSystem.h.

◆ frustum

Geometry::Frustum Cogs::Core::CameraData::frustum

Definition at line 104 of file CameraSystem.h.

◆ inverseProjectionMatrix

glm::mat4 Cogs::Core::CameraData::inverseProjectionMatrix

Definition at line 93 of file CameraSystem.h.

◆ inverseViewMatrix

glm::mat4 Cogs::Core::CameraData::inverseViewMatrix

Definition at line 91 of file CameraSystem.h.

◆ inverseViewProjectionMatrix

glm::mat4 Cogs::Core::CameraData::inverseViewProjectionMatrix

Definition at line 92 of file CameraSystem.h.

◆ keepThreshold

float Cogs::Core::CameraData::keepThreshold = 0.f

Definition at line 119 of file CameraSystem.h.

◆ layerMask

RenderLayers Cogs::Core::CameraData::layerMask = RenderLayers::Default

Definition at line 80 of file CameraSystem.h.

◆ lightingMask

LightingLayers Cogs::Core::CameraData::lightingMask = LightingLayers::Default

Definition at line 81 of file CameraSystem.h.

◆ nearClipPlanes

float Cogs::Core::CameraData::nearClipPlanes = 0.f

Definition at line 111 of file CameraSystem.h.

◆ nearDepthBounds

float Cogs::Core::CameraData::nearDepthBounds = 0.f

Definition at line 109 of file CameraSystem.h.

◆ nearDistance

float Cogs::Core::CameraData::nearDistance = 0.f

Definition at line 114 of file CameraSystem.h.

◆ passOptions

RenderPassOptions* Cogs::Core::CameraData::passOptions = nullptr

Definition at line 107 of file CameraSystem.h.

◆ prevViewProjection

glm::mat4 Cogs::Core::CameraData::prevViewProjection

Definition at line 96 of file CameraSystem.h.

◆ projectionMatrix

glm::mat4 Cogs::Core::CameraData::projectionMatrix

Definition at line 88 of file CameraSystem.h.

◆ rawProjectionMatrix

glm::mat4 Cogs::Core::CameraData::rawProjectionMatrix

Projection matrix that has not been adjusted by the renderer, and is thus appropriate for direct screen calculations.

Definition at line 129 of file CameraSystem.h.

Referenced by Cogs::Core::Image360::RayPickExtension::pickCamera(), Cogs::Core::OceanPicker::pickCamera(), Cogs::Core::PotreePicker::pickRay(), and Cogs::Core::LightSystem::preRender().

◆ rawViewCullMatrix

glm::mat4 Cogs::Core::CameraData::rawViewCullMatrix

Definition at line 131 of file CameraSystem.h.

◆ rawViewProjection

glm::mat4 Cogs::Core::CameraData::rawViewProjection

Definition at line 130 of file CameraSystem.h.

◆ rayPickId

int Cogs::Core::CameraData::rayPickId = -1

Definition at line 136 of file CameraSystem.h.

◆ reflection

bool Cogs::Core::CameraData::reflection = false

Definition at line 83 of file CameraSystem.h.

◆ renderPass

RenderPass::ERenderPass Cogs::Core::CameraData::renderPass = RenderPass::Main

Definition at line 135 of file CameraSystem.h.

◆ sceneBounds

Geometry::BoundingBox Cogs::Core::CameraData::sceneBounds

Definition at line 105 of file CameraSystem.h.

◆ useClearColor

bool Cogs::Core::CameraData::useClearColor = false

Definition at line 85 of file CameraSystem.h.

◆ viewFromViewportMatrix

glm::mat4 Cogs::Core::CameraData::viewFromViewportMatrix

Definition at line 94 of file CameraSystem.h.

◆ viewMatrix

glm::mat4 Cogs::Core::CameraData::viewMatrix

Definition at line 87 of file CameraSystem.h.

◆ viewportOrigin

glm::vec2 Cogs::Core::CameraData::viewportOrigin

Definition at line 99 of file CameraSystem.h.

◆ viewportSize

glm::vec2 Cogs::Core::CameraData::viewportSize

Definition at line 98 of file CameraSystem.h.

◆ viewProjection

glm::mat4 Cogs::Core::CameraData::viewProjection

Definition at line 90 of file CameraSystem.h.


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