Castor3D 0.16.0
Multiplatform 3D engine
Public Member Functions | Friends | List of all members
castor3d::shader::CameraData Struct Reference

#include <CameraUbo.hpp>

Inheritance diagram for castor3d::shader::CameraData:
Inheritance graph
[legend]
Collaboration diagram for castor3d::shader::CameraData:
Collaboration graph
[legend]

Public Member Functions

 CameraData (sdw::ShaderWriter &writer, ast::expr::ExprPtr expr, bool enabled)
 
C3D_API sdw::Vec4 projToView (sdw::Vec4 const &psPosition) const
 
C3D_API DerivVec4 projToView (DerivVec4 const &psPosition) const
 
C3D_API sdw::Vec4 viewToProj (sdw::Vec4 const &vsPosition) const
 
C3D_API sdw::Vec3 worldToCurView (sdw::Vec3 const &wsPosition) const
 
C3D_API sdw::Vec4 worldToCurView (sdw::Vec4 const &wsPosition) const
 
C3D_API sdw::Vec4 worldToPrvView (sdw::Vec4 const &wsPosition) const
 
C3D_API sdw::Vec4 curViewToWorld (sdw::Vec4 const &vsPosition) const
 
C3D_API DerivVec4 curViewToWorld (DerivVec4 const &vsPosition) const
 
C3D_API sdw::Vec4 prvViewToWorld (sdw::Vec4 const &vsPosition) const
 
C3D_API sdw::Vec4 worldToCurProj (sdw::Vec4 const &wsPosition) const
 
C3D_API sdw::Vec4 worldToPrvProj (sdw::Vec4 const &wsPosition) const
 
C3D_API DerivVec4 worldToPrvProj (DerivVec4 const &wsPosition) const
 
C3D_API sdw::Vec2 viewToScreenUV (Utils &utils, sdw::Vec4 vsPosition) const
 
C3D_API sdw::Vec2 worldToCurScreenUV (Utils &utils, sdw::Vec4 wsPosition) const
 
C3D_API sdw::Vec2 worldToPrvScreenUV (Utils &utils, sdw::Vec4 wsPosition) const
 
C3D_API sdw::Vec3 projToView (Utils &utils, sdw::Vec2 const &texCoord, sdw::Float const &depth) const
 
C3D_API sdw::Vec3 curViewToWorld (Utils &utils, sdw::Vec2 const &texCoord, sdw::Float const &depth) const
 
C3D_API sdw::Vec4 curProjToWorld (sdw::Vec4 const &position) const
 
C3D_API sdw::Vec3 curProjToWorld (Utils &utils, sdw::Vec2 const &texCoord, sdw::Float const &depth) const
 
C3D_API sdw::Vec3 prvProjToWorld (Utils &utils, sdw::Vec2 const &texCoord, sdw::Float const &depth) const
 
C3D_API sdw::Vec3 getCurViewRight () const
 
C3D_API sdw::Vec3 getPrvViewRight () const
 
C3D_API sdw::Vec3 getCurViewUp () const
 
C3D_API sdw::Vec3 getPrvViewUp () const
 
C3D_API sdw::Vec3 getCurViewCenter () const
 
C3D_API sdw::Vec3 getPrvViewCenter () const
 
C3D_API sdw::Mat4 getInvViewProjMtx () const
 
C3D_API void jitter (sdw::Vec4 &csPosition) const
 
C3D_API void jitter (DerivVec4 &csPosition) const
 
C3D_API sdw::Vec3 transformCamera (sdw::Mat3 const &transform) const
 
C3D_API sdw::Vec3 getPosToCamera (sdw::Vec3 const &position) const
 
C3D_API sdw::Vec3 getCameraToPos (sdw::Vec3 const &position) const
 
C3D_API sdw::Vec2 depthPlanes () const
 
C3D_API sdw::Vec2 calcTexCoord (Utils &utils, sdw::Vec2 const &fragCoord) const
 
