Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members  

SpriteParticleRenderer Class Reference

#include <spriteParticleRenderer.h>

Inheritance diagram for SpriteParticleRenderer:

BaseParticleRenderer ReferenceCount List of all members.

Private Member Functions

 PT (GeomSprite) _sprite_primitive
virtual void birth_particle (int index)
virtual void kill_particle (int index)
virtual void init_geoms (void)
virtual void render (pvector< PT(PhysicsObject) > &po_vector, int ttl_particles)
virtual void resize_pool (int new_size)
 SpriteParticleRenderer (const SpriteParticleRenderer &copy)
virtual ~SpriteParticleRenderer (void)
virtual BaseParticleRenderermake_copy (void)
INLINE SourceType get_source_type () const
void set_from_node (const NodePath &node_path)
INLINE void set_texture (Texture *tex)
INLINE void set_ll_uv (const TexCoordf &ll_uv)
INLINE void set_ur_uv (const TexCoordf &ur_uv)
INLINE void set_color (const Colorf &color)
INLINE void set_x_scale_flag (bool animate_x_ratio)
INLINE void set_y_scale_flag (bool animate_y_ratio)
INLINE void set_anim_angle_flag (bool animate_theta)
INLINE void set_initial_x_scale (float initial_x_scale)
INLINE void set_final_x_scale (float final_x_scale)
INLINE void set_initial_y_scale (float initial_y_scale)
INLINE void set_final_y_scale (float final_y_scale)
INLINE void set_nonanimated_theta (float theta)
INLINE void set_alpha_blend_method (ParticleRendererBlendMethod bm)
INLINE void set_alpha_disable (bool ad)
INLINE Textureget_texture (void) const
INLINE const TexCoordfget_ll_uv () const
INLINE const TexCoordfget_ur_uv () const
INLINE Colorf get_color (void) const
INLINE bool get_x_scale_flag (void) const
INLINE bool get_y_scale_flag (void) const
INLINE bool get_anim_angle_flag (void) const
INLINE float get_initial_x_scale (void) const
INLINE float get_final_x_scale (void) const
INLINE float get_initial_y_scale (void) const
INLINE float get_final_y_scale (void) const
INLINE float get_nonanimated_theta (void) const
INLINE ParticleRendererBlendMethod get_alpha_blend_method (void) const
INLINE bool get_alpha_disable (void) const

Private Attributes

PUBLISHED __pad0__: enum SourceType { ST_texture
PUBLISHED ST_from_node
PTA_Vertexf _vertex_array
PTA_Colorf _color_array
PTA_float _x_texel_array
PTA_float _y_texel_array
PTA_float _theta_array
Colorf _color
float _initial_x_texel_ratio
float _final_x_texel_ratio
float _initial_y_texel_ratio
float _final_y_texel_ratio
float _theta
bool _animate_x_ratio
bool _animate_y_ratio
bool _animate_theta
ParticleRendererBlendMethod _blend_method
Vertexf _aabb_min
Vertexf _aabb_max
int _pool_size
SourceType _source_type
PUBLISHED __pad1__: SpriteParticleRenderer(Texture *tex = (Texture *) NULL)

Constructor & Destructor Documentation

SpriteParticleRenderer::SpriteParticleRenderer const SpriteParticleRenderer &  copy  )  [private]
 

Definition at line 56 of file spriteParticleRenderer.cxx.

References _animate_theta, _animate_x_ratio, _animate_y_ratio, _blend_method, _color, _final_x_texel_ratio, _final_y_texel_ratio, _initial_x_texel_ratio, _initial_y_texel_ratio, _theta, and init_geoms().

Referenced by make_copy().

SpriteParticleRenderer::~SpriteParticleRenderer void   )  [private, virtual]
 

Definition at line 78 of file spriteParticleRenderer.cxx.


Member Function Documentation

void SpriteParticleRenderer::birth_particle int  index  )  [private, virtual]
 

Implements BaseParticleRenderer.

Definition at line 250 of file spriteParticleRenderer.cxx.

INLINE ParticleRendererBlendMethod SpriteParticleRenderer::get_alpha_blend_method void   )  const [private]
 

INLINE bool SpriteParticleRenderer::get_alpha_disable void   )  const [private]
 

INLINE bool SpriteParticleRenderer::get_anim_angle_flag void   )  const [private]
 

INLINE Colorf SpriteParticleRenderer::get_color void   )  const [private]
 

INLINE float SpriteParticleRenderer::get_final_x_scale void   )  const [private]
 

INLINE float SpriteParticleRenderer::get_final_y_scale void   )  const [private]
 

INLINE float SpriteParticleRenderer::get_initial_x_scale void   )  const [private]
 

INLINE float SpriteParticleRenderer::get_initial_y_scale void   )  const [private]
 

