Level One Magic
"Any sufficiently advanced technology is indistinguishable from magic." - Arthur C. Clarke

Pirates Online Avatar Tools

The avatar system in Pirates Online was created with a complex system of cuts in order to minimize textures and draw calls. This complicated the task of modeling and rigging, so I wrote a number of tool to help eliminate errors.

Avatar Display (video)
This tool is a series of list boxes that will hide and show the different pieces of geometry that make up each clothing article. With some articles comprising upwards of 10 different pieces of geometries (that are all shared with other articles) it was important for the modeler to be able to see specifically what he or she needed to work on. This system effectively mimics what is done in the game for piecing together clothing outfits. It will also allow for swapping of textures across an entire clothing article, rather than on a per-mesh basis. This tool alone has saved countless hours of time for modelers working on the Pirates Online avatars.

Vertex Snapping (code)
Because the avatar is a number of geometries that share common edges and vertices, any gaps between the geometries would cause bad show, especially once the geometry was skinned. This tool lets the modeler select multiple pieces of geometry and compare the vertices on the border edges, to make sure that they are snapped together.

Update Rig (code)
The avatar rig is in a separate file from the model, so any time that a modeler makes changes to the model, the rig needs to be re-skinned. Because the avatar is made up of many different pieces of geometry, it isn't necessary to re-skin every piece. Despite this, the transfer script was written to re-skin everything, which was continually introducing errors into the rig. When I was asked to looked at the avatar pipeline, I wrote this tool to make the transfer easier and less error-prone. With the rig open, you can select a number of meshes from the listbox that you want to transfer, then it will import the model, then skin only the pieces of the imported model that were specified, and then replace the old pieces with the new and remove any traces of the imported model. This tool alone inverted our chance of introducing error into the rig from about 90% down to about 10% and almost eliminated the need for hand-fixing of weights that previous to the transfer did not have problems.

Back to Main

© 2003-2013 Andrew Kelts