HDK
|
#include <RE_ShaderAtlas.h>
Public Member Functions | |
RE_ShaderAtlas (const UT_StringRef &shader_atlas_file) | |
virtual | ~RE_ShaderAtlas () |
bool | loadAtlas () |
exint | getBit (const UT_StringRef &tag) const |
RE_Shader * | getShader (RE_Render *r, exint shbits) const |
const UT_StringHolder & | getFilePath () const |
const UT_Map< exint, RE_ShaderHandlePtr > & | shaders () const |
const UT_StringMap< exint > & | bits () const |
void | printTags (exint tags) |
Protected Member Functions | |
void | applyDefsToMatchingShaders (const UT_StringArray &tag_stack, UT_WorkBuffer &defines) |
void | addShader (const UT_StringArray &tag_stack, const UT_StringArray &tokens, const UT_StringHolder &program, UT_WorkBuffer &defines) |
bool | addShader (exint key, const UT_StringHolder &program, const UT_StringHolder &defines, bool check_for_abs_path) |
virtual RE_ShaderHandlePtr | createShaderImpl (const char *program, const char *defines) |
exint | registerTokens (const UT_StringArray &tokens) |
Protected Attributes | |
UT_Map< exint, RE_ShaderHandlePtr > | myMap |
UT_StringMap< exint > | myBits |
int | myMaxBit |
UT_StringHolder | myAtlasFile |
UT_StringHolder | myAtlasDir |
bool | myAtlasLoaded |
bool | myAtlasValid |
A Shader Atlas is a collection of related shaders identified by tags. It has its own simple file format which associates .prog shader files with a set of tags. To retrieve that shader, supply the list of tags.
Definition at line 29 of file RE_ShaderAtlas.h.
RE_ShaderAtlas::RE_ShaderAtlas | ( | const UT_StringRef & | shader_atlas_file | ) |
|
virtual |
|
protected |
|
protected |
|
protected |
|
inline |
Definition at line 50 of file RE_ShaderAtlas.h.
|
protectedvirtual |
Reimplemented in RV_ShaderAtlas.
exint RE_ShaderAtlas::getBit | ( | const UT_StringRef & | tag | ) | const |
|
inline |
Definition at line 46 of file RE_ShaderAtlas.h.
bool RE_ShaderAtlas::loadAtlas | ( | ) |
|
protected |
|
inline |
Definition at line 49 of file RE_ShaderAtlas.h.
|
protected |
Definition at line 74 of file RE_ShaderAtlas.h.
|
protected |
Definition at line 73 of file RE_ShaderAtlas.h.
|
protected |
Definition at line 75 of file RE_ShaderAtlas.h.
|
protected |
Definition at line 76 of file RE_ShaderAtlas.h.
|
protected |
Definition at line 70 of file RE_ShaderAtlas.h.
|
protected |
Definition at line 69 of file RE_ShaderAtlas.h.
|
protected |
Definition at line 71 of file RE_ShaderAtlas.h.