Wheel Rig - Animation And Skinning - Dev Blog #18
Updated: Apr 14, 2021
Today, we wanted to share some behind the scenes info of the techniques we're using to make the Wheel Rig work in Techblox.
The physics setup
Joints are set up in the code to manage the suspension and steering independently, with forces being applied to add torque and braking. For those of you that aren’t aware, we’re using the latest Havok Physics with Unity.
The graphics setup
Performance is key here, and a wheel rig has a lot of separate pieces that move in different ways, i.e. springs and joints. To make this run super fast when hundreds of these are in the world we're using your GPU and CPU cores in parallel fashion (as we do with many things in the Techblox engine).
To do this we need to add bones to the Wheel Rig as if it where a simple character:
Then we skin the mesh to the bones:
Then we animate it:
In-game we blend the animations parametrically based on what physics are being applied to the joint, to get the effect of the suspension and steering to match.
All the Wheel Rigs in the world are all instanced and rendered in one draw call on the GPU (having one draw call reduces CPU load). All the blending and animating is done on the GPU. All the physics is done on the CPU but in super parallel fashion using all your cores for maximum potential. At all times we're focused on making it optimal, freeing up valuable CPU time to prepare for the kinds of competitive and sandbox gameplay we hope to have in Techblox.
This is still a greybox model, made in roughly the correct proportions with the correct animatable pieces for implementation in game (by Mark, not by the artists). It will go through a process of being upgraded by the art team at a later date.
A playable Pre-Pre-Pre-Pre-Pre-Alpha is now available! Make sure to visit our home page at http://www.techblox.com/ to sign up to play it!