Reads a character model and/or animations and strips out the animation from one of the top joints from the entire character. More...
#include "eggTopstrip.h"
Public Member Functions | |
void | adjust_transform (LMatrix4d &mat) const |
Adjust the transform extracted from the "top" joint according to the -s and -i/-n options, prior to applying it to the skeleton. More... | |
void | check_transform_channels () |
Checks the _transform_channels string to ensure that it contains only the expected nine letters, or a subset. More... | |
void | run () |
void | strip_anim (EggCharacterData *char_data, EggJointData *joint_data, int from_model, EggCharacterData *from_char, EggJointData *top_joint, EggCharacterDb &db) |
Applies the channels from joint _top_joint in model from_model to the joint referenced by joint_data. More... | |
void | strip_anim_vertices (EggNode *egg_node, int into_model, int from_model, EggJointData *top_joint, EggCharacterDb &db) |
Applies the channels from joint _top_joint in model from_model to the vertices at egg_node. More... | |
Public Member Functions inherited from EggCharacterFilter | |
void | add_fixrest_option () |
Public Member Functions inherited from EggMultiFilter | |
EggMultiFilter (bool allow_empty=false) | |
Public Member Functions inherited from EggMultiBase | |
void | post_process_egg_files () |
Performs any processing of the egg file(s) that is appropriate before writing them out. More... | |
Public Member Functions inherited from EggBase | |
void | add_normals_options () |
Adds -no, -np, etc. More... | |
void | add_points_options () |
Adds -points as a valid option for this program. More... | |
void | add_transform_options () |
Adds -TS, -TT, etc. More... | |
Public Member Functions inherited from ProgramBase | |
ProgramBase (const std::string &name=std::string()) | |
std::string | get_exec_command () const |
Returns the command that invoked this program, as a shell-friendly string, suitable for pasting into the comments of output files. More... | |
virtual void | parse_command_line (int argc, char **argv) |
Dispatches on each of the options on the command line, and passes the remaining parameters to handle_args(). More... | |
void | show_description () |
Writes the program description to stderr. More... | |
void | show_options () |
Describes each of the available options to stderr. More... | |
void | show_text (const std::string &text) |
Formats the indicated text to stderr with the known _terminal_width. More... | |
void | show_text (const std::string &prefix, int indent_width, std::string text) |
Formats the indicated text and its prefix for output to stderr with the known _terminal_width. More... | |
void | show_usage () |
Writes the usage line(s) to stderr. More... | |
void | write_man_page (std::ostream &out) |
Generates a man page in nroff syntax based on the description and options. More... | |
Public Attributes | |
Filename | _channel_filename |
bool | _got_invert_transform |
bool | _invert_transform |
std::string | _top_joint_name |
std::string | _transform_channels |
Public Attributes inherited from ProgramBase | |
Args | _program_args |
Filename | _program_name |
Additional Inherited Members | |
Public Types inherited from ProgramBase | |
typedef pdeque< std::string > | Args |
Static Public Member Functions inherited from EggBase | |
static void | convert_paths (EggNode *node, PathReplace *path_replace, const DSearchPath &additional_path) |
Recursively walks the egg hierarchy. More... | |
Reads a character model and/or animations and strips out the animation from one of the top joints from the entire character.
Particularly useful for generating stackable character models from separately-extracted characters.
Definition at line 34 of file eggTopstrip.h.
void EggTopstrip::adjust_transform | ( | LMatrix4d & | mat | ) | const |
Adjust the transform extracted from the "top" joint according to the -s and -i/-n options, prior to applying it to the skeleton.
Definition at line 287 of file eggTopstrip.cxx.
void EggTopstrip::check_transform_channels | ( | ) |
Checks the _transform_channels string to ensure that it contains only the expected nine letters, or a subset.
Definition at line 187 of file eggTopstrip.cxx.
void EggTopstrip::strip_anim | ( | EggCharacterData * | char_data, |
EggJointData * | joint_data, | ||
int | from_model, | ||
EggCharacterData * | from_char, | ||
EggJointData * | top_joint, | ||
EggCharacterDb & | db | ||
) |
Applies the channels from joint _top_joint in model from_model to the joint referenced by joint_data.
Definition at line 222 of file eggTopstrip.cxx.
References EggComponentData::get_num_models().
void EggTopstrip::strip_anim_vertices | ( | EggNode * | egg_node, |
int | into_model, | ||
int | from_model, | ||
EggJointData * | top_joint, | ||
EggCharacterDb & | db | ||
) |
Applies the channels from joint _top_joint in model from_model to the vertices at egg_node.
Definition at line 266 of file eggTopstrip.cxx.
References EggComponentData::has_model().