Castor3D 0.16.0
Multiplatform 3D engine
Public Member Functions | Static Public Member Functions | Public Attributes | List of all members
castor3d::shader::LpvGridData Struct Reference

#include <LpvGridConfigUbo.hpp>

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

Public Member Functions

C3D_API LpvGridData (sdw::ShaderWriter &writer, ast::expr::ExprPtr expr, bool enabled)
 
 SDW_DeclStructInstance (C3D_API, LpvGridData)
 
C3D_API sdw::IVec3 worldToGrid (sdw::Vec3 const &pos) const
 
C3D_API sdw::IVec3 worldToGrid (sdw::Vec3 const &pos, sdw::Vec3 const &nml) const
 
C3D_API sdw::Vec3 worldToTex (sdw::Vec3 const &pos) const
 
C3D_API sdw::Vec2 gridToScreen (sdw::IVec2 const &pos) const
 
C3D_API sdw::Vec3 nextGrid (sdw::IVec3 const &pos, sdw::Vec3 const &dir) const
 
sdw::Float const & cellSize () const
 
sdw::Float const & indirectAttenuation () const
 

Static Public Member Functions

static C3D_API ast::type::BaseStructPtr makeType (ast::type::TypesCache &cache)
 
static C3D_API castor::RawUniquePtr< sdw::Struct > declare (sdw::ShaderWriter &writer)
 

Public Attributes

sdw::Vec3 minVolumeCorner
 
sdw::Float gridWidth
 
sdw::Float gridHeight
 
sdw::Float gridDepth
 
sdw::Vec3 gridSize
 
sdw::Vec3 cameraPos
 

Constructor & Destructor Documentation

◆ LpvGridData()

C3D_API castor3d::shader::LpvGridData::LpvGridData ( sdw::ShaderWriter & writer,
ast::expr::ExprPtr expr,
bool enabled )

Member Function Documentation

◆ cellSize()

sdw::Float const & castor3d::shader::LpvGridData::cellSize ( ) const
inline

◆ declare()

static C3D_API castor::RawUniquePtr< sdw::Struct > castor3d::shader::LpvGridData::declare ( sdw::ShaderWriter & writer)
static

◆ gridToScreen()

C3D_API sdw::Vec2 castor3d::shader::LpvGridData::gridToScreen ( sdw::IVec2 const & pos) const

◆ indirectAttenuation()

sdw::Float const & castor3d::shader::LpvGridData::indirectAttenuation ( ) const
inline

◆ makeType()

static C3D_API ast::type::BaseStructPtr castor3d::shader::LpvGridData::makeType ( ast::type::TypesCache & cache)
static

◆ nextGrid()

C3D_API sdw::Vec3 castor3d::shader::LpvGridData::nextGrid ( sdw::IVec3 const & pos,
sdw::Vec3 const & dir ) const

◆ SDW_DeclStructInstance()

castor3d::shader::LpvGridData::SDW_DeclStructInstance ( C3D_API ,
LpvGridData  )

◆ worldToGrid() [1/2]

C3D_API sdw::IVec3 castor3d::shader::LpvGridData::worldToGrid ( sdw::Vec3 const & pos) const

◆ worldToGrid() [2/2]

C3D_API sdw::IVec3 castor3d::shader::LpvGridData::worldToGrid ( sdw::Vec3 const & pos,
sdw::Vec3 const & nml ) const

◆ worldToTex()

C3D_API sdw::Vec3 castor3d::shader::LpvGridData::worldToTex ( sdw::Vec3 const & pos) const

Member Data Documentation

◆ cameraPos

sdw::Vec3 castor3d::shader::LpvGridData::cameraPos

◆ gridDepth

sdw::Float castor3d::shader::LpvGridData::gridDepth

◆ gridHeight

sdw::Float castor3d::shader::LpvGridData::gridHeight

◆ gridSize

sdw::Vec3 castor3d::shader::LpvGridData::gridSize

◆ gridWidth

sdw::Float castor3d::shader::LpvGridData::gridWidth

◆ minVolumeCorner

sdw::Vec3 castor3d::shader::LpvGridData::minVolumeCorner

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