PixelBullet  0.0.1
A C++ game engine
Loading...
Searching...
No Matches
PixelBullet::Shader Class Reference

Class that loads and processes a shader, and provides reflection. More...

#include <Shader.hpp>

Classes

class  Attribute
 
class  Constant
 
class  Uniform
 
class  UniformBlock
 
class  VertexInput
 

Public Types

using Define = std::pair<std::string, std::string>
 

Public Member Functions

bool ReportedNotFound (const std::string &name, bool reportIfFound) const
 
std::optional< uint32_t > GetDescriptorLocation (const std::string &name) const
 
std::optional< uint32_t > GetDescriptorSize (const std::string &name) const
 
std::optional< UniformGetUniform (const std::string &name) const
 
std::optional< UniformBlockGetUniformBlock (const std::string &name) const
 
std::optional< AttributeGetAttribute (const std::string &name) const
 
std::vector< VkPushConstantRange > GetPushConstantRanges () const
 
std::optional< VkDescriptorType > GetDescriptorType (uint32_t location) const
 
VkShaderModule CreateShaderModule (const VirtualPath &moduleName, const std::string &moduleCode, const std::string &preamble, VkShaderStageFlagBits moduleFlag)
 
const VirtualPathGetName () const
 
uint32_t GetLastDescriptorBinding () const
 
const std::map< std::string, Uniform > & GetUniforms () const
 
const std::map< std::string, UniformBlock > & GetUniformBlocks () const
 
const std::map< std::string, Attribute > & GetAttributes () const
 
const std::map< std::string, Constant > & GetConstants () const
 
const std::array< std::optional< uint32_t >, 3 > & GetLocalSizes () const
 
const std::vector< VkDescriptorSetLayoutBinding > & GetDescriptorSetLayouts () const
 
const std::vector< VkDescriptorPoolSize > & GetDescriptorPools () const
 
const std::vector< VkVertexInputAttributeDescription > & GetAttributeDescriptions () const
 

Static Public Member Functions

static VkFormat GlTypeToVk (int32_t type)
 
static VkShaderStageFlagBits GetShaderStage (const VirtualPath &filename)
 

Friends

const Nodeoperator>> (const Node &node, Shader &shader)
 
Nodeoperator<< (Node &node, const Shader &shader)
 

Detailed Description

Class that loads and processes a shader, and provides reflection.


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