INLINE const TexCoordf& SpriteParticleRenderer::get_ll_uv  )  const [private]
 

INLINE float SpriteParticleRenderer::get_nonanimated_theta void   )  const [private]
 

INLINE SourceType SpriteParticleRenderer::get_source_type  )  const [private]
 

INLINE Texture* SpriteParticleRenderer::get_texture void   )  const [private]
 

INLINE const TexCoordf& SpriteParticleRenderer::get_ur_uv  )  const [private]
 

INLINE bool SpriteParticleRenderer::get_x_scale_flag void   )  const [private]
 

INLINE bool SpriteParticleRenderer::get_y_scale_flag void   )  const [private]
 

void SpriteParticleRenderer::init_geoms void   )  [private, virtual]
 

Implements BaseParticleRenderer.

Definition at line 234 of file spriteParticleRenderer.cxx.

References GeomNode::add_geom(), BaseParticleRenderer::get_render_node(), and GeomNode::remove_all_geoms().

Referenced by resize_pool(), and SpriteParticleRenderer().

void SpriteParticleRenderer::kill_particle int  index  )  [private, virtual]
 

Implements BaseParticleRenderer.

Definition at line 259 of file spriteParticleRenderer.cxx.

BaseParticleRenderer * SpriteParticleRenderer::make_copy void   )  [private, virtual]
 

Implements BaseParticleRenderer.

Definition at line 87 of file spriteParticleRenderer.cxx.

References SpriteParticleRenderer().

SpriteParticleRenderer::PT GeomSprite   )  [private]
 

void SpriteParticleRenderer::render pvector< PT(PhysicsObject) > &  po_vector,
int  ttl_particles
[private, virtual]
 

Implements BaseParticleRenderer.

Definition at line 268 of file spriteParticleRenderer.cxx.

References _aabb_max, _aabb_min, _animate_theta, _animate_x_ratio, _animate_y_ratio, _blend_method, _color, _color_array, _final_x_texel_ratio, _final_y_texel_ratio, _initial_x_texel_ratio, _initial_y_texel_ratio, _theta, _theta_array, _vertex_array, _x_texel_array, _y_texel_array, c, Colorf, CUBIC_T, BaseParticle::get_alive(), BaseParticleRenderer::get_alpha_mode(), BaseParticle::get_parameterized_age(), BaseParticleRenderer::get_render_node(), BaseParticle::get_theta(), BaseParticleRenderer::get_user_alpha(), BoundedObject::mark_bound_stale(), t, and Vertexf.

void SpriteParticleRenderer::resize_pool int  new_size  )  [private, virtual]
 

Implements BaseParticleRenderer.

Definition at line 176 of file spriteParticleRenderer.cxx.

References _animate_theta, _animate_x_ratio, _animate_y_ratio, _color_array, _pool_size, _theta_array, _vertex_array, _x_texel_array, _y_texel_array, PointerToArray< Colorf >::empty_array(), PointerToArray< Vertexf >::empty_array(), PointerToArray< float >::empty_array(), G_OVERALL, G_PER_PRIM, GeomBindType, and init_geoms().

INLINE void SpriteParticleRenderer::set_alpha_blend_method ParticleRendererBlendMethod  bm  )  [private]
 

INLINE void SpriteParticleRenderer::set_alpha_disable bool  ad  )  [private]
 

INLINE void SpriteParticleRenderer::set_anim_angle_flag bool  animate_theta  )  [private]
 

INLINE void SpriteParticleRenderer::set_color const Colorf color  )  [private]
 

INLINE void SpriteParticleRenderer::set_final_x_scale float  final_x_scale  )  [private]
 

INLINE void SpriteParticleRenderer::set_final_y_scale float  final_y_scale  )  [private]
 

void SpriteParticleRenderer::set_from_node const NodePath node_path  )  [private]
 

Definition at line 100 of file spriteParticleRenderer.cxx.

References _source_type, DCAST, NodePath::find(), NodePath::find_texture(), G_PER_VERTEX, GeomBindType, GeomNode::get_geom(), Geom::get_next_texcoord(), Geom::get_num_vertices(), Geom::get_texcoords(), NodePath::is_empty(), PandaNode::is_geom_node(), Geom::make_texcoord_iterator(), NodePath::node(), NULL, set_ll_uv(), set_texture(), set_ur_uv(), ST_from_node, tex, TexCoordf, and v.

INLINE void SpriteParticleRenderer::set_initial_x_scale float  initial_x_scale  )  [private]
 

INLINE void SpriteParticleRenderer::set_initial_y_scale float  initial_y_scale  )  [private]
 

INLINE void SpriteParticleRenderer::set_ll_uv const TexCoordf ll_uv  )  [private]
 

