|
Nameless Engine
|
#include <DescriptorSetLayoutGenerator.h>
Classes | |
| struct | Collected |
| struct | Generated |
Public Member Functions | |
| DescriptorSetLayoutGenerator (const DescriptorSetLayoutGenerator &)=delete | |
| DescriptorSetLayoutGenerator & | operator= (const DescriptorSetLayoutGenerator &)=delete |
Static Public Member Functions | |
| static std::variant< Collected, Error > | collectInfoFromBytecode (void *pSpirvBytecode, size_t iSizeInBytes) |
| static std::variant< Generated, Error > | generateGraphics (VulkanRenderer *pRenderer, GlslShader *pVertexShader, GlslShader *pFragmentShader) |
| static std::variant< Generated, Error > | generateCompute (VulkanRenderer *pRenderer, GlslShader *pComputeShader) |
Static Private Member Functions | |
| static std::variant< std::pair< VkDescriptorSetLayoutBinding, VkDescriptorBindingFlags >, Error > | generateLayoutBinding (uint32_t iBindingIndex, const Collected::DescriptorSetLayoutBindingInfo &bindingInfo, bool bIsComputeShader) |
Generates Descriptor Set Layout based on GLSL code.
|
static |
Collection information from the specified SPIR-V bytecode that can be used to generate a descriptor set layout.
| pSpirvBytecode | SPIR-V bytecode to analyze. |
| iSizeInBytes | Size of bytecode in bytes. |
|
static |
Generates a new descriptor layout, pool and descriptor sets using the specified compute shader.
| pRenderer | Vulkan renderer. |
| pComputeShader | Compute shader. |
|
static |
Generates a new descriptor layout, pool and descriptor sets using the specified vertex and fragment shaders.
| pRenderer | Vulkan renderer. |
| pVertexShader | Vertex shader. |
| pFragmentShader | Fragment shader. Specify nullptr to generate descriptor layout only for vertex shader. |
|
staticprivate |
Generates Vulkan layout binding that could be used to create a descriptor set layout.
| iBindingIndex | Index of the binding that was specified in the GLSL code. |
| bindingInfo | Information about the GLSL resource used in this binding. |
| bIsComputeShader | true if this binding is being generated for a compute shader, otherwise false. |