This is the preferred interface for loading shaders for the TextNode system. It is similar to ModelPool and TexturePool in that it unifies references to the same filename.
More...
|
static | addShader (const Filename filename, Shader shader) |
| Adds the indicated already-loaded shader to the pool. The shader will always replace any previously-loaded shader in the pool that had the same filename. More...
|
|
static int | garbageCollect () |
| Releases only those shaders in the pool that have a reference count of exactly 1; i.e. only those shaders that are not being used outside of the pool. Returns the number of shaders released. More...
|
|
static bool | hasShader (const Filename filename) |
| Returns true if the shader has ever been loaded, false otherwise. More...
|
|
static | listContents (Ostream out) |
| Lists the contents of the shader pool to the indicated output stream. More...
|
|
static const Shader | loadShader (const Filename filename) |
| Loads the given filename up into a shader, if it has not already been loaded, and returns the new shader. If a shader with the same filename was previously loaded, returns that one instead. If the shader file cannot be found, returns NULL. More...
|
|
static | releaseAllShaders () |
| Releases all shaders in the pool and restores the pool to the empty state. More...
|
|
static | releaseShader (const Filename filename) |
| Removes the indicated shader from the pool, indicating it will never be loaded again; the shader may then be freed. If this function is never called, a reference count will be maintained on every shader every loaded, and shaders will never be freed. More...
|
|
static bool | verifyShader (const Filename filename) |
| Loads the given filename up into a shader, if it has not already been loaded, and returns true to indicate success, or false to indicate failure. If this returns true, it is guaranteed that a subsequent call to load_shader() with the same shader name will return a valid Shader pointer. More...
|
|
static | write (Ostream out) |
| Lists the contents of the shader pool to the indicated output stream. More...
|
|
This is the preferred interface for loading shaders for the TextNode system. It is similar to ModelPool and TexturePool in that it unifies references to the same filename.
◆ addShader()
Adds the indicated already-loaded shader to the pool. The shader will always replace any previously-loaded shader in the pool that had the same filename.
◆ garbageCollect()
static int garbageCollect |
( |
| ) |
|
|
static |
Releases only those shaders in the pool that have a reference count of exactly 1; i.e. only those shaders that are not being used outside of the pool. Returns the number of shaders released.
◆ hasShader()
static bool hasShader |
( |
const Filename |
filename | ) |
|
|
static |
Returns true if the shader has ever been loaded, false otherwise.
◆ listContents()
Lists the contents of the shader pool to the indicated output stream.
◆ loadShader()
Loads the given filename up into a shader, if it has not already been loaded, and returns the new shader. If a shader with the same filename was previously loaded, returns that one instead. If the shader file cannot be found, returns NULL.
◆ releaseAllShaders()
static releaseAllShaders |
( |
| ) |
|
|
static |
Releases all shaders in the pool and restores the pool to the empty state.
◆ releaseShader()
static releaseShader |
( |
const Filename |
filename | ) |
|
|
static |
Removes the indicated shader from the pool, indicating it will never be loaded again; the shader may then be freed. If this function is never called, a reference count will be maintained on every shader every loaded, and shaders will never be freed.
◆ verifyShader()
static bool verifyShader |
( |
const Filename |
filename | ) |
|
|
static |
Loads the given filename up into a shader, if it has not already been loaded, and returns true to indicate success, or false to indicate failure. If this returns true, it is guaranteed that a subsequent call to load_shader() with the same shader name will return a valid Shader pointer.
◆ write()
Lists the contents of the shader pool to the indicated output stream.