sandbox
Loading...
Searching...
No Matches
sbx::graphics::shader Class Reference
Inheritance diagram for sbx::graphics::shader:
sbx::utility::noncopyable

Classes

class  attribute
 
struct  define
 
class  uniform
 
class  uniform_block
 

Public Types

enum class  data_type : std::uint8_t {
  unknown , boolean , int32 , uint32 ,
  float32 , vec2 , ivec2 , uvec2 ,
  vec3 , ivec3 , uvec3 , vec4 ,
  ivec4 , uvec4 , mat2 , imat2 ,
  umat2 , mat3 , imat3 , umat3 ,
  mat4 , imat4 , umat4 , sampler2d ,
  sampler2d_array , separate_sampler , separate_image2d , separate_image2d_array ,
  storage_image , subpass_input , structure
}
 

Public Member Functions

 shader (const std::filesystem::path &path, VkShaderStageFlagBits stage, const std::vector< define > &defines={})
 
auto handle () const noexcept -> const VkShaderModule &
 
 operator const VkShaderModule & () const noexcept
 
auto stage () const noexcept -> VkShaderStageFlagBits
 
auto uniforms () const noexcept -> const std::map< std::string, uniform > &
 
auto uniform_blocks () const noexcept -> const std::map< std::string, uniform_block > &
 
- Public Member Functions inherited from sbx::utility::noncopyable
 noncopyable (const noncopyable &)=delete
 
 noncopyable (noncopyable &&) noexcept=default
 
auto operator= (const noncopyable &) -> noncopyable &=delete
 
auto operator= (noncopyable &&) noexcept -> noncopyable &=default
 

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