Biped Editor for Unity 3.0

I’ve been really head-down for awhile with work, the latest of which has involved some pretty substantial refactoring of Touch KO for a big update this summer (finally!). Since I’ve been working in Unity 3.0, I thought I’d share a short clip of a tool I developed during the refactoring process. It’s a biped component along with an editor for interactively adjusting collision shapes and sizes as well as joint limits. The component also has functionality to perform an automatic mass distribution based on human values, as well as interfaces for entering and exiting ragdoll. If I manage to get caught up on things after the update I’ll probably share the code on here eventually, but as anyone who follows the site may have guessed it’s been really busy lately O_o.

Note: for best viewing, I recommend turning the resolution on the video up to 1080p and watching full-screen, since that’s my native resolution and it will be easier to read some of the buttons.

New Section for Unity Tutorials

Among other things, I’ve been developing some new tutorial videos for a friend (and former instructor) of mine who teaches in LA. He’s been spinning up a program focused on iPhone development using Unity, so I’ve started to put together some introductory Unity videos for him to share with his art students. As such, I’ve added a tutorials section for Unity, which currently features a video on basics. As you can see from visiting the section, I have a few more lined up in the short term, so it will be growing over time. Let me know if there’s anything specific you might like to see in the future.

Adding Unity Tools

Waiting on videos to render is the perfect time to add and update site content, because everything else is bogged down. In that respect, I wanted to note that my Unity tools page is now open for business, where I will be posting more components and editor scripts in the future. For starters, I have uploaded two basic components (each zip file contains a UnityScript and a C# version).

The first component is an aim constraint, to simply mimic the behavior of Maya’s aim constraint. The benefit of using this over a simple call to Quaternion.LookRotation() is that you can specify arbitrary forward and up axes on the constrained object (just as in Maya). You could use this with the AssetPostprocessor class to automatically import constraints in your asset files (FBX, Maya, etc.).

The second component is a look rotation constraint. It allows you to not only specify arbitrary forward and up axes on the constrained object, but also constrain it to a world forward-vector and world up-vector (so it does not need to aim at a target, but can mimic the “pointing” direction of another transform).