To change a character attachment you will need to load a character first. You can do this by using menu File -> Open, or locating a character file in the Asset Explorer and double clicking on it.
Selecting the Character
Make sure that you have have the character asset entry selected. You can either double click to select from the Asset explorer list, or click on the Character button in Scene Parameters to open a dialog window to explore to the folder where your character is:
Using the Assets panel:
Using the Scene Parameters, highlight your selected character:
Attachment List and Properties
Now you can observe the list of existing attachments (if any) in the Properties Panel:
By clicking the arrow to the left, this expands the attachments properties.
Adding New Attachments
To add a new attachment you can click on the button next to the "Attachments" text to open the drop down list and use the "Insert" or "Add" function.
- Using Insert, add the new attachment to the top of the list.
- Using Add, appends the new attachment to the bottom of the list.
Or ordered directly in the list via the right click context menu:
Attachments come in multiple forms, depending on what sort of attachment you want to attach to the character.
Attachments are split into several categories:
- Joint - Typical use case, weapon stow locations
- Face - Directly attaching to a face on the mesh
- Skin - These are the what the visible portion of the characters are built from (SDK_player is built from multiple skin files, for the shoes, trousers, jacket etc...)
- Proxy - Attach an Auxiliary Proxy to be used for the attachment collisions
- PRow - A Row of bones linked together in a logical order. (used for building cloth simulation setups)
- Vcloth 2.0 - see here.
Example character with a fully configured attachment list:
For more information please see the Character Attachment Tutorial for how to setup and use these attachment correctly.
Generating and Editing Character Physics Proxies
This allows you to edit the existing character physical proxies as attachments in the Character Editor, replace them with newly created ones, or just create proxies from scratch for new characters.
Created proxies are based on the character render mesh initially, but can be fully tweaked if necessary (geometry type, size, transformation). The proxies are saved to a companion *.cgf file next to the skeleton *.chr file, and are picked up during *.chr loading (thus, *.cdf is not needed for loading them, nor is it permanently updated with the new attachments data on disk).
In the CharacterTool, phys proxies use an existing Proxy Attachment type called Rag Doll.
Generating Physics Proxies
Click Edit Proxies at the top of the Character Tool window.
This adds all existing proxies as editable attachments (named $ + joint name)
- Hold Shift and left click on the render mesh (note that the character must be in the default pose).
Clicking selects the closest character bone, then builds a mesh of vertices affected by all its children, up to already physicalized ones, and approximates it with a primitive. Therefore, proxies should be created from "leaves" to the root:
As you can see in the *.gif above, after you have generated a proxy, you can change its shape, size and rotation in the Properties.
When holding shift and left clicking on an existing proxy, the properties for that attachment will be expanded in the Properties.
If the proxies were not generated during this session, changing Geometry Type will just try to match the general shape of the previous type (unless the original type was a mesh, in which case it will be used as a source for primitive approximation). If necessary, the proxy attachment can be created manually on a specific joint (Purpose should be set to Ragdoll, and the name must be set to $ + joint name).
It is also possible to create more detailed character physics proxies that approximate the shape of the mesh. This is done as follows:
- Select the proxy you want to change.
- go to Properties -> Transform -> Type and change this to Mesh.
The proxy will now look much more detailed:
If you think the polygon count for this proxy is too high or not high enough, you can change it with the Mesh Simplification property:
Mesh Simplification 0, 2, and 5