C3D_API sdw::Vec3 readNormal (sdw::Vec3 const &input) const
 
C3D_API sdw::Vec3 writeNormal (sdw::Vec3 const &input) const
 
auto renderSize () const
 
auto nearPlane () const
 
auto farPlane () const
 
auto position () const
 
auto gamma () const
 
auto debugIndex () const
 
sdw::Mat4x4 getInvProjMtx () const
 
sdw::Mat4x4 getProjMtx () const
 
sdw::Vec4 getFrustumPlane (sdw::UInt index) const
 

Friends

struct BillboardData
 

Constructor & Destructor Documentation

◆ CameraData()

castor3d::shader::CameraData::CameraData ( sdw::ShaderWriter & writer,
ast::expr::ExprPtr expr,
bool enabled )
inline

Member Function Documentation

◆ calcTexCoord()

C3D_API sdw::Vec2 castor3d::shader::CameraData::calcTexCoord ( Utils & utils,
sdw::Vec2 const & fragCoord ) const

◆ curProjToWorld() [1/2]

C3D_API sdw::Vec4 castor3d::shader::CameraData::curProjToWorld ( sdw::Vec4 const & position) const

◆ curProjToWorld() [2/2]

C3D_API sdw::Vec3 castor3d::shader::CameraData::curProjToWorld ( Utils & utils,
sdw::Vec2 const & texCoord,
sdw::Float const & depth ) const

◆ curViewToWorld() [1/3]

C3D_API DerivVec4 castor3d::shader::CameraData::curViewToWorld ( DerivVec4 const & vsPosition) const

◆ curViewToWorld() [2/3]

C3D_API sdw::Vec4 castor3d::shader::CameraData::curViewToWorld ( sdw::Vec4 const & vsPosition) const

◆ curViewToWorld() [3/3]

C3D_API sdw::Vec3 castor3d::shader::CameraData::curViewToWorld ( Utils & utils,
sdw::Vec2 const & texCoord,
sdw::Float const & depth ) const

◆ debugIndex()

auto castor3d::shader::CameraData::debugIndex ( ) const
inline

◆ depthPlanes()

C3D_API sdw::Vec2 castor3d::shader::CameraData::depthPlanes ( ) const

◆ farPlane()

auto castor3d::shader::CameraData::farPlane ( ) const
inline

◆ gamma()

auto castor3d::shader::CameraData::gamma ( ) const
inline

◆ getCameraToPos()

C3D_API sdw::Vec3 castor3d::shader::CameraData::getCameraToPos ( sdw::Vec3 const & position) const

◆ getCurViewCenter()

C3D_API sdw::Vec3 castor3d::shader::CameraData::getCurViewCenter ( ) const

◆ getCurViewRight()

C3D_API sdw::Vec3 castor3d::shader::CameraData::getCurViewRight ( ) const

◆ getCurViewUp()

C3D_API sdw::Vec3 castor3d::shader::CameraData::getCurViewUp ( ) const

◆ getFrustumPlane()

sdw::Vec4 castor3d::shader::CameraData::getFrustumPlane ( sdw::UInt index) const
inline

◆ getInvProjMtx()

sdw::Mat4x4 castor3d::shader::CameraData::getInvProjMtx ( ) const
inline

◆ getInvViewProjMtx()

C3D_API sdw::Mat4 castor3d::shader::CameraData::getInvViewProjMtx ( ) const

◆ getPosToCamera()

C3D_API sdw::Vec3 castor3d::shader::CameraData::getPosToCamera ( sdw::Vec3 const & position) const

◆ getProjMtx()

sdw::Mat4x4 castor3d::shader::CameraData::getProjMtx ( ) const
inline

◆ getPrvViewCenter()

C3D_API sdw::Vec3 castor3d::shader::CameraData::getPrvViewCenter ( ) const

◆ getPrvViewRight()

C3D_API sdw::Vec3 castor3d::shader::CameraData::getPrvViewRight ( ) const

