xoreos
0.0.5
|
#include <shaderrenderable.h>
Public Member Functions | |
ShaderRenderable () | |
ShaderRenderable (Shader::ShaderSurface *surface, Shader::ShaderMaterial *material, Mesh::Mesh *mesh) | |
ShaderRenderable (Shader::ShaderRenderable *src) | |
ShaderRenderable (const ShaderRenderable &src) | |
~ShaderRenderable () | |
const ShaderRenderable & | operator= (const ShaderRenderable &src) |
ShaderSurface * | getSurface () |
ShaderMaterial * | getMaterial () |
ShaderProgram * | getProgram () |
Mesh::Mesh * | getMesh () |
void | setSurface (Shader::ShaderSurface *surface, bool rebuildProgram=true) |
void | setMaterial (Shader::ShaderMaterial *material, bool rebuildProgram=true) |
void | setMesh (Mesh::Mesh *mesh) |
void | copyRenderable (Shader::ShaderRenderable *src) |
void | renderImmediate (const glm::mat4 &tform, float alpha=1.0f) |
Private Member Functions | |
void | updateProgram () |
Private Attributes | |
ShaderSurface * | _surface |
ShaderMaterial * | _material |
ShaderProgram * | _program |
Mesh::Mesh * | _mesh |
Definition at line 40 of file shaderrenderable.h.
Graphics::Shader::ShaderRenderable::ShaderRenderable | ( | ) |
Definition at line 33 of file shaderrenderable.cpp.
Graphics::Shader::ShaderRenderable::ShaderRenderable | ( | Shader::ShaderSurface * | surface, |
Shader::ShaderMaterial * | material, | ||
Mesh::Mesh * | mesh | ||
) |
Definition at line 36 of file shaderrenderable.cpp.
References _material, _mesh, _surface, updateProgram(), Graphics::Mesh::Mesh::useIncrement(), Graphics::Shader::ShaderMaterial::useIncrement(), and Graphics::Shader::ShaderSurface::useIncrement().
Graphics::Shader::ShaderRenderable::ShaderRenderable | ( | Shader::ShaderRenderable * | src | ) |
Definition at line 44 of file shaderrenderable.cpp.
References _material, _mesh, _surface, setMaterial(), setMesh(), setSurface(), and updateProgram().
Graphics::Shader::ShaderRenderable::ShaderRenderable | ( | const ShaderRenderable & | src | ) |
Definition at line 53 of file shaderrenderable.cpp.
References _material, _mesh, _surface, Graphics::Mesh::Mesh::useIncrement(), Graphics::Shader::ShaderSurface::useIncrement(), and Graphics::Shader::ShaderMaterial::useIncrement().
Graphics::Shader::ShaderRenderable::~ShaderRenderable | ( | ) |
Definition at line 73 of file shaderrenderable.cpp.
References _material, _mesh, _surface, Graphics::Mesh::Mesh::useDecrement(), Graphics::Shader::ShaderSurface::useDecrement(), and Graphics::Shader::ShaderMaterial::useDecrement().
void Graphics::Shader::ShaderRenderable::copyRenderable | ( | Shader::ShaderRenderable * | src | ) |
Definition at line 138 of file shaderrenderable.cpp.
References getMaterial(), getMesh(), getSurface(), setMaterial(), setMesh(), setSurface(), and updateProgram().
ShaderMaterial * Graphics::Shader::ShaderRenderable::getMaterial | ( | ) |
Definition at line 89 of file shaderrenderable.cpp.
References _material.
Referenced by copyRenderable(), Graphics::Render::RenderQueue::queueItem(), and Graphics::Render::RenderManager::queueRenderable().
Mesh::Mesh * Graphics::Shader::ShaderRenderable::getMesh | ( | ) |
Definition at line 97 of file shaderrenderable.cpp.
References _mesh.
Referenced by copyRenderable(), Graphics::Render::RenderQueue::queueItem(), and Graphics::Render::RenderManager::queueRenderable().
ShaderProgram * Graphics::Shader::ShaderRenderable::getProgram | ( | ) |
Definition at line 93 of file shaderrenderable.cpp.
References _program.
Referenced by Graphics::Render::RenderQueue::queueItem(), Graphics::Aurora::ABCFont::renderBind(), and Graphics::Aurora::TextureFont::renderBind().
ShaderSurface * Graphics::Shader::ShaderRenderable::getSurface | ( | ) |
Definition at line 85 of file shaderrenderable.cpp.
References _surface.
Referenced by copyRenderable(), Graphics::Render::RenderQueue::queueItem(), Graphics::Aurora::ABCFont::renderBind(), Graphics::Aurora::TextureFont::renderBind(), Graphics::Aurora::ABCFont::renderUnbind(), and Graphics::Aurora::TextureFont::renderUnbind().
const ShaderRenderable & Graphics::Shader::ShaderRenderable::operator= | ( | const ShaderRenderable & | src | ) |
Definition at line 65 of file shaderrenderable.cpp.
References _material, _mesh, _program, _surface, setMaterial(), setMesh(), and setSurface().
void Graphics::Shader::ShaderRenderable::renderImmediate | ( | const glm::mat4 & | tform, |
float | alpha = 1.0f |
||
) |
Definition at line 151 of file shaderrenderable.cpp.
References _material, _mesh, _program, _surface, Graphics::Shader::ShaderMaterial::bindGLState(), Graphics::Shader::ShaderSurface::bindGLState(), Graphics::Shader::ShaderMaterial::bindProgram(), Graphics::Shader::ShaderSurface::bindProgram(), Graphics::Shader::ShaderProgram::glid, Graphics::Mesh::Mesh::renderImmediate(), Graphics::Shader::ShaderSurface::unbindGLState(), and Graphics::Shader::ShaderMaterial::unbindGLState().
Referenced by Graphics::Aurora::Model::doDrawBound().
void Graphics::Shader::ShaderRenderable::setMaterial | ( | Shader::ShaderMaterial * | material, |
bool | rebuildProgram = true |
||
) |
Definition at line 115 of file shaderrenderable.cpp.
References _material, updateProgram(), Graphics::Shader::ShaderMaterial::useDecrement(), and Graphics::Shader::ShaderMaterial::useIncrement().
Referenced by copyRenderable(), Graphics::Aurora::Model::Model(), operator=(), Graphics::Aurora::ModelNode::setMaterial(), and ShaderRenderable().
void Graphics::Shader::ShaderRenderable::setMesh | ( | Mesh::Mesh * | mesh | ) |
Definition at line 128 of file shaderrenderable.cpp.
References _mesh, Graphics::Mesh::Mesh::useDecrement(), and Graphics::Mesh::Mesh::useIncrement().
Referenced by copyRenderable(), Graphics::Aurora::Model::Model(), operator=(), and ShaderRenderable().
void Graphics::Shader::ShaderRenderable::setSurface | ( | Shader::ShaderSurface * | surface, |
bool | rebuildProgram = true |
||
) |
Definition at line 101 of file shaderrenderable.cpp.
References _surface, updateProgram(), Graphics::Shader::ShaderSurface::useDecrement(), and Graphics::Shader::ShaderSurface::useIncrement().
Referenced by copyRenderable(), Graphics::Aurora::Model::Model(), operator=(), and ShaderRenderable().
|
private |
Definition at line 167 of file shaderrenderable.cpp.
References _material, _program, _surface, Graphics::Shader::ShaderMaterial::getFragmentShader(), Graphics::Shader::ShaderSurface::getVertexShader(), and ShaderMan.
Referenced by copyRenderable(), setMaterial(), setSurface(), and ShaderRenderable().
|
private |
Definition at line 66 of file shaderrenderable.h.
Referenced by getMaterial(), operator=(), renderImmediate(), setMaterial(), ShaderRenderable(), updateProgram(), and ~ShaderRenderable().
|
private |
Definition at line 68 of file shaderrenderable.h.
Referenced by getMesh(), operator=(), renderImmediate(), setMesh(), ShaderRenderable(), and ~ShaderRenderable().
|
private |
Definition at line 67 of file shaderrenderable.h.
Referenced by getProgram(), operator=(), renderImmediate(), and updateProgram().
|
private |
Definition at line 65 of file shaderrenderable.h.
Referenced by getSurface(), operator=(), renderImmediate(), setSurface(), ShaderRenderable(), updateProgram(), and ~ShaderRenderable().