Berserk
Classes | Public Member Functions | Static Public Attributes | Protected Member Functions | List of all members
ShaderParams Class Referencefinal

Describes layout of shader params for packing by material. More...

#include <ShaderParams.hpp>

Inheritance diagram for ShaderParams:
Inheritance graph
[legend]
Collaboration diagram for ShaderParams:
Collaboration graph
[legend]

Classes

struct  DataParamInfo
 Info about raw data param. More...
 
struct  ShaderParamLight
 
struct  TextureParamInfo
 Info about texture data param. More...
 

Public Member Functions

BRK_API ShaderParams (std::vector< ShaderParam > params)
 
BRK_API ~ShaderParams () override=default
 
BRK_API bool HasParam (const StringName &name) const
 
BRK_API uint32 GetParamId (const StringName &name) const
 
BRK_API const ShaderParamGetParam (const StringName &name) const
 
BRK_API const ShaderParamLightGetParamLight (const StringName &name) const
 
BRK_API const ShaderParamGetParam (uint32 id) const
 
BRK_API const ShaderParamLightGetParamLight (uint32 id) const
 
BRK_API const std::unordered_map< StringName, uint32 > & GetParamLookUp () const
 
BRK_API const std::vector< ShaderParam > & GetParams () const
 
BRK_API const std::vector< ShaderParamLight > & GetParamsLight () const
 
BRK_API const std::vector< DataParamInfo > & GetDataParamsInfo () const
 
BRK_API const std::vector< TextureParamInfo > & GetTextureParamsInfo () const
 
BRK_API const std::vector< unsigned char > & GetDefaultDataValues () const
 
uint32 GetDataSize () const
 
uint32 GetTexturesCount () const
 
- Public Member Functions inherited from RefCnt
virtual ~RefCnt ()
 
bool IsUnique () const
 
std::int32_t GetRefs () const
 
std::int32_t AddRef () const
 
std::int32_t RelRef () const
 

Static Public Attributes

static const uint32 INVALID_ID = 0xffffffff
 

Protected Member Functions

void Build ()
 
void InitDefaults ()
 
- Protected Member Functions inherited from RefCnt
virtual void Destroy () const
 

Detailed Description

Describes layout of shader params for packing by material.


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