◆ getPrvViewUp()

C3D_API sdw::Vec3 castor3d::shader::CameraData::getPrvViewUp ( ) const

◆ jitter() [1/2]

C3D_API void castor3d::shader::CameraData::jitter ( DerivVec4 & csPosition) const

◆ jitter() [2/2]

C3D_API void castor3d::shader::CameraData::jitter ( sdw::Vec4 & csPosition) const

◆ nearPlane()

auto castor3d::shader::CameraData::nearPlane ( ) const
inline

◆ position()

auto castor3d::shader::CameraData::position ( ) const
inline

◆ projToView() [1/3]

C3D_API DerivVec4 castor3d::shader::CameraData::projToView ( DerivVec4 const & psPosition) const

◆ projToView() [2/3]

C3D_API sdw::Vec4 castor3d::shader::CameraData::projToView ( sdw::Vec4 const & psPosition) const

◆ projToView() [3/3]

C3D_API sdw::Vec3 castor3d::shader::CameraData::projToView ( Utils & utils,
sdw::Vec2 const & texCoord,
sdw::Float const & depth ) const

◆ prvProjToWorld()

C3D_API sdw::Vec3 castor3d::shader::CameraData::prvProjToWorld ( Utils & utils,
sdw::Vec2 const & texCoord,
sdw::Float const & depth ) const

◆ prvViewToWorld()

C3D_API sdw::Vec4 castor3d::shader::CameraData::prvViewToWorld ( sdw::Vec4 const & vsPosition) const

◆ readNormal()

C3D_API sdw::Vec3 castor3d::shader::CameraData::readNormal ( sdw::Vec3 const & input) const

◆ renderSize()

auto castor3d::shader::CameraData::renderSize ( ) const
inline

◆ transformCamera()

C3D_API sdw::Vec3 castor3d::shader::CameraData::transformCamera ( sdw::Mat3 const & transform) const

◆ viewToProj()

C3D_API sdw::Vec4 castor3d::shader::CameraData::viewToProj ( sdw::Vec4 const & vsPosition) const

◆ viewToScreenUV()

C3D_API sdw::Vec2 castor3d::shader::CameraData::viewToScreenUV ( Utils & utils,
sdw::Vec4 vsPosition ) const

◆ worldToCurProj()

C3D_API sdw::Vec4 castor3d::shader::CameraData::worldToCurProj ( sdw::Vec4 const & wsPosition) const

◆ worldToCurScreenUV()

C3D_API sdw::Vec2 castor3d::shader::CameraData::worldToCurScreenUV ( Utils & utils,
sdw::Vec4 wsPosition ) const

◆ worldToCurView() [1/2]

C3D_API sdw::Vec3 castor3d::shader::CameraData::worldToCurView ( sdw::Vec3 const & wsPosition) const

◆ worldToCurView() [2/2]

C3D_API sdw::Vec4 castor3d::shader::CameraData::worldToCurView ( sdw::Vec4 const & wsPosition) const

◆ worldToPrvProj() [1/2]

C3D_API DerivVec4 castor3d::shader::CameraData::worldToPrvProj ( DerivVec4 const & wsPosition) const

◆ worldToPrvProj() [2/2]

C3D_API sdw::Vec4 castor3d::shader::CameraData::worldToPrvProj ( sdw::Vec4 const & wsPosition) const

◆ worldToPrvScreenUV()

C3D_API sdw::Vec2 castor3d::shader::CameraData::worldToPrvScreenUV ( Utils & utils,
sdw::Vec4 wsPosition ) const

◆ worldToPrvView()

C3D_API sdw::Vec4 castor3d::shader::CameraData::worldToPrvView ( sdw::Vec4 const & wsPosition) const

◆ writeNormal()

C3D_API sdw::Vec3 castor3d::shader::CameraData::writeNormal ( sdw::Vec3 const & input) const

Friends And Related Symbol Documentation

◆ BillboardData

friend struct BillboardData
friend

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