14 #ifndef BASEPARTICLERENDERER_H 15 #define BASEPARTICLERENDERER_H 34 enum ParticleRendererAlphaMode {
40 PR_NOT_INITIALIZED_YET
43 enum ParticleRendererBlendMethod {
51 INLINE
GeomNode *get_render_node()
const;
52 INLINE
NodePath get_render_node_path()
const;
54 INLINE
void set_alpha_mode(ParticleRendererAlphaMode am);
55 INLINE ParticleRendererAlphaMode get_alpha_mode()
const;
57 INLINE
void set_user_alpha(PN_stdfloat ua);
58 INLINE PN_stdfloat get_user_alpha()
const;
60 INLINE
void set_color_blend_mode(ColorBlendAttrib::Mode bm, ColorBlendAttrib::Operand oa = ColorBlendAttrib::O_zero, ColorBlendAttrib::Operand ob = ColorBlendAttrib::O_zero);
62 void set_ignore_scale(
bool ignore_scale);
63 INLINE
bool get_ignore_scale()
const;
65 virtual void output(std::ostream &out)
const;
66 virtual void write(std::ostream &out,
int indent=0)
const;
72 ParticleRendererAlphaMode _alpha_mode;
77 void update_alpha_mode(ParticleRendererAlphaMode am);
84 virtual void resize_pool(
int new_size) = 0;
92 PN_stdfloat _user_alpha;
101 virtual void birth_particle(
int index) = 0;
102 virtual void kill_particle(
int index) = 0;
105 virtual void init_geoms() = 0;
107 int ttl_particles) = 0;
114 #endif // BASEPARTICLERENDERER_H PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
A body on which physics will be applied.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
This is our own Panda specialization on the default STL vector.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
Contains and manages a particle system.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
Pure virtual particle renderer base class.
std::ostream & indent(std::ostream &out, int indent_level)
A handy function for doing text formatting.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
This represents a unique collection of RenderAttrib objects that correspond to a particular renderabl...
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
A base class for all things that want to be reference-counted.
An individual, physically-modelable particle abstract base class.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
NodePath is the fundamental system for disambiguating instances, and also provides a higher-level int...
A node that holds Geom objects, renderable pieces of geometry.