#include <ShaderProgram.h>
|
| ~CShaderProgram () override |
|
IDevice * | GetDevice () override |
|
int32_t | GetBindingSlot (const CStrIntern name) const override |
|
std::vector< VfsPath > | GetFileDependencies () const override |
|
uint32_t | GetStreamLocation (const VertexAttributeStream stream) const |
|
const std::vector< VkPipelineShaderStageCreateInfo > & | GetStages () const |
|
void | Bind () |
|
void | Unbind () |
|
void | PreDraw (CRingCommandContext &commandContext) |
|
void | PreDispatch (CRingCommandContext &commandContext) |
|
void | PostDispatch (CRingCommandContext &commandContext) |
|
VkPipelineLayout | GetPipelineLayout () const |
|
VkPipelineBindPoint | GetPipelineBindPoint () const |
|
void | SetUniform (const int32_t bindingSlot, const float value) |
|
void | SetUniform (const int32_t bindingSlot, const float valueX, const float valueY) |
|
void | SetUniform (const int32_t bindingSlot, const float valueX, const float valueY, const float valueZ) |
|
void | SetUniform (const int32_t bindingSlot, const float valueX, const float valueY, const float valueZ, const float valueW) |
|
void | SetUniform (const int32_t bindingSlot, PS::span< const float > values) |
|
void | SetTexture (const int32_t bindingSlot, CTexture *texture) |
|
void | SetStorageTexture (const int32_t bindingSlot, CTexture *texture) |
|
bool | IsMaterialConstantsDataOutdated () const |
|
void | UpdateMaterialConstantsData () |
|
std::byte * | GetMaterialConstantsData () const |
|
uint32_t | GetMaterialConstantsDataSize () const |
|
virtual int32_t | GetBindingSlot (const CStrIntern name) const =0 |
|
virtual std::vector< VfsPath > | GetFileDependencies () const =0 |
|
virtual | ~IDeviceObject () |
|
virtual IDevice * | GetDevice ()=0 |
|
T * | As () |
|
◆ ~CShaderProgram()
CShaderProgram::~CShaderProgram |
( |
| ) |
|
|
override |
◆ CShaderProgram()
CShaderProgram::CShaderProgram |
( |
| ) |
|
|
privatedefault |
◆ Bind()
void CShaderProgram::Bind |
( |
| ) |
|
◆ BindOutdatedDescriptorSets()
◆ Create()
◆ GetBindingSlot()
int32_t CShaderProgram::GetBindingSlot |
( |
const CStrIntern |
name | ) |
const |
|
overridevirtual |
◆ GetDevice()
IDevice * CShaderProgram::GetDevice |
( |
| ) |
|
|
overridevirtual |
◆ GetFileDependencies()
std::vector< VfsPath > CShaderProgram::GetFileDependencies |
( |
| ) |
const |
|
overridevirtual |
◆ GetMaterialConstantsData()
std::byte * Renderer::Backend::Vulkan::CShaderProgram::GetMaterialConstantsData |
( |
| ) |
const |
|
inline |
◆ GetMaterialConstantsDataSize()
uint32_t Renderer::Backend::Vulkan::CShaderProgram::GetMaterialConstantsDataSize |
( |
| ) |
const |
|
inline |
◆ GetPipelineBindPoint()
VkPipelineBindPoint Renderer::Backend::Vulkan::CShaderProgram::GetPipelineBindPoint |
( |
| ) |
const |
|
inline |
◆ GetPipelineLayout()
VkPipelineLayout Renderer::Backend::Vulkan::CShaderProgram::GetPipelineLayout |
( |
| ) |
const |
|
inline |
◆ GetStages()
const std::vector< VkPipelineShaderStageCreateInfo > & Renderer::Backend::Vulkan::CShaderProgram::GetStages |
( |
| ) |
const |
|
inline |
◆ GetStreamLocation()
◆ GetUniformData()
std::pair< std::byte *, uint32_t > CShaderProgram::GetUniformData |
( |
const int32_t |
bindingSlot, |
|
|
const uint32_t |
dataSize |
|
) |
| |
|
private |
◆ IsMaterialConstantsDataOutdated()
bool Renderer::Backend::Vulkan::CShaderProgram::IsMaterialConstantsDataOutdated |
( |
| ) |
const |
|
inline |
◆ PostDispatch()
◆ PreDispatch()
◆ PreDraw()
◆ SetStorageTexture()
void CShaderProgram::SetStorageTexture |
( |
const int32_t |
bindingSlot, |
|
|
CTexture * |
texture |
|
) |
| |
◆ SetTexture()
void CShaderProgram::SetTexture |
( |
const int32_t |
bindingSlot, |
|
|
CTexture * |
texture |
|
) |
| |
◆ SetUniform() [1/5]
void CShaderProgram::SetUniform |
( |
const int32_t |
bindingSlot, |
|
|
const float |
value |
|
) |
| |
◆ SetUniform() [2/5]
void CShaderProgram::SetUniform |
( |
const int32_t |
bindingSlot, |
|
|
const float |
valueX, |
|
|
const float |
valueY |
|
) |
| |
◆ SetUniform() [3/5]
void CShaderProgram::SetUniform |
( |
const int32_t |
bindingSlot, |
|
|
const float |
valueX, |
|
|
const float |
valueY, |
|
|
const float |
valueZ |
|
) |
| |
◆ SetUniform() [4/5]
void CShaderProgram::SetUniform |
( |
const int32_t |
bindingSlot, |
|
|
const float |
valueX, |
|
|
const float |
valueY, |
|
|
const float |
valueZ, |
|
|
const float |
valueW |
|
) |
| |
◆ SetUniform() [5/5]
void CShaderProgram::SetUniform |
( |
const int32_t |
bindingSlot, |
|
|
PS::span< const float > |
values |
|
) |
| |
◆ Unbind()
void CShaderProgram::Unbind |
( |
| ) |
|
◆ UpdateMaterialConstantsData()
void Renderer::Backend::Vulkan::CShaderProgram::UpdateMaterialConstantsData |
( |
| ) |
|
|
inline |
◆ CDevice
◆ m_Device
CDevice* Renderer::Backend::Vulkan::CShaderProgram::m_Device = nullptr |
|
private |
◆ m_FileDependencies
std::vector<VfsPath> Renderer::Backend::Vulkan::CShaderProgram::m_FileDependencies |
|
private |
◆ m_MaterialConstantsData
std::unique_ptr<std::byte[]> Renderer::Backend::Vulkan::CShaderProgram::m_MaterialConstantsData |
|
private |
◆ m_MaterialConstantsDataOutdated
bool Renderer::Backend::Vulkan::CShaderProgram::m_MaterialConstantsDataOutdated = false |
|
private |
◆ m_MaterialConstantsDataSize
uint32_t Renderer::Backend::Vulkan::CShaderProgram::m_MaterialConstantsDataSize = 0 |
|
private |
◆ m_PipelineBindPoint
VkPipelineBindPoint Renderer::Backend::Vulkan::CShaderProgram::m_PipelineBindPoint = VK_PIPELINE_BIND_POINT_MAX_ENUM |
|
private |
◆ m_PipelineLayout
VkPipelineLayout Renderer::Backend::Vulkan::CShaderProgram::m_PipelineLayout = VK_NULL_HANDLE |
|
private |
◆ m_PushConstantData
std::array<std::byte, 128> Renderer::Backend::Vulkan::CShaderProgram::m_PushConstantData |
|
private |
◆ m_PushConstantDataFlags
std::array<VkShaderStageFlags, 32> Renderer::Backend::Vulkan::CShaderProgram::m_PushConstantDataFlags |
|
private |
◆ m_PushConstantDataMask
uint32_t Renderer::Backend::Vulkan::CShaderProgram::m_PushConstantDataMask = 0 |
|
private |
◆ m_PushConstantMapping
std::unordered_map<CStrIntern, uint32_t> Renderer::Backend::Vulkan::CShaderProgram::m_PushConstantMapping |
|
private |
◆ m_PushConstants
std::vector<PushConstant> Renderer::Backend::Vulkan::CShaderProgram::m_PushConstants |
|
private |
◆ m_ShaderModules
std::vector<VkShaderModule> Renderer::Backend::Vulkan::CShaderProgram::m_ShaderModules |
|
private |
◆ m_Stages
std::vector<VkPipelineShaderStageCreateInfo> Renderer::Backend::Vulkan::CShaderProgram::m_Stages |
|
private |
◆ m_StorageImageBinding
◆ m_StreamLocations
◆ m_TextureBinding
◆ m_UniformMapping
std::unordered_map<CStrIntern, uint32_t> Renderer::Backend::Vulkan::CShaderProgram::m_UniformMapping |
|
private |
◆ m_Uniforms
std::vector<Uniform> Renderer::Backend::Vulkan::CShaderProgram::m_Uniforms |
|
private |
The documentation for this class was generated from the following files:
- /home/docker/jenkins/workspace/technical-docs/source/renderer/backend/vulkan/ShaderProgram.h
- /home/docker/jenkins/workspace/technical-docs/source/renderer/backend/vulkan/ShaderProgram.cpp