RenderEffects¶
-
class
RenderEffects
¶ Bases:
TypedWritableReferenceCount
This represents a unique collection of
RenderEffect
objects that correspond to a particular renderable state.You should not attempt to create or modify a RenderEffects object directly. Instead, call one of the
make()
functions to create one for you. And instead of modifying a RenderEffects object, create a new one.Inheritance diagram
-
ConstPointerTo<RenderEffects>
add_effect
(RenderEffect const *effect) const¶ Returns a new
RenderEffects
object that represents the same as the source state, with the newRenderEffect
added. If there is already aRenderEffect
with the same type, it is replaced.
-
int
find_effect
(TypeHandle type) const¶ Searches for an effect with the indicated type in the state, and returns its index if it is found, or -1 if it is not.
-
static TypeHandle
get_class_type
(void)¶
-
RenderEffect const *
get_effect
(std::size_t n) const¶
-
RenderEffect const *
get_effect
(TypeHandle type) const¶ Returns the nth effect in the state.
Looks for a
RenderEffect
of the indicated type in the state, and returns it if it is found, or NULL if it is not.
-
std::size_t
get_num_effects
(void) const¶ Returns the number of separate effects indicated in the state.
Deprecated: in Python, use len(effects) instead, or effects.size() in C++.
-
static int
get_num_states
(void)¶ Returns the total number of unique
RenderEffects
objects allocated in the world. This will go up and down during normal operations.
-
bool
is_empty
(void) const¶ Returns true if the state is empty, false otherwise.
-
static void
list_states
(std::ostream &out)¶ Lists all of the
RenderEffects
in the cache to the output stream, one per line. This can be quite a lot of output if the cache is large, so be prepared.
-
static ConstPointerTo<RenderEffects>
make
(RenderEffect const *effect)¶
-
static ConstPointerTo<RenderEffects>
make
(RenderEffect const *effect1, RenderEffect const *effect2)¶
-
static ConstPointerTo<RenderEffects>
make
(RenderEffect const *effect1, RenderEffect const *effect2, RenderEffect const *effect3)¶
-
static ConstPointerTo<RenderEffects>
make
(RenderEffect const *effect1, RenderEffect const *effect2, RenderEffect const *effect3, RenderEffect const *effect4)¶ Returns a
RenderEffects
with one effect set.Returns a
RenderEffects
with two effects set.Returns a
RenderEffects
with three effects set.Returns a
RenderEffects
with four effects set.
-
static ConstPointerTo<RenderEffects>
make_empty
(void)¶ Returns a
RenderEffects
with no effects set.
-
void
output
(std::ostream &out) const¶
-
ConstPointerTo<RenderEffects>
remove_effect
(TypeHandle type) const¶ Returns a new
RenderEffects
object that represents the same as the source state, with the indicatedRenderEffect
removed.
-
std::size_t
size
(void) const¶ Returns the number of separate effects indicated in the state.
-
static bool
validate_states
(void)¶ Ensures that the cache is still stored in sorted order. Returns true if so, false if there is a problem (which implies someone has modified one of the supposedly-const
RenderEffects
objects).
-
void
write
(std::ostream &out, int indent_level) const¶
-
ConstPointerTo<RenderEffects>