Plasma Engine  2.0
Loading...
Searching...
No Matches
plViewData Struct Reference

Holds view data like the viewport, view and projection matrices. More...

#include <ViewData.h>

Public Member Functions

plResult ComputePickingRay (float fScreenPosX, float fScreenPosY, plVec3 &out_vRayStartPos, plVec3 &out_vRayDir, plCameraEye eye=plCameraEye::Left) const
 Returns the start position and direction (in world space) of the picking ray through the screen position in this view.
 
plResult ComputeScreenSpacePos (const plVec3 &vPoint, plVec3 &out_vScreenPos, plCameraEye eye=plCameraEye::Left) const
 

Public Attributes

plGALRenderTargets m_renderTargets
 
plGALSwapChainHandle m_hSwapChain
 
plRectFloat m_ViewPortRect
 
plEnum< plViewRenderModem_ViewRenderMode
 
plEnum< plCameraUsageHintm_CameraUsageHint
 
plMat4 m_ViewMatrix [2]
 
plMat4 m_InverseViewMatrix [2]
 
plMat4 m_ProjectionMatrix [2]
 
plMat4 m_InverseProjectionMatrix [2]
 
plMat4 m_ViewProjectionMatrix [2]
 
plMat4 m_InverseViewProjectionMatrix [2]
 
plMat4 m_LastViewMatrix [2]
 
plMat4 m_LastInverseViewMatrix [2]
 
plMat4 m_LastProjectionMatrix [2]
 
plMat4 m_LastInverseProjectionMatrix [2]
 
plMat4 m_LastViewProjectionMatrix [2]
 
plMat4 m_LastInverseViewProjectionMatrix [2]
 

Detailed Description

Holds view data like the viewport, view and projection matrices.

Member Function Documentation

◆ ComputePickingRay()

plResult plViewData::ComputePickingRay ( float fScreenPosX,
float fScreenPosY,
plVec3 & out_vRayStartPos,
plVec3 & out_vRayDir,
plCameraEye eye = plCameraEye::Left ) const
inline

Returns the start position and direction (in world space) of the picking ray through the screen position in this view.

fScreenPosX and fScreenPosY are expected to be in [0; 1] range (normalized pixel coordinates). If no ray can be computed, PL_FAILURE is returned.


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