Referenced by set_from_node().

INLINE void SpriteParticleRenderer::set_nonanimated_theta float  theta  )  [private]
 

INLINE void SpriteParticleRenderer::set_texture Texture tex  )  [private]
 

Referenced by set_from_node().

INLINE void SpriteParticleRenderer::set_ur_uv const TexCoordf ur_uv  )  [private]
 

Referenced by set_from_node().

INLINE void SpriteParticleRenderer::set_x_scale_flag bool  animate_x_ratio  )  [private]
 

INLINE void SpriteParticleRenderer::set_y_scale_flag bool  animate_y_ratio  )  [private]
 


Member Data Documentation

PUBLISHED SpriteParticleRenderer::__pad0__ [private]
 

Reimplemented from BaseParticleRenderer.

Definition at line 47 of file spriteParticleRenderer.h.

PUBLISHED SpriteParticleRenderer::__pad1__ [private]
 

Definition at line 83 of file spriteParticleRenderer.h.

Vertexf SpriteParticleRenderer::_aabb_max [private]
 

Definition at line 70 of file spriteParticleRenderer.h.

Referenced by render().

Vertexf SpriteParticleRenderer::_aabb_min [private]
 

Definition at line 70 of file spriteParticleRenderer.h.

Referenced by render().

bool SpriteParticleRenderer::_animate_theta [private]
 

Definition at line 66 of file spriteParticleRenderer.h.

Referenced by render(), resize_pool(), and SpriteParticleRenderer().

bool SpriteParticleRenderer::_animate_x_ratio [private]
 

Definition at line 65 of file spriteParticleRenderer.h.

Referenced by render(), resize_pool(), and SpriteParticleRenderer().

bool SpriteParticleRenderer::_animate_y_ratio [private]
 

Definition at line 65 of file spriteParticleRenderer.h.

Referenced by render(), resize_pool(), and SpriteParticleRenderer().

ParticleRendererBlendMethod SpriteParticleRenderer::_blend_method [private]
 

Definition at line 68 of file spriteParticleRenderer.h.

Referenced by render(), and SpriteParticleRenderer().

Colorf SpriteParticleRenderer::_color [private]
 

Definition at line 59 of file spriteParticleRenderer.h.

Referenced by render(), and SpriteParticleRenderer().

PTA_Colorf SpriteParticleRenderer::_color_array [private]
 

Definition at line 54 of file spriteParticleRenderer.h.

Referenced by render(), and resize_pool().

float SpriteParticleRenderer::_final_x_texel_ratio [private]
 

Definition at line 61 of file spriteParticleRenderer.h.

Referenced by render(), and SpriteParticleRenderer().

float SpriteParticleRenderer::_final_y_texel_ratio [private]
 

Definition at line 62 of file spriteParticleRenderer.h.

Referenced by render(), and SpriteParticleRenderer().

float SpriteParticleRenderer::_initial_x_texel_ratio [private]
 

Definition at line 61 of file spriteParticleRenderer.h.

Referenced by render(), and SpriteParticleRenderer().

float SpriteParticleRenderer::_initial_y_texel_ratio [private]
 

Definition at line 62 of file spriteParticleRenderer.h.

Referenced by render(), and SpriteParticleRenderer().

int SpriteParticleRenderer::_pool_size [private]
 

Definition at line 72 of file spriteParticleRenderer.h.

Referenced by resize_pool().

SourceType SpriteParticleRenderer::_source_type [private]
 

Definition at line 73 of file spriteParticleRenderer.h.

Referenced by set_from_node().

float SpriteParticleRenderer::_theta [private]
 

Definition at line 63 of file spriteParticleRenderer.h.

Referenced by render(), and SpriteParticleRenderer().

PTA_float SpriteParticleRenderer::_theta_array [private]
 

Definition at line 57 of file spriteParticleRenderer.h.

Referenced by render(), and resize_pool().

PTA_Vertexf SpriteParticleRenderer::_vertex_array [private]
 

Definition at line 53 of file spriteParticleRenderer.h.

Referenced by render(), and resize_pool().

PTA_float SpriteParticleRenderer::_x_texel_array [private]
 

Definition at line 55 of file spriteParticleRenderer.h.

Referenced by render(), and resize_pool().

PTA_float SpriteParticleRenderer::_y_texel_array [private]
 

Definition at line 56 of file spriteParticleRenderer.h.

Referenced by render(), and resize_pool().

PUBLISHED SpriteParticleRenderer::ST_from_node [private]
 

Definition at line 47 of file spriteParticleRenderer.h.

Referenced by set_from_node().


The documentation for this class was generated from the following files:
Generated on Fri Apr 18 00:13:37 2003 for Panda by doxygen1.3