Castor3D 0.16.0
Multiplatform 3D engine
|
#include <ShaderBuffer.hpp>
Fonctions membres publiques | |
C3D_API | ShaderBuffer (RenderDevice const &device, VkDeviceSize size, castor::String const &name, crg::AccessState wantedState={ VK_ACCESS_SHADER_READ_BIT, VK_PIPELINE_STAGE_FRAGMENT_SHADER_BIT }) |
Constructeur. | |
C3D_API void | upload (UploadData &uploader) const |
Met à jour le tampon. | |
C3D_API void | upload (UploadData &uploader, VkDeviceSize offset, VkDeviceSize size) const |
Met à jour le tampon sur le GPU. | |
C3D_API VkDescriptorSetLayoutBinding | createLayoutBinding (uint32_t index=0u, VkShaderStageFlags stages=(VK_SHADER_STAGE_FRAGMENT_BIT|VK_SHADER_STAGE_GEOMETRY_BIT|VK_SHADER_STAGE_TESSELLATION_CONTROL_BIT|VK_SHADER_STAGE_TESSELLATION_EVALUATION_BIT|VK_SHADER_STAGE_VERTEX_BIT)) const |
Crée une attache de layout de set de descripteurs au point donné. | |
C3D_API void | createPassBinding (crg::FramePass &pass, uint32_t binding) const |
Crée une attache de frame pass. | |
C3D_API ashes::WriteDescriptorSet | getSingleBinding (uint32_t binding, VkDeviceSize offset, VkDeviceSize size) const |
Crée le descriptor write pour ce tampon. | |
C3D_API ashes::WriteDescriptorSet | getBinding (uint32_t binding) const |
Crée le descriptor write pour ce tampon. | |
C3D_API void | createBinding (ashes::DescriptorSet &descriptorSet, VkDescriptorSetLayoutBinding const &binding) const |
Crée une attache de set de descripteurs au point donné. | |
uint8_t * | getPtr () const noexcept |
VkDeviceSize | getSize () const noexcept |
RenderDevice const & | getDevice () const noexcept |
ashes::BufferBase const & | getBuffer () const noexcept |
void | setFirstCount (uint32_t value) noexcept |
void | setSecondCount (uint32_t value) noexcept |
void | setThirdCount (uint32_t value) noexcept |
void | setFourthCount (uint32_t value) noexcept |
void | setCount (uint32_t value) noexcept |
C3D_API castor3d::ShaderBuffer::ShaderBuffer | ( | RenderDevice const & | device, |
VkDeviceSize | size, | ||
castor::String const & | name, | ||
crg::AccessState | wantedState = { VK_ACCESS_SHADER_READ_BIT, VK_PIPELINE_STAGE_FRAGMENT_SHADER_BIT } ) |
Constructeur.
[in] | device | Le device GPU. |
[in] | size | La taille du tampon. |
[in] | name | Le nom du tampon shader. |
[in] | wantedState | L'accès souhaité après l'upload. |
C3D_API void castor3d::ShaderBuffer::createBinding | ( | ashes::DescriptorSet & | descriptorSet, |
VkDescriptorSetLayoutBinding const & | binding ) const |
Crée une attache de set de descripteurs au point donné.
[in,out] | descriptorSet | Reçoit l'attache créée. |
[in] | binding | L'attache de layout de set de descripteurs. |
C3D_API VkDescriptorSetLayoutBinding castor3d::ShaderBuffer::createLayoutBinding | ( | uint32_t | index = 0u, |
VkShaderStageFlags | stages = (VK_SHADER_STAGE_FRAGMENT_BIT|VK_SHADER_STAGE_GEOMETRY_BIT|VK_SHADER_STAGE_TESSELLATION_CONTROL_BIT|VK_SHADER_STAGE_TESSELLATION_EVALUATION_BIT|VK_SHADER_STAGE_VERTEX_BIT) ) const |
Crée une attache de layout de set de descripteurs au point donné.
[in] | index | L'indice du point d'attache. |
[in] | stages | Les shader stages. |
C3D_API void castor3d::ShaderBuffer::createPassBinding | ( | crg::FramePass & | pass, |
uint32_t | binding ) const |
Crée une attache de frame pass.
C3D_API ashes::WriteDescriptorSet castor3d::ShaderBuffer::getBinding | ( | uint32_t | binding | ) | const |
Crée le descriptor write pour ce tampon.
[in] | binding | L'attache de layout de set de descripteurs. |
|
inlinenoexcept |
Référencé par castor3d::FontGlyphBuffer::getBuffer().
|
inlinenoexcept |
|
inlinenoexcept |
name Accesseurs.
Référencé par castor3d::FontGlyphBuffer::getPtr(), castor3d::LightBuffer::getPtr(), castor3d::PassBuffer::getPtr(), castor3d::SssProfileBuffer::getPtr(), castor3d::TextureAnimationBuffer::getPtr(), et castor3d::TextureConfigurationBuffer::getPtr().
C3D_API ashes::WriteDescriptorSet castor3d::ShaderBuffer::getSingleBinding | ( | uint32_t | binding, |
VkDeviceSize | offset, | ||
VkDeviceSize | size ) const |
Crée le descriptor write pour ce tampon.
[in] | binding | L'attache de layout de set de descripteurs. |
[in] | offset,size | L'intervalle à mettre à jour. |
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
Référencé par castor3d::FontGlyphBuffer::setImgHeight().
|
inlinenoexcept |
Référencé par castor3d::FontGlyphBuffer::setMaxHeight().
|
inlinenoexcept |
Référencé par castor3d::FontGlyphBuffer::setImgWidth().
C3D_API void castor3d::ShaderBuffer::upload | ( | UploadData & | uploader | ) | const |
Met à jour le tampon.
[in,out] | uploader | Reçoit les requêtes d'upload. |
C3D_API void castor3d::ShaderBuffer::upload | ( | UploadData & | uploader, |
VkDeviceSize | offset, | ||
VkDeviceSize | size ) const |
Met à jour le tampon sur le GPU.
[in,out] | uploader | Reçoit les requêtes d'upload. |
[in] | offset,size | L'intervalle à mettre à jour. |