Visualization Library 2.0.0
A lightweight C++ OpenGL middleware for 2D/3D graphics
|
[Download] [Tutorials] [All Classes] [Grouped Classes] |
Manages most of the OpenGL rendering states responsible of the final aspect of the rendered objects. More...
#include <Shader.hpp>
Public Member Functions | |
Shader () | |
Constructor. More... | |
virtual | ~Shader () |
Destructor. More... | |
ref< Shader > | shallowCopy () const |
Returns the shallow copy of a Shader. More... | |
Shader & | shallowCopyFrom (const Shader &other) |
Performs a shallow copy from the given Shader. More... | |
ref< Shader > | deepCopy () const |
Returns the deep copy of a Shader. More... | |
Shader & | deepCopyFrom (const Shader &other) |
Performs a deep copy from the given Shader. More... | |
void | reset () |
Disables everything, erases all the render states, erases all the uniforms. More... | |
GLSLProgram * | gocGLSLProgram () |
Gets or creates a GLSLProgram and returns it. More... | |
const GLSLProgram * | getGLSLProgram () const |
Returns a GLSLProgram if it exists or NULL otherwise. More... | |
GLSLProgram * | getGLSLProgram () |
Returns a GLSLProgram if it exists or NULL otherwise. More... | |
PixelTransfer * | gocPixelTransfer () |
const PixelTransfer * | getPixelTransfer () const |
PixelTransfer * | getPixelTransfer () |
Hint * | gocHint () |
const Hint * | getHint () const |
Hint * | getHint () |
CullFace * | gocCullFace () |
const CullFace * | getCullFace () const |
CullFace * | getCullFace () |
FrontFace * | gocFrontFace () |
const FrontFace * | getFrontFace () const |
FrontFace * | getFrontFace () |
DepthFunc * | gocDepthFunc () |
const DepthFunc * | getDepthFunc () const |
DepthFunc * | getDepthFunc () |
DepthMask * | gocDepthMask () |
const DepthMask * | getDepthMask () const |
DepthMask * | getDepthMask () |
Color * | gocColor () |
const Color * | getColor () const |
Color * | getColor () |
SecondaryColor * | gocSecondaryColor () |
const SecondaryColor * | getSecondaryColor () const |
SecondaryColor * | getSecondaryColor () |
Normal * | gocNormal () |
const Normal * | getNormal () const |
Normal * | getNormal () |
ColorMask * | gocColorMask () |
const ColorMask * | getColorMask () const |
ColorMask * | getColorMask () |
PolygonMode * | gocPolygonMode () |
const PolygonMode * | getPolygonMode () const |
PolygonMode * | getPolygonMode () |
ShadeModel * | gocShadeModel () |
const ShadeModel * | getShadeModel () const |
ShadeModel * | getShadeModel () |
BlendEquation * | gocBlendEquation () |
const BlendEquation * | getBlendEquation () const |
BlendEquation * | getBlendEquation () |
AlphaFunc * | gocAlphaFunc () |
const AlphaFunc * | getAlphaFunc () const |
AlphaFunc * | getAlphaFunc () |
Material * | gocMaterial () |
const Material * | getMaterial () const |
Material * | getMaterial () |
LightModel * | gocLightModel () |
const LightModel * | getLightModel () const |
LightModel * | getLightModel () |
Fog * | gocFog () |
const Fog * | getFog () const |
Fog * | getFog () |
PolygonOffset * | gocPolygonOffset () |
const PolygonOffset * | getPolygonOffset () const |
PolygonOffset * | getPolygonOffset () |
LogicOp * | gocLogicOp () |
const LogicOp * | getLogicOp () const |
LogicOp * | getLogicOp () |
DepthRange * | gocDepthRange () |
const DepthRange * | getDepthRange () const |
DepthRange * | getDepthRange () |
LineWidth * | gocLineWidth () |
const LineWidth * | getLineWidth () const |
LineWidth * | getLineWidth () |
PointSize * | gocPointSize () |
const PointSize * | getPointSize () const |
PointSize * | getPointSize () |
LineStipple * | gocLineStipple () |
const LineStipple * | getLineStipple () const |
LineStipple * | getLineStipple () |
PolygonStipple * | gocPolygonStipple () |
const PolygonStipple * | getPolygonStipple () const |
PolygonStipple * | getPolygonStipple () |
PointParameter * | gocPointParameter () |
const PointParameter * | getPointParameter () const |
PointParameter * | getPointParameter () |
StencilFunc * | gocStencilFunc () |
const StencilFunc * | getStencilFunc () const |
StencilFunc * | getStencilFunc () |
StencilOp * | gocStencilOp () |
const StencilOp * | getStencilOp () const |
StencilOp * | getStencilOp () |
StencilMask * | gocStencilMask () |
const StencilMask * | getStencilMask () const |
StencilMask * | getStencilMask () |
BlendColor * | gocBlendColor () |
const BlendColor * | getBlendColor () const |
BlendColor * | getBlendColor () |
BlendFunc * | gocBlendFunc () |
const BlendFunc * | getBlendFunc () const |
BlendFunc * | getBlendFunc () |
SampleCoverage * | gocSampleCoverage () |
const SampleCoverage * | getSampleCoverage () const |
SampleCoverage * | getSampleCoverage () |
VertexAttrib * | gocVertexAttrib (int attr_index) |
const VertexAttrib * | getVertexAttrib (int attr_index) const |
VertexAttrib * | getVertexAttrib (int attr_index) |
Light * | gocLight (int light_index) |
const Light * | getLight (int light_index) const |
Light * | getLight (int light_index) |
ClipPlane * | gocClipPlane (int plane_index) |
const ClipPlane * | getClipPlane (int plane_index) const |
ClipPlane * | getClipPlane (int plane_index) |
TextureSampler * | gocTextureSampler (int unit_index) |
const TextureSampler * | getTextureSampler (int unit_index) const |
TextureSampler * | getTextureSampler (int unit_index) |
TexEnv * | gocTexEnv (int unit_index) |
const TexEnv * | getTexEnv (int unit_index) const |
TexEnv * | getTexEnv (int unit_index) |
TexGen * | gocTexGen (int unit_index) |
const TexGen * | getTexGen (int unit_index) const |
TexGen * | getTexGen (int unit_index) |
TextureMatrix * | gocTextureMatrix (int unit_index) |
const TextureMatrix * | getTextureMatrix (int unit_index) const |
TextureMatrix * | getTextureMatrix (int unit_index) |
void | enable (EEnable capability) |
void | disable (EEnable capability) |
const std::vector< EEnable > & | enables () const |
int | isEnabled (EEnable capability) const |
void | disableAll () |
bool | isBlendingEnabled () const |
void | setRenderState (RenderStateNonIndexed *renderstate) |
void | setRenderState (RenderState *renderstate, int index) |
const RenderState * | renderState (ERenderState type, int index=0) const |
RenderState * | renderState (ERenderState type, int index=0) |
size_t | renderStatesCount () const |
const RenderStateSlot * | renderStates () const |
RenderStateSlot * | renderStates () |
void | eraseRenderState (ERenderState type, int index=-1) |
If index == -1 all the renderstates of the given type are removed regardless of their binding index. More... | |
void | eraseRenderState (RenderState *rs, int index) |
void | eraseAllRenderStates () |
const GLSLProgram * | glslProgram () const |
Returns the GLSLProgram associated to a Shader (if any) More... | |
GLSLProgram * | glslProgram () |
Returns the GLSLProgram associated to a Shader (if any) More... | |
void | setUniform (Uniform *uniform) |
Equivalent to gocUniformSet()->setUniform(...) More... | |
const std::vector< ref< Uniform > > & | uniforms () const |
Equivalent to gocUniformSet()->uniforms(...) More... | |
void | eraseUniform (const char *name) |
Equivalent to gocUniformSet()->eraseUniform(...) More... | |
void | eraseUniform (const Uniform *uniform) |
Equivalent to gocUniformSet()->eraseUniform(...) More... | |
void | eraseAllUniforms () |
Equivalent to gocUniformSet()->eraseAllUniforms(...) More... | |
Uniform * | gocUniform (const char *name) |
Equivalent to gocUniformSet()->gocUniform(...) More... | |
Uniform * | getUniform (const char *name) |
Equivalent to gocUniformSet()->getUniform(...) More... | |
const Uniform * | getUniform (const char *name) const |
Equivalent to gocUniformSet()->getUniform(...) More... | |
EnableSet * | gocEnableSet () |
EnableSet * | getEnableSet () |
const EnableSet * | getEnableSet () const |
RenderStateSet * | gocRenderStateSet () |
RenderStateSet * | getRenderStateSet () |
const RenderStateSet * | getRenderStateSet () const |
UniformSet * | gocUniformSet () |
Returns the UniformSet installed (creating it if no UniformSet has been installed) More... | |
UniformSet * | getUniformSet () |
Returns the UniformSet installed. More... | |
const UniformSet * | getUniformSet () const |
Returns the UniformSet installed. More... | |
void | setEnableSet (EnableSet *es) |
void | setRenderStateSet (RenderStateSet *rss) |
void | setUniformSet (UniformSet *us) |
Installs a new UniformSet. More... | |
void | setScissor (Scissor *scissor) |
Sets the Scissor to be used when rendering an Actor. More... | |
const Scissor * | scissor () const |
Returns the Scissor to be used when rendering an Actor. More... | |
Scissor * | scissor () |
Returns the Scissor to be used when rendering an Actor. More... | |
void | setShaderAnimator (ShaderAnimator *animator) |
Installs the ShaderAnimator used to update/animate a Shader (see vl::ShaderAnimator documentation). More... | |
ShaderAnimator * | shaderAnimator () |
Returns the ShaderAnimator used to update/animate a Shader (see vl::ShaderAnimator documentation). More... | |
const ShaderAnimator * | shaderAnimator () const |
Returns the ShaderAnimator used to update/animate a Shader (see vl::ShaderAnimator documentation). More... | |
real | lastUpdateTime () const |
Last time this Actor was animated/updated using a shaderAnimator(). More... | |
void | setLastUpdateTime (real time) |
Used internally. More... | |
Public Member Functions inherited from vl::Object | |
Object () | |
Constructor. More... | |
Object (const Object &other) | |
Copy constructor: copies the name, ref count mutex and user data. More... | |
Object & | operator= (const Object &other) |
Copy operator: copies the object's name, ref count mutex and user data. More... | |
const std::string & | objectName () const |
The name of the object, by default set to the object's class name. More... | |
void | setObjectName (const char *name) |
The name of the object, by default set to the object's class name in debug builds. More... | |
void | setObjectName (const std::string &name) |
The name of the object, by default set to the object's class name in debug builds. More... | |
void | setRefCountMutex (IMutex *mutex) |
The mutex used to protect the reference counting of an Object across multiple threads. More... | |
IMutex * | refCountMutex () |
The mutex used to protect the reference counting of an Object across multiple threads. More... | |
const IMutex * | refCountMutex () const |
The mutex used to protect the reference counting of an Object across multiple threads. More... | |
int | referenceCount () const |
Returns the number of references of an object. More... | |
void | incReference () const |
Increments the reference count of an object. More... | |
void | decReference () |
Decrements the reference count of an object and deletes it if both automaticDelete() is true the count reaches 0. More... | |
void | setAutomaticDelete (bool autodel_on) |
If set to true the Object is deleted when its reference count reaches 0. More... | |
bool | automaticDelete () const |
If set to true the Object is deleted when its reference count reaches 0. More... | |
template<class T > | |
T * | as () |
Casts an Object to the specified class. More... | |
template<class T > | |
const T * | as () const |
Casts an Object to the specified class. More... | |
Protected Attributes | |
ref< RenderStateSet > | mRenderStateSet |
ref< EnableSet > | mEnableSet |
ref< UniformSet > | mUniformSet |
ref< Scissor > | mScissor |
ref< ShaderAnimator > | mShaderAnimator |
real | mLastUpdateTime |
Protected Attributes inherited from vl::Object | |
std::string | mObjectName |
IMutex * | mRefCountMutex |
int | mReferenceCount |
bool | mAutomaticDelete |
Additional Inherited Members | |
Protected Member Functions inherited from vl::Object | |
virtual | ~Object () |
Manages most of the OpenGL rendering states responsible of the final aspect of the rendered objects.
A Shader represents a rendering pass. Using the Effect class you can assign more rendering passes to an Actor. You can also specify different sets of rendering passes for each Effect LOD, for more information see Effect.
Definition at line 1830 of file Shader.hpp.
Shader::Shader | ( | ) |
|
virtual |
Destructor.
Definition at line 55 of file Shader.cpp.
Returns the deep copy of a Shader.
Definition at line 1901 of file Shader.hpp.
References deepCopyFrom().
Performs a deep copy from the given Shader.
Definition at line 1909 of file Shader.hpp.
References vl::RenderStateSet::deepCopyFrom(), vl::UniformSet::deepCopyFrom(), mEnableSet, mRenderStateSet, mScissor, mShaderAnimator, mUniformSet, and NULL.
Referenced by deepCopy().
|
inline |
Definition at line 2160 of file Shader.hpp.
Referenced by vl::ObjLoader::loadOBJ().
|
inline |
Definition at line 2166 of file Shader.hpp.
Referenced by vl::ShaderNode::inherit().
|
inline |
Definition at line 2158 of file Shader.hpp.
Referenced by vl::Molecule::ballAndStickStyle(), vl::Molecule::generateRings(), vlX::VLXClassWrapper_Shader::importShader(), vl::ShaderNode::inherit(), vl::DaeLoader::load(), vl::load3DS(), vl::loadAC3D(), vl::ObjLoader::loadOBJ(), vl::PlyLoader::loadPly(), vl::OcclusionCullRenderer::OcclusionCullRenderer(), vl::VectorGraphics::popScissor(), vl::SceneManagerPortals::renderPortal(), vl::DaeLoader::setup_vl_Effect(), vl::VolumePlot::setupLabels(), vl::DaeLoader::setupLights(), vl::Molecule::sticksStyle(), and vl::Molecule::wireframeStyle().
|
inline |
Definition at line 2162 of file Shader.hpp.
|
inline |
Definition at line 2191 of file Shader.hpp.
Referenced by vl::ShaderNode::inherit().
|
inline |
Equivalent to gocUniformSet()->eraseAllUniforms(...)
Definition at line 2214 of file Shader.hpp.
Referenced by vl::ShaderNode::inherit().
|
inline |
If index == -1 all the renderstates of the given type are removed regardless of their binding index.
Definition at line 2187 of file Shader.hpp.
|
inline |
Definition at line 2189 of file Shader.hpp.
References vl::RenderState::type().
|
inline |
Equivalent to gocUniformSet()->eraseUniform(...)
Definition at line 2208 of file Shader.hpp.
|
inline |
Equivalent to gocUniformSet()->eraseUniform(...)
Definition at line 2211 of file Shader.hpp.
|
inline |
Definition at line 2027 of file Shader.hpp.
References NULL, and vl::RS_AlphaFunc.
|
inline |
Definition at line 2028 of file Shader.hpp.
References NULL, and vl::RS_AlphaFunc.
|
inline |
Definition at line 2087 of file Shader.hpp.
References NULL, and vl::RS_BlendColor.
|
inline |
Definition at line 2088 of file Shader.hpp.
References NULL, and vl::RS_BlendColor.
|
inline |
Definition at line 2023 of file Shader.hpp.
References NULL, and vl::RS_BlendEquation.
|
inline |
Definition at line 2024 of file Shader.hpp.
References NULL, and vl::RS_BlendEquation.
|
inline |
Definition at line 2091 of file Shader.hpp.
References NULL, and vl::RS_BlendFunc.
|
inline |
Definition at line 2092 of file Shader.hpp.
References NULL, and vl::RS_BlendFunc.
const ClipPlane * Shader::getClipPlane | ( | int | plane_index | ) | const |
Definition at line 167 of file Shader.cpp.
References getRenderStateSet(), NULL, vl::RenderStateSet::renderState(), and vl::RS_ClipPlane.
ClipPlane * Shader::getClipPlane | ( | int | plane_index | ) |
Definition at line 169 of file Shader.cpp.
References getRenderStateSet(), NULL, vl::RenderStateSet::renderState(), and vl::RS_ClipPlane.
|
inline |
Definition at line 1999 of file Shader.hpp.
References NULL, and vl::RS_Color.
|
inline |
Definition at line 2000 of file Shader.hpp.
References NULL, and vl::RS_Color.
|
inline |
Definition at line 2011 of file Shader.hpp.
References NULL, and vl::RS_ColorMask.
|
inline |
Definition at line 2012 of file Shader.hpp.
References NULL, and vl::RS_ColorMask.
|
inline |
Definition at line 1983 of file Shader.hpp.
References NULL, and vl::RS_CullFace.
|
inline |
Definition at line 1984 of file Shader.hpp.
References NULL, and vl::RS_CullFace.
|
inline |
Definition at line 1991 of file Shader.hpp.
References NULL, and vl::RS_DepthFunc.
|
inline |
Definition at line 1992 of file Shader.hpp.
References NULL, and vl::RS_DepthFunc.
|
inline |
Definition at line 1995 of file Shader.hpp.
References NULL, and vl::RS_DepthMask.
|
inline |
Definition at line 1996 of file Shader.hpp.
References NULL, and vl::RS_DepthMask.
|
inline |
Definition at line 2051 of file Shader.hpp.
References NULL, and vl::RS_DepthRange.
|
inline |
Definition at line 2052 of file Shader.hpp.
References NULL, and vl::RS_DepthRange.
|
inline |
Definition at line 2229 of file Shader.hpp.
Referenced by vlX::VLXClassWrapper_Shader::exportShader(), vl::DaeLoader::load(), vl::RenderQueueSorterAggressive::operator()(), vl::OcclusionCullRenderer::render_pass2(), and vl::Renderer::renderRaw().
|
inline |
Definition at line 2231 of file Shader.hpp.
|
inline |
Definition at line 2039 of file Shader.hpp.
References NULL, and vl::RS_Fog.
|
inline |
Definition at line 2040 of file Shader.hpp.
References NULL, and vl::RS_Fog.
|
inline |
Definition at line 1987 of file Shader.hpp.
References NULL, and vl::RS_FrontFace.
|
inline |
Definition at line 1988 of file Shader.hpp.
References NULL, and vl::RS_FrontFace.
const GLSLProgram * Shader::getGLSLProgram | ( | ) | const |
Returns a GLSLProgram if it exists or NULL otherwise.
Definition at line 59 of file Shader.cpp.
References getRenderStateSet(), vl::RenderStateSet::renderState(), and vl::RS_GLSLProgram.
Referenced by vl::RaycastVolume::onActorRenderStarted(), vl::SlicedVolume::onActorRenderStarted(), vl::RaycastVolume::updateUniforms(), and vl::SlicedVolume::updateUniforms().
GLSLProgram * Shader::getGLSLProgram | ( | ) |
Returns a GLSLProgram if it exists or NULL otherwise.
Definition at line 64 of file Shader.cpp.
References getRenderStateSet(), vl::RenderStateSet::renderState(), and vl::RS_GLSLProgram.
|
inline |
Definition at line 1979 of file Shader.hpp.
References NULL, and vl::RS_Hint.
|
inline |
Definition at line 1980 of file Shader.hpp.
References NULL, and vl::RS_Hint.
const Light * Shader::getLight | ( | int | light_index | ) | const |
Definition at line 161 of file Shader.cpp.
References getRenderStateSet(), NULL, vl::RenderStateSet::renderState(), and vl::RS_Light.
Referenced by vl::SlicedVolume::updateUniforms().
Light * Shader::getLight | ( | int | light_index | ) |
Definition at line 163 of file Shader.cpp.
References getRenderStateSet(), NULL, vl::RenderStateSet::renderState(), and vl::RS_Light.
|
inline |
Definition at line 2035 of file Shader.hpp.
References NULL, and vl::RS_LightModel.
|
inline |
Definition at line 2036 of file Shader.hpp.
References NULL, and vl::RS_LightModel.
|
inline |
Definition at line 2063 of file Shader.hpp.
References NULL, and vl::RS_LineStipple.
|
inline |
Definition at line 2064 of file Shader.hpp.
References NULL, and vl::RS_LineStipple.
|
inline |
Definition at line 2055 of file Shader.hpp.
References NULL, and vl::RS_LineWidth.
|
inline |
Definition at line 2056 of file Shader.hpp.
References NULL, and vl::RS_LineWidth.
|
inline |
Definition at line 2047 of file Shader.hpp.
References NULL, and vl::RS_LogicOp.
|
inline |
Definition at line 2048 of file Shader.hpp.
References NULL, and vl::RS_LogicOp.
|
inline |
Definition at line 2031 of file Shader.hpp.
References NULL, and vl::RS_Material.
|
inline |
Definition at line 2032 of file Shader.hpp.
References NULL, and vl::RS_Material.
|
inline |
Definition at line 2007 of file Shader.hpp.
References NULL, and vl::RS_Normal.
|
inline |
Definition at line 2008 of file Shader.hpp.
References NULL, and vl::RS_Normal.
|
inline |
Definition at line 1975 of file Shader.hpp.
References NULL, and vl::RS_PixelTransfer.
|
inline |
Definition at line 1976 of file Shader.hpp.
References NULL, and vl::RS_PixelTransfer.
|
inline |
Definition at line 2071 of file Shader.hpp.
References NULL, and vl::RS_PointParameter.
|
inline |
Definition at line 2072 of file Shader.hpp.
References NULL, and vl::RS_PointParameter.
|
inline |
Definition at line 2059 of file Shader.hpp.
References NULL, and vl::RS_PointSize.
|
inline |
Definition at line 2060 of file Shader.hpp.
References NULL, and vl::RS_PointSize.
|
inline |
Definition at line 2015 of file Shader.hpp.
References NULL, and vl::RS_PolygonMode.
|
inline |
Definition at line 2016 of file Shader.hpp.
References NULL, and vl::RS_PolygonMode.
|
inline |
Definition at line 2043 of file Shader.hpp.
References NULL, and vl::RS_PolygonOffset.
|
inline |
Definition at line 2044 of file Shader.hpp.
References NULL, and vl::RS_PolygonOffset.
|
inline |
Definition at line 2067 of file Shader.hpp.
References NULL, and vl::RS_PolygonStipple.
|
inline |
Definition at line 2068 of file Shader.hpp.
References NULL, and vl::RS_PolygonStipple.
|
inline |
Definition at line 2235 of file Shader.hpp.
Referenced by vlX::VLXClassWrapper_Shader::exportShader(), getClipPlane(), getGLSLProgram(), getLight(), getVertexAttrib(), vl::DaeLoader::load(), vl::RenderQueueSorterAggressive::operator()(), vl::OcclusionCullRenderer::render_pass2(), and vl::Renderer::renderRaw().
|
inline |
Definition at line 2237 of file Shader.hpp.
|
inline |
Definition at line 2095 of file Shader.hpp.
References NULL, and vl::RS_SampleCoverage.
|
inline |
Definition at line 2096 of file Shader.hpp.
References NULL, and vl::RS_SampleCoverage.
|
inline |
Definition at line 2003 of file Shader.hpp.
References NULL, and vl::RS_SecondaryColor.
|
inline |
Definition at line 2004 of file Shader.hpp.
References NULL, and vl::RS_SecondaryColor.
|
inline |
Definition at line 2019 of file Shader.hpp.
References NULL, and vl::RS_ShadeModel.
|
inline |
Definition at line 2020 of file Shader.hpp.
References NULL, and vl::RS_ShadeModel.
|
inline |
Definition at line 2075 of file Shader.hpp.
References NULL, and vl::RS_StencilFunc.
|
inline |
Definition at line 2076 of file Shader.hpp.
References NULL, and vl::RS_StencilFunc.
|
inline |
Definition at line 2083 of file Shader.hpp.
References NULL, and vl::RS_StencilMask.
|
inline |
Definition at line 2084 of file Shader.hpp.
References NULL, and vl::RS_StencilMask.
|
inline |
Definition at line 2079 of file Shader.hpp.
References NULL, and vl::RS_StencilOp.
|
inline |
Definition at line 2080 of file Shader.hpp.
References NULL, and vl::RS_StencilOp.
|
inline |
Definition at line 2136 of file Shader.hpp.
References vl::RS_TexEnv.
|
inline |
Definition at line 2138 of file Shader.hpp.
References vl::RS_TexEnv.
|
inline |
Definition at line 2144 of file Shader.hpp.
References vl::RS_TexGen.
|
inline |
Definition at line 2146 of file Shader.hpp.
References vl::RS_TexGen.
|
inline |
Definition at line 2152 of file Shader.hpp.
References vl::RS_TextureMatrix.
|
inline |
Definition at line 2154 of file Shader.hpp.
References vl::RS_TextureMatrix.
|
inline |
Definition at line 2128 of file Shader.hpp.
References vl::RS_TextureSampler.
Referenced by vl::RaycastVolume::updateUniforms().
|
inline |
Definition at line 2130 of file Shader.hpp.
References vl::RS_TextureSampler.
|
inline |
Equivalent to gocUniformSet()->getUniform(...)
Definition at line 2220 of file Shader.hpp.
References vl::Uniform::getUniform().
|
inline |
Equivalent to gocUniformSet()->getUniform(...)
Definition at line 2223 of file Shader.hpp.
References vl::Uniform::getUniform().
|
inline |
Returns the UniformSet installed.
Definition at line 2261 of file Shader.hpp.
Referenced by vlX::VLXClassWrapper_Shader::exportShader(), and vl::Renderer::renderRaw().
|
inline |
const VertexAttrib * Shader::getVertexAttrib | ( | int | attr_index | ) | const |
Definition at line 155 of file Shader.cpp.
References getRenderStateSet(), NULL, vl::RenderStateSet::renderState(), and vl::RS_VertexAttrib.
VertexAttrib * Shader::getVertexAttrib | ( | int | attr_index | ) |
Definition at line 157 of file Shader.cpp.
References getRenderStateSet(), NULL, vl::RenderStateSet::renderState(), and vl::RS_VertexAttrib.
|
inline |
Returns the GLSLProgram associated to a Shader (if any)
Definition at line 2194 of file Shader.hpp.
References NULL.
Referenced by vl::Rendering::fillRenderQueue(), vl::MorphingCallback::onActorRenderStarted(), vl::RenderQueueSorterAggressive::operator()(), vl::OcclusionCullRenderer::render_pass2(), and vl::Renderer::renderRaw().
|
inline |
Returns the GLSLProgram associated to a Shader (if any)
Definition at line 2197 of file Shader.hpp.
AlphaFunc * Shader::gocAlphaFunc | ( | ) |
Definition at line 117 of file Shader.cpp.
References GET_OR_CREATE.
Referenced by vl::ObjLoader::loadOBJ(), and vl::VectorGraphics::popScissor().
BlendColor * Shader::gocBlendColor | ( | ) |
Definition at line 147 of file Shader.cpp.
References GET_OR_CREATE.
BlendEquation * Shader::gocBlendEquation | ( | ) |
Definition at line 115 of file Shader.cpp.
References GET_OR_CREATE.
Referenced by vl::VectorGraphics::popScissor().
BlendFunc * Shader::gocBlendFunc | ( | ) |
Definition at line 149 of file Shader.cpp.
References GET_OR_CREATE.
Referenced by vl::loadAC3D(), and vl::VectorGraphics::popScissor().
ClipPlane * Shader::gocClipPlane | ( | int | plane_index | ) |
Definition at line 165 of file Shader.cpp.
References GET_OR_CREATE_IDX.
Color * Shader::gocColor | ( | ) |
Definition at line 103 of file Shader.cpp.
References GET_OR_CREATE.
Referenced by vl::SceneManagerPortals::renderPortal(), vl::DaeLoader::setup_vl_Effect(), and vl::DaeLoader::setupLights().
ColorMask * Shader::gocColorMask | ( | ) |
Definition at line 109 of file Shader.cpp.
References GET_OR_CREATE.
Referenced by vl::OcclusionCullRenderer::OcclusionCullRenderer(), and vl::VectorGraphics::popScissor().
CullFace * Shader::gocCullFace | ( | ) |
Definition at line 95 of file Shader.cpp.
References GET_OR_CREATE.
DepthFunc * Shader::gocDepthFunc | ( | ) |
Definition at line 99 of file Shader.cpp.
References GET_OR_CREATE.
Referenced by vl::OcclusionCullRenderer::OcclusionCullRenderer().
DepthMask * Shader::gocDepthMask | ( | ) |
Definition at line 101 of file Shader.cpp.
References GET_OR_CREATE.
Referenced by vl::OcclusionCullRenderer::OcclusionCullRenderer().
DepthRange * Shader::gocDepthRange | ( | ) |
Definition at line 129 of file Shader.cpp.
References GET_OR_CREATE.
|
inline |
Definition at line 2227 of file Shader.hpp.
Fog * Shader::gocFog | ( | ) |
Definition at line 123 of file Shader.cpp.
References GET_OR_CREATE.
FrontFace * Shader::gocFrontFace | ( | ) |
Definition at line 97 of file Shader.cpp.
References GET_OR_CREATE.
GLSLProgram * Shader::gocGLSLProgram | ( | ) |
Gets or creates a GLSLProgram and returns it.
Definition at line 89 of file Shader.cpp.
References GET_OR_CREATE.
Hint * Shader::gocHint | ( | ) |
Definition at line 93 of file Shader.cpp.
References GET_OR_CREATE.
Referenced by vl::VectorGraphics::popScissor().
Light * Shader::gocLight | ( | int | light_index | ) |
Definition at line 159 of file Shader.cpp.
References GET_OR_CREATE_IDX.
LightModel * Shader::gocLightModel | ( | ) |
Definition at line 121 of file Shader.cpp.
References GET_OR_CREATE.
Referenced by vl::Molecule::ballAndStickStyle(), vl::loadAC3D(), vl::ObjLoader::loadOBJ(), vl::DaeLoader::setup_vl_Effect(), and vl::Molecule::sticksStyle().
LineStipple * Shader::gocLineStipple | ( | ) |
Definition at line 135 of file Shader.cpp.
References GET_OR_CREATE.
Referenced by vl::VectorGraphics::popScissor().
LineWidth * Shader::gocLineWidth | ( | ) |
Definition at line 131 of file Shader.cpp.
References GET_OR_CREATE.
Referenced by vl::VectorGraphics::popScissor(), vl::SceneManagerPortals::renderPortal(), and vl::Molecule::wireframeStyle().
LogicOp * Shader::gocLogicOp | ( | ) |
Definition at line 127 of file Shader.cpp.
References GET_OR_CREATE.
Referenced by vl::VectorGraphics::popScissor().
Material * Shader::gocMaterial | ( | ) |
Definition at line 119 of file Shader.cpp.
References GET_OR_CREATE.
Referenced by vl::Molecule::ballAndStickStyle(), vl::loadAC3D(), vl::ObjLoader::loadOBJ(), vl::VectorGraphics::popScissor(), vl::DaeLoader::setup_vl_Effect(), and vl::Molecule::sticksStyle().
Normal * Shader::gocNormal | ( | ) |
Definition at line 107 of file Shader.cpp.
References GET_OR_CREATE.
PixelTransfer * Shader::gocPixelTransfer | ( | ) |
Definition at line 91 of file Shader.cpp.
References GET_OR_CREATE.
PointParameter * Shader::gocPointParameter | ( | ) |
Definition at line 139 of file Shader.cpp.
References GET_OR_CREATE.
PointSize * Shader::gocPointSize | ( | ) |
Definition at line 133 of file Shader.cpp.
References GET_OR_CREATE.
Referenced by vl::VectorGraphics::popScissor().
PolygonMode * Shader::gocPolygonMode | ( | ) |
Definition at line 111 of file Shader.cpp.
References GET_OR_CREATE.
Referenced by vl::DaeLoader::setupLights().
PolygonOffset * Shader::gocPolygonOffset | ( | ) |
Definition at line 125 of file Shader.cpp.
References GET_OR_CREATE.
Referenced by vl::OcclusionCullRenderer::OcclusionCullRenderer().
PolygonStipple * Shader::gocPolygonStipple | ( | ) |
Definition at line 137 of file Shader.cpp.
References GET_OR_CREATE.
Referenced by vl::VectorGraphics::popScissor().
|
inline |
Definition at line 2233 of file Shader.hpp.
Referenced by vl::Rendering::fillRenderQueue().
SampleCoverage * Shader::gocSampleCoverage | ( | ) |
Definition at line 151 of file Shader.cpp.
References GET_OR_CREATE.
SecondaryColor * Shader::gocSecondaryColor | ( | ) |
Definition at line 105 of file Shader.cpp.
References GET_OR_CREATE.
ShadeModel * Shader::gocShadeModel | ( | ) |
Definition at line 113 of file Shader.cpp.
References GET_OR_CREATE.
StencilFunc * Shader::gocStencilFunc | ( | ) |
Definition at line 141 of file Shader.cpp.
References GET_OR_CREATE.
Referenced by vl::VectorGraphics::popScissor().
StencilMask * Shader::gocStencilMask | ( | ) |
Definition at line 145 of file Shader.cpp.
References GET_OR_CREATE.
Referenced by vl::VectorGraphics::popScissor().
StencilOp * Shader::gocStencilOp | ( | ) |
Definition at line 143 of file Shader.cpp.
References GET_OR_CREATE.
Referenced by vl::VectorGraphics::popScissor().
TexEnv * Shader::gocTexEnv | ( | int | unit_index | ) |
Definition at line 175 of file Shader.cpp.
References GET_OR_CREATE_IDX.
Referenced by vl::VectorGraphics::popScissor().
TexGen * Shader::gocTexGen | ( | int | unit_index | ) |
Definition at line 173 of file Shader.cpp.
References GET_OR_CREATE_IDX.
TextureMatrix * Shader::gocTextureMatrix | ( | int | unit_index | ) |
Definition at line 177 of file Shader.cpp.
References GET_OR_CREATE_IDX.
TextureSampler * Shader::gocTextureSampler | ( | int | unit_index | ) |
Definition at line 171 of file Shader.cpp.
References GET_OR_CREATE_IDX.
Referenced by vl::loadAC3D(), vl::ObjLoader::loadOBJ(), vl::VectorGraphics::popScissor(), and vl::DaeLoader::setup_vl_Effect().
|
inline |
Equivalent to gocUniformSet()->gocUniform(...)
Definition at line 2217 of file Shader.hpp.
|
inline |
Returns the UniformSet installed (creating it if no UniformSet has been installed)
Definition at line 2249 of file Shader.hpp.
VertexAttrib * Shader::gocVertexAttrib | ( | int | attr_index | ) |
Definition at line 153 of file Shader.cpp.
References GET_OR_CREATE_IDX.
|
inline |
Definition at line 2168 of file Shader.hpp.
Referenced by vl::RenderQueueSorterStandard::confirmZCameraDistanceNeed(), vl::RenderQueueSorterAggressive::confirmZCameraDistanceNeed(), vl::RenderQueueSorterStandard::operator()(), vl::RenderQueueSorterOcclusion::operator()(), and vl::RenderQueueSorterAggressive::operator()().
|
inline |
Definition at line 2164 of file Shader.hpp.
Referenced by vl::DaeLoader::load().
|
inline |
Last time this Actor was animated/updated using a shaderAnimator().
Definition at line 2330 of file Shader.hpp.
Referenced by vl::Rendering::fillRenderQueue().
|
inline |
Definition at line 2176 of file Shader.hpp.
References NULL.
|
inline |
Definition at line 2178 of file Shader.hpp.
|
inline |
Definition at line 2182 of file Shader.hpp.
|
inline |
Definition at line 2184 of file Shader.hpp.
|
inline |
Definition at line 2180 of file Shader.hpp.
|
inline |
Disables everything, erases all the render states, erases all the uniforms.
Definition at line 1956 of file Shader.hpp.
|
inline |
Returns the Scissor to be used when rendering an Actor.
Definition at line 2309 of file Shader.hpp.
Referenced by vl::OcclusionCullRenderer::render_pass2(), and vl::Renderer::renderRaw().
|
inline |
Returns the Scissor to be used when rendering an Actor.
Definition at line 2318 of file Shader.hpp.
|
inline |
Definition at line 2275 of file Shader.hpp.
Referenced by vl::DaeLoader::load().
|
inline |
Used internally.
Definition at line 2333 of file Shader.hpp.
Referenced by vl::Rendering::fillRenderQueue().
|
inline |
Definition at line 2172 of file Shader.hpp.
Referenced by vl::Molecule::ballAndStickStyle(), vlX::VLXClassWrapper_Shader::importShader(), vl::ShaderNode::inherit(), vl::DaeLoader::load(), and vl::Molecule::sticksStyle().
|
inline |
Definition at line 2174 of file Shader.hpp.
|
inline |
Definition at line 2277 of file Shader.hpp.
Referenced by vl::DaeLoader::load().
|
inline |
|
inline |
Installs the ShaderAnimator used to update/animate a Shader (see vl::ShaderAnimator documentation).
Definition at line 2321 of file Shader.hpp.
|
inline |
Equivalent to gocUniformSet()->setUniform(...)
Definition at line 2202 of file Shader.hpp.
References VL_CHECK.
Referenced by vlX::VLXClassWrapper_Shader::importShader(), vl::ShaderNode::inherit(), and vl::Terrain::init().
|
inline |
|
inline |
Returns the ShaderAnimator used to update/animate a Shader (see vl::ShaderAnimator documentation).
Definition at line 2324 of file Shader.hpp.
Referenced by vl::Rendering::fillRenderQueue().
|
inline |
Returns the ShaderAnimator used to update/animate a Shader (see vl::ShaderAnimator documentation).
Definition at line 2327 of file Shader.hpp.
Returns the shallow copy of a Shader.
Definition at line 1846 of file Shader.hpp.
References shallowCopyFrom().
Performs a shallow copy from the given Shader.
The render states and the uniforms are shallow-copied however the Shader retains its own RenderStateSet, UniformSet and EnableSet.
Definition at line 1855 of file Shader.hpp.
References mEnableSet, mRenderStateSet, mScissor, mShaderAnimator, mUniformSet, NULL, vl::RenderStateSet::shallowCopyFrom(), and vl::UniformSet::shallowCopyFrom().
Referenced by shallowCopy().
Equivalent to gocUniformSet()->uniforms(...)
Definition at line 2205 of file Shader.hpp.
Referenced by vlX::VLXClassWrapper_Shader::exportShader().
Definition at line 2347 of file Shader.hpp.
Referenced by deepCopyFrom(), and shallowCopyFrom().
|
protected |
Definition at line 2351 of file Shader.hpp.
Referenced by Shader().
|
protected |
Definition at line 2346 of file Shader.hpp.
Referenced by deepCopyFrom(), and shallowCopyFrom().
Definition at line 2349 of file Shader.hpp.
Referenced by deepCopyFrom(), and shallowCopyFrom().
|
protected |
Definition at line 2350 of file Shader.hpp.
Referenced by deepCopyFrom(), and shallowCopyFrom().
|
protected |
Definition at line 2348 of file Shader.hpp.
Referenced by deepCopyFrom(), and shallowCopyFrom().
Visualization Library 2.0.0 Reference Documentation
Updated on Wed Dec 23 2020 12:44:11.
© Copyright Michele Bosi. All rights reserved.