cryTools: About
What are cryTools?
CryTools are a suite of maxscripts
that add functionality to 3D Studio Max that does not currently exist.
Not just basic functionality that 3DS Max is lacking, but also special
functionality and tools that help you troubleshoot, create and manage
assets for cryEngine2 games.
A Note About Requirements
CryTools currently work with versions 8 and 9 of 3D Studio Max. The
installer can install the cryTiff libs, dlls and plugins for versions
6,7, and CS of Photoshop.
License
CryTools are free. So I want you to feel free to use the code to learn
or incorporate aspects of the tools into your own freely available
toolsets. They are therefore provided 'as is' and with limited support.
The person who wrote these tools is not a programmer, and the code may
be somewhat obtuse at times, but the tools are pretty solid and
reliable. They have been in use at Crytek for quite some time, if you
have any bugs, please send a description of the bug to Chris@Crytek.de (for CryTools ) Mathias@Crytek.de (for CryAnim )
Features
This is a list of functionality that
has been added to 3DSMax. We have been working on CryTools since Max7,
so some features we have implemented were later added to 3DSMax
(loading FBX onto Biped for example)
Tools/Pipeline Integration
Easy Installation
• One double click installs all tools/files on the users PC setup correctly and working
• The installer finds Photoshop\3DS Max install dirs and installs cryTools and cryTiff correctly
Transparency
• cryTools can automatically check your assets before export to the game, making sure they
• have the correct shaders applied
• are free of extra transformations
• are facing the right world direction
• and many more requirements that may be overlooked
• cryTools run from your local build, so tools are updated automatically and frequently
• cryTools sync via Perforce, AlienBrain, HTTP, or LAN on demand
• Checks local build for updated exporter or tools and installs them automatically or on demand
Diagnostics You Care About
• Show all callbacks and important variables (control panel)
• Dump all vars in global space currently set/used by cryTools
• Visual indicator of local/latest build number in control panel or splash screen
• 'Rollback' functionality to rollback to a previous exporter
Animation
General
• Batch convert controllers (example: TCB for CGA)
• Bake procedural motion to dense keyframe data
Biped Tools
• Foot / Hand snapshot alignment to custom pivots
• Move Bip01 to [0,0] / [0,0,0]
• Ability to set planted, sliding or free keys to any biped part for any number of frames
• Reverse a biped animation (Autodesk added this feature to Max 9)
• Import FBX data directly on to a biped character (Autodesk added this feature to Max 9)
• Reset Rotation
• Create snapshot / + children
• Copy transformation
• Paste transformation / position / rotation
• Everything is available in the quad menu or for shortcuts
• The dialog can handle these functions in a time range
Dialog
• Align selected object to any other object ( rotation, position, create / use offset )
• Compact structure to apply functions
• Works with time range ( Start / Stop ; Range )
• Load often used models to animate with
• Automatically sets the weapon bone for different kind of weapons (if set)
• Loads Biped from the working directory ( or last used file )
• Save Biped directly to the last used biped name
• Export animation with the Biped name and path structure
• Save / Export at the same time
• Perforce control if perforce is installed
Batch Exporter
• Supported file types: BIP, FBX, MAX
• Sub folder selection (will be saved)
• File Mask selection (will be saved)
• Export Folder (will be saved)
• Sorted by folders
• Run pre-export script (if set)
• Automatic export bone detection (if set)
• Keep Sub folder structure
• Check the files (without export)
• Add or remove bones and rig elements from thousands of animation assets
• Manipulate data for thousands of animations (example: flip all assets 180 deg)
• Export logs detailing data about your animation assets/batch export
Animation (deprecated, unsupported)
Biped Tools
• Rig
Navigator - A synaptic rig element selector (much like Maya, XSI,
Motion Builder, etc). Click a part to select it
• Syncing of
pose collections sets from Perforce or a network drive on demand, at
Max load or on character load
• auto-importing animation props and weapons from a build/server
• Select just biped bones, excluding helper joints
General Tools
• RangeView -
View or cycle through Animator-created 'time-tagged' sequences in one
timeline. When a sequence is selected, the timeline beginning/end is
set the the time-tagged range's beginning/ending
• Mirror first person arm animation from left arm to right or vice versa
• XAF XML animation file support (character limited)
Batch Animation Processing
• Supports biped BIP or XAF (character limited) animation data
Character Setup and Rigging
General Tools
• Zero out rotations for all selected items
• Snap a pivot to that of another object
• Select just biped bones, excluding helper joints
• Make sweeping adjustments to the width/height/taper of multiple selected bones
• Create arbitrary vertex channels, e.g. multiple vertex color channels
• Create Phys Skeleton from existing Deforming Skeleton
• Automated ParentFrame creation
Character/Animation Diagnostics
• Create Smart Object template files and export Smart Object template data to the Editor in XML format
• Select the root of a hierarchy by selecting any member of it
• Select all children of a node
• Export data about a hierarchy to listener or a spreadsheet (excel/google spreadsheet)
• Compare multiple hierarchies
• Query how many bones in a hierarchy have weights effecting a mesh
• Output
arbitrary movement data, e.g. output how far a character moves out from
behind cover in an animation, or how high the root is when he is in
prone or behind cover.
• Output XML CDF attachment data based on the location of an attachment in Max
Morph Tools
Facial Setup
• Transfer morphs between unlike topologies
• Bake morph targets out from a selected head colored, named, and placed in the cryEngine2 standard
• Bake out an arbitrary number of morphs to geometry with the name of the morph slider
• Delete selected faces from many morph targets while keeping identical point indices
• Mirror eye
bone animation from right to left and vice versa when setting up
deformation for procedural eye morphs
Pose-Driven Morphs
• Can extract a relative pose shape from a skinned and posed mesh
• Supports creation of arbitrary corrective shapes for a given pose, as well as the standard sets below
• Head/Neck
• Auto-generated fleshy eye morphs
• Shoulder
Baking Tools
• Supports baking of any complex geometric deformation to a sequence of morphs (muscles, cloth, etc..)
• Set the number of frames to bake, and the number of morphs to generate over those frames
• Can bake out relative morphs with skin data culled to be pose-driven in cryEngine2
Diagnostic Tools
• Dump morpher data to the Listener or an excel spreadsheet
• MorphManager: an improved morpher interface
Artist Tools
General Tools
• Center pivots to the center of each objects bounding box for all selected objects
• Many commonly used commends, like a button that reset xforms and then collapses a selected object
• Copy/paste modifiers to multiple objects without instancing
• UV maipulation tools
TD ToolKit
General
• The cryTools
architecture allows you to install update, or query anything (tools
related) on any users PC
• Useful
global variables like local build#, latest build#, local build
location, editor path, user preferences, etc
• You can restrict what tools certain users see based upon their username, network domain, or other data
• Silently execute dos commands
Useful Functions
• Perforce and AlienBrain integration
• Network
tools to do things like get the current domain, or convert a local
mapped drive letter to its UNC pathname (Autodesk added this feature to
Max 9)
• General useful fns like converting a string to lowercase, etc..
CryExport MaxScript Exposure
• Export functions
o Get/set node lists for objects and bones
• Registry functions
• Silent CMD execution