MeshDrawer

Inheritance:

Methods of MeshDrawer:

Methods of TypedObject:

MeshDrawer
MeshDrawer::MeshDrawer(void);

Description: Creates the MeshDrawer low level system.

begin
void MeshDrawer::begin(NodePath camera, NodePath render);

Description: Pass the current camera node and the root node.

billboard
void MeshDrawer::billboard(LVector3f pos, int frame, float size, LVector4f color);

Description: Draws a billboard - particle with no rotation. Billboards always face the camera.

blendedParticle
void MeshDrawer::blended_particle(LVector3f pos, int frame1, int frame2, float blend, float size, LVector4f color, float rotation);

Description: Works just like particle but accepts 2 frames and a blend (from 0 to 1) component between them

crossSegment
void MeshDrawer::cross_segment(LVector3f start, LVector3f stop, int frame, float thickness, LVector4f color);

Description: Draws a segment a line with a thickness. This segment does not use the bill boarding behavior and instead draws 2 planes in a cross.

end
void MeshDrawer::end(void);

Description: Finish the drawing and clearing off the remaining vertexes.

explosion
void MeshDrawer::explosion(LVector3f pos, int frame, float size, LVector4f color, int seed, int number, float distance);

Description: Draws number of particles in a sphere like emitter.

geometry
void MeshDrawer::geometry(NodePath node);

Description: Draws the geometry that is inside this node path into the MeshDrawer object. This performs a similar functions as RigidBodyCombiner but for very dynamic situations that share the same texture like physcal chunks of explosions.

getBudget
int MeshDrawer::get_budget(void);

Description: Gets the total triangle budget of the drawer

getClassType
static TypeHandle MeshDrawer::get_class_type(void);

Undocumented function.

getPlateSize
int MeshDrawer::get_plate_size(void);

Description: Gets the number of images are on one side of a sqare plate.

getRoot
NodePath MeshDrawer::get_root(void);

Description: Returns the root NodePath.

linkSegment
void MeshDrawer::link_segment(LVector3f pos, int frame, float thickness, LVector4f color);

Description: Stars or continues linked segment. Control position, frame, thickness and color with parameters.

linkSegmentEnd
void MeshDrawer::link_segment_end(int frame, LVector4f color);

Description: Finish drawing linked segments, needs at least two calls to link_segment before it can end the linked segment.

particle
void MeshDrawer::particle(LVector3f pos, int frame, float size, LVector4f color, float rotation);

Description: Draws a particle that is sort of like a bill board but has an extra rotation component.

segment
void MeshDrawer::segment(LVector3f start, LVector3f stop, int frame, float thickness, LVector4f color);

Description: Draws a segment a line with a thickness. That has billboarding effect.

setBudget
void MeshDrawer::set_budget(int budget);

Description: Sets the total triangle budget of the drawer.

setPlateSize
void MeshDrawer::set_plate_size(int plate_size);

Description: Sets the number of images are on one side of a sqare plate. Geom drawer expects a plate of square image for most of its billboard operatoins. If plate size is 3 the frame numbering would look like this: 0 1 2 3 4 5 6 7 8 you can select any frame you like for many of the billboards and segments.

stream
void MeshDrawer::stream(LVector3f start, LVector3f stop, int frame, float size, LVector4f color, int number, float offset);

Description: Draws a number of particles in a big line with a shift dictated by the offset.

tri
void MeshDrawer::tri(LVector3f v1, LVector4f c1, LVector2f uv1, LVector3f v2, LVector4f c2, LVector2f uv2, LVector3f v3, LVector4f c3, LVector2f uv3);

Description: Draws a triangle with the given parameters.

unevenSegment
void MeshDrawer::uneven_segment(LVector3f start, LVector3f stop, int frame, int multi_frame, float thickness_start, LVector4f color_start, float thickness_stop, LVector4f color_stop);

Description: Draws a segment a line with different thickness and color on both sides.

getClassType
static TypeHandle TypedObject::get_class_type(void);

Undocumented function.

getType
virtual TypeHandle TypedObject::get_type(void) const = 0;

Derived classes should override this function to return get_class_type().

getTypeIndex
int TypedObject::get_type_index(void) const;

Description: Returns the internal index number associated with this object's TypeHandle, a unique number for each different type. This is equivalent to get_type().get_index().

isExactType
bool TypedObject::is_exact_type(TypeHandle handle) const;

Description: Returns true if the current object is the indicated type exactly.

isOfType
bool TypedObject::is_of_type(TypeHandle handle) const;

Description: Returns true if the current object is or derives from the indicated type.