Castor3D 0.12.0
Multiplatform 3D engine
Public Types | Public Member Functions | Static Public Attributes | List of all members
castor3d::MatrixUbo Class Reference

#include <MatrixUbo.hpp>

Public Types

using Configuration = MatrixUboConfiguration
 

Public Member Functions

C3D_API MatrixUbo (MatrixUbo const &rhs)=delete
 
C3D_API MatrixUbooperator= (MatrixUbo const &rhs)=delete
 
C3D_API MatrixUbo (MatrixUbo &&rhs)=default
 
C3D_API MatrixUbooperator= (MatrixUbo &&rhs)=delete
 
C3D_API MatrixUbo (RenderDevice const &device)
 
C3D_API ~MatrixUbo ()
 
C3D_API void cpuUpdate (castor::Matrix4x4f const &view, castor::Matrix4x4f const &projection, castor::Point2f const &jitter=castor::Point2f{})
 Updates the UBO from given values. More...
 
C3D_API void cpuUpdate (castor::Matrix4x4f const &projection)
 Updates the UBO from given values. More...
 
void createPassBinding (crg::FramePass &pass, uint32_t binding) const
 
void createSizedBinding (ashes::DescriptorSet &descriptorSet, VkDescriptorSetLayoutBinding const &layoutBinding) const
 
ashes::WriteDescriptorSet getDescriptorWrite (uint32_t dstBinding, uint32_t dstArrayElement=0u) const
 
UniformBufferOffsetT< Configuration > const & getUbo () const
 

Static Public Attributes

static C3D_API castor::String const BufferMatrix
 
static C3D_API castor::String const MatrixData
 

Member Typedef Documentation

◆ Configuration

Constructor & Destructor Documentation

◆ MatrixUbo() [1/3]

C3D_API castor3d::MatrixUbo::MatrixUbo ( MatrixUbo const &  rhs)
delete

◆ MatrixUbo() [2/3]

C3D_API castor3d::MatrixUbo::MatrixUbo ( MatrixUbo &&  rhs)
default

◆ MatrixUbo() [3/3]

C3D_API castor3d::MatrixUbo::MatrixUbo ( RenderDevice const &  device)
explicit

◆ ~MatrixUbo()

C3D_API castor3d::MatrixUbo::~MatrixUbo ( )

Member Function Documentation

◆ cpuUpdate() [1/2]

C3D_API void castor3d::MatrixUbo::cpuUpdate ( castor::Matrix4x4f const &  projection)

Updates the UBO from given values.

Remarks
View matrix won't be updated.
Parameters
[in]projectionThe new projection matrix.

◆ cpuUpdate() [2/2]

C3D_API void castor3d::MatrixUbo::cpuUpdate ( castor::Matrix4x4f const &  view,
castor::Matrix4x4f const &  projection,
castor::Point2f const &  jitter = castor::Point2f{} 
)

Updates the UBO from given values.

Parameters
[in]viewThe new view matrix.
[in]projectionThe new projection matrix.
[in]jitterThe jittering value.

◆ createPassBinding()

void castor3d::MatrixUbo::createPassBinding ( crg::FramePass &  pass,
uint32_t  binding 
) const
inline

References castor3d::UniformBufferOffsetT< DataT >::createPassBinding().

Here is the call graph for this function:

◆ createSizedBinding()

void castor3d::MatrixUbo::createSizedBinding ( ashes::DescriptorSet &  descriptorSet,
VkDescriptorSetLayoutBinding const &  layoutBinding 
) const
inline

References castor3d::UniformBufferOffsetT< DataT >::createSizedBinding().

Here is the call graph for this function:

◆ getDescriptorWrite()

ashes::WriteDescriptorSet castor3d::MatrixUbo::getDescriptorWrite ( uint32_t  dstBinding,
uint32_t  dstArrayElement = 0u 
) const
inline

References castor3d::UniformBufferOffsetT< DataT >::getDescriptorWrite().

Here is the call graph for this function:

◆ getUbo()

UniformBufferOffsetT< Configuration > const & castor3d::MatrixUbo::getUbo ( ) const
inline

◆ operator=() [1/2]

C3D_API MatrixUbo & castor3d::MatrixUbo::operator= ( MatrixUbo &&  rhs)
delete

◆ operator=() [2/2]

C3D_API MatrixUbo & castor3d::MatrixUbo::operator= ( MatrixUbo const &  rhs)
delete

Member Data Documentation

◆ BufferMatrix

C3D_API castor::String const castor3d::MatrixUbo::BufferMatrix
static

◆ MatrixData

C3D_API castor::String const castor3d::MatrixUbo::MatrixData
static

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