26 CharacterJointBundle::
27 CharacterJointBundle(
const std::string &name) :
PartBundle(name) {
33 CharacterJointBundle::
34 ~CharacterJointBundle() {
51 void CharacterJointBundle::
53 PartBundle::add_node(node);
54 if (node->
is_of_type(Character::get_class_type())) {
56 r_set_character(
this, character);
65 void CharacterJointBundle::
67 PartBundle::remove_node(node);
79 void CharacterJointBundle::
81 if (group ==
nullptr) {
91 Children::const_iterator ci;
92 for (ci = group->_children.begin(); ci != group->_children.end(); ++ci) {
93 r_set_character((*ci), character);
108 me->fillin(scan, manager);
The collection of all the joints and sliders in the character.
This is the fundamental interface for extracting binary objects from a Bam file, as generated by a Ba...
An animated character, with skeleton-morph animation and either soft- skinned or hard-skinned vertice...
Base class for objects that can be written to and read from Bam files.
get_num_nodes
Returns the number of PartBundleNodes that contain a pointer to this PartBundle.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
void parse_params(const FactoryParams ¶ms, DatagramIterator &scan, BamReader *&manager)
Takes in a FactoryParams, passed from a WritableFactory into any TypedWritable's make function,...
static TypedWritable * make_CharacterJointBundle(const FactoryParams ¶ms)
Factory method to generate a CharacterJointBundle object.
This is a node that contains a pointer to an PartBundle.
An instance of this class is passed to the Factory when requesting it to do its business and construc...
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
void register_factory(TypeHandle handle, CreateFunc *func, void *user_data=nullptr)
Registers a new kind of thing the Factory will be able to create.
void register_finalize(TypedWritable *whom)
Should be called by an object reading itself from the Bam file to indicate that this particular objec...
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
static void register_with_read_factory()
Factory method to generate a CharacterJointBundle object.
virtual bool is_character_joint() const
Returns true if this part is a CharacterJoint, false otherwise.
static WritableFactory * get_factory()
Returns the global WritableFactory for generating TypedWritable objects.
This is the root of a MovingPart hierarchy.
This represents one joint of the character's animation, containing an animating transform matrix.
bool is_of_type(TypeHandle handle) const
Returns true if the current object is or derives from the indicated type.
A class to retrieve the individual data elements previously stored in a Datagram.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
TypeHandle is the identifier used to differentiate C++ class types.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
Character * get_node(int n) const
Returns the nth Character associated with this PartBundle.
This is the base class for PartRoot and MovingPart.