Enables/disables textureCubeMap. More...
#include <Inventor/elements/SoTextureCubeMapEnabledElement.h>
Public Member Functions | |
virtual void | push (SoState *state) |
virtual void | pop (SoState *state, const SoElement *prevTopElement) |
Static Public Member Functions | |
static SoType | getClassTypeId () |
static int | getClassStackIndex () |
static void | set (SoState *state, SbBool value, SoNode *node=NULL) |
static SbBool | get (SoState *state, int unit=0) |
static SbBool | getDefault () |
static void | disableForShapeCache (SoState *state, int unit, bool disable) |
static bool | isDisabledForShapeCache (SoState *state, int unit) |
This element enables/disables textureCubeMap. This is implemented as a separate element from the TextureImageElement so the texture image can be changed without invalidating caches containing shapes-- shapes need to know if texturing is going on or not so they can decide to send down texture coordinates or not.
This element is very similar to SoTextureEnabledElement but contrary to SoTextureImageElement, we can't deal with the texture2D and the CubeMap texture in the same element.
This element cannot be overridden, but, since the elements that set it check each other's value, overriding those elements has the same effect.
SoTextureCubeMap, SoTextureEnabledElement, SoTexture3EnabledElement
static void SoTextureCubeMapEnabledElement::disableForShapeCache | ( | SoState * | state, | |
int | unit, | |||
bool | disable | |||
) | [static] |
Specify that a texture unit is not used by any shape, so we don't have to invalidate cache when this texture is enable/disable/modified.
Used by shapes to figure out if they need to send texture coordinates.
static int SoTextureCubeMapEnabledElement::getClassStackIndex | ( | ) | [static] |
Returns the stack id for this element.
Reimplemented from SoReplacedTextureElement.
static SoType SoTextureCubeMapEnabledElement::getClassTypeId | ( | ) | [static] |
Returns the type identifier for this class.
Reimplemented from SoReplacedTextureElement.
static SbBool SoTextureCubeMapEnabledElement::getDefault | ( | ) | [inline, static] |
By default there is no texture.
static bool SoTextureCubeMapEnabledElement::isDisabledForShapeCache | ( | SoState * | state, | |
int | unit | |||
) | [static] |
Return if that texture unit is not used by any shape, so we don't have to invalidate cache when this texture is enable/disable/modified.
virtual void SoTextureCubeMapEnabledElement::pop | ( | SoState * | state, | |
const SoElement * | prevTopElement | |||
) | [virtual] |
Overrides pop() method so side effects can occur in GL.
virtual void SoTextureCubeMapEnabledElement::push | ( | SoState * | state | ) | [virtual] |
Overrides push() so we can remember previous elements value and avoid making GL calls if this element has the same value.
Reimplemented from SoReplacedTextureElement.
static void SoTextureCubeMapEnabledElement::set | ( | SoState * | state, | |
SbBool | value, | |||
SoNode * | node = NULL | |||
) | [static] |
Used by GLTextureImageElement, set to TRUE when a non-null image is set, set to FALSE when there is no texture image (the default).