EGG-TOPSTRIP(1)

NAME
egg-topstrip - unapplies animation from a joint in an .egg file

SYNOPSIS
egg-topstrip -o output.egg [opts] input.egg
egg-topstrip -d dirname [opts] file.egg [file.egg ...]
egg-topstrip -inplace [opts] file.egg [file.egg ...]
egg-topstrip -inf input_list_filename [opts]

DESCRIPTION
egg-topstrip reads a character model and its associated animation files, and unapplies the animation from one of the top joints. This effectively freezes that particular joint, and makes the rest of the character relative to that joint.

This is a particularly useful thing to do to generate character models that can stack one on top of the other in a sensible way.

OPTIONS

-noabs
    Don't allow any of the named egg files to have absolute pathnames. If any do, abort with an error. This option is designed to help detect errors when populating or building a standalone model tree, which should be self-contained and include only relative pathnames.

-t name
    Specify the name of the 'top' joint, from which to draw the animation channels which will be applied to the entire animation.

-i  Invert the matrix before applying. This causes a subtractive effect. This is the default unless -r is specified.

-n  Do not invert the matrix before applying. This causes an additive effect.

-s [ijkphrxyz]
    Specify the components of the transform that are to be applied. Use any combination of the nine token letters: i, j, k represent the three scale axes; h, p, r represent rotation; and x, y, z represent translation. The default is everything: -s ijkphrxyz.

-r file.egg
    Read the animation channel from the indicated egg file. If this is not specified, each egg file will supply its own animation channel.

-pr path_replace
    Sometimes references to other files (textures, external references) are stored with a full path that is appropriate for some other system, but does not exist here. This option may be used to specify how those invalid paths map to correct paths. Generally, this is of the form 'orig_prefix=replacement_prefix', which indicates a particular initial sequence of characters that should be replaced with a new sequence; e.g. '/c/home/models=/beta/fish'. If the replacement prefix does not begin with a slash, the file will then be searched for along the search path specified by -pp. You may use standard filename matching characters ('*', '?', etc.) in the original prefix, and '**' as a component by itself stands for any number of components. This option may be repeated as necessary; each file will be tried against each specified method, in the order in which they appear in the command line, until the file is found. If the file is not found, the last matching prefix is used anyway.

-pp dirname
    Adds the indicated directory name to the list of directories to search for filenames referenced by the source file. This is used only for relative paths, or for paths that are made relative by a -pr replacement string that doesn't begin with a leading slash. The model-path is always implicitly searched anyway.

-ps path_store
    Specifies the way an externally referenced file is to be represented in the resulting output file. This assumes the named filename actually exists; see -pr to indicate how to deal with external references that have bad pathnames. This option will not help you to find a missing file, but simply controls how filenames are represented in the output. The option may be one of: rel, abs, rel_abs, strip, or keep. If either rel or rel_abs is specified, the files are made relative to the directory specified by -pd. The default is rel.

-pd path_directory
    Specifies the name of a directory to make paths relative to, if '-ps rel' or '-ps rel_abs' is specified. If this is omitted, the directory name is taken from the name of the output file.

-pc target_directory
    Copies textures and other dependent files into the indicated directory. If a relative pathname is specified, it is relative to the directory specified with -pd, above.

-o filename
    Specify the filename to which the resulting egg file will be written. This is only valid when there is only one input egg file on the command line. If you want to process multiple files simultaneously, you must use either -d or -inplace.

-d dirname
    Specify the name of the directory in which to write the resulting egg files. If you are processing only one egg file, this may be omitted in lieu of the -o option. If you are processing multiple egg files, this may be omitted only if you specify -inplace instead.

-inplace
    If this option is given, the input egg files will be rewritten in place with the results. This obviates the need to specify -d for an output directory; however, it's risky because the original input egg files are lost.

-cs coordinate-system
    Specify the coordinate system to operate in. This may be one of 'y-up', 'z-up', 'y-up-left', or 'z-up-left'.

-f  Force complete loading: load up the egg file along with all of its external references.

-inf filename
    Reads input args from a text file instead of the command line. Useful for really, really large lists of args that break the OS-imposed limits on the length of command lines.

-h  Display this help page.