RBF Drivers finally brings the unparalleled capabilities of radial basis function networks to Blender (2.8+).
What are RBF Drivers?
RBF drivers are a fast, simple way to significantly enhance rigging in Blender. If you're trying to solve issues with constraints, fiddly weight-painting, or complex and time-consuming driver setups, RBF drivers can often provide a solution in minutes that would otherwise either take hours, days, or not be possible at all.
RBF drivers offer something very unique over constraints and other driver types. Instead of defining how you want the rig to do something, you define what you want it to do. Simply move your character's bones, adjust controllers, shape-keys or other properties until things are exactly how you want them to look, and record a "snapshot". RBF drivers will fill in all the blanks for you and smoothly interpolate everything while you pose or animate.
RBF Drivers allow you to break free of the limitations of Blender's native drivers in order to quickly and easily solve common rigging problems and issues with mesh deformation while keeping armatures lightweight and performant.
Simply select your driver inputs, add whatever transforms, shape keys or other properties you want driven, and provide example "poses" of how you want things to look. The RBF driver will do all the hard work for you, interpolating between poses to ensure that as the inputs change, the driven properties are where you want them to be.
Having seen the benefits of RBF (radial-basis function) systems in other software such as Maya and Unreal Engine, I wanted to bring them to Blender, but in a way that worked for Blender users: seasoned professionals and relative beginners alike.
Simple, Powerful, Flexible
RBF Drivers hides the complexity of an RBF network behind an intuitive workflow and a single, clear user interface.
Behind the scenes, it builds on Blender's native tools and has been carefully crafted to ensure high-performance and excellent compatibility.
There is no runtime python execution and you can share, sell or send your creations down the pipeline without restriction because once set up, the rig doesn't require RBF Drivers to be installed in order to work.
Blender's native drivers allow you to define a mathematical relationship between one or more input "variables" and a single "driven property" output. They are a powerful feature but they have their drawbacks and limitations.
RBF drivers enable you to take a different approach: a single driver can handle not only multiple inputs but also multiple outputs, and instead of defining strict mathematical relationships, you simply set things up how you want them to look and let the RBF driver handle the rest.
This enables uses that would be extremely time-consuming, prohibitively complex, or simply impossible using constraints and standard drivers, and is achieved in a way that remains artist-friendly.
There are a virtually unlimited number of uses for RBF drivers, and they quickly become an indispensable part of your workflow, but here are a few examples to get you thinking.
Interpolating Shape Keys
Shape keys really help produce nice mesh deformation, and they're relatively simple to set up for something like an elbow joint, which primarily rotates around a single axis. But for more complex cases such as the shoulder, they can prove challenging.
With an RBF driver, you simply raise the arm and sculpt a shape key, lower it, sculpt again etc. When you're done the RBF driver will smoothly mix the shape keys as the shoulder moves and rotates.
When things move in more-or-less uniform ways, such as rotating or scaling together, constraints and drivers can handle them. But there are plenty of places where anatomy doesn't behave quite so neatly; where a single movement can squash things here, stretch things there, and eventually start twisting things somewhere else.
Sometimes you can achieve satisfactory results by adjusting driver curves and constraint influences, and sometimes you can't. In any case, with RBF drivers you don't need to.
Because they are pose-based, RBF drivers are indifferent about the relationship between the inputs and driven properties, you only need to show them what to do. Leave the how up to them.
Secondary bones can significantly improve deformation and help maintain volume where required, as well as transfer to game engines painlessly, but the constraints and drivers that control them are sometimes difficult to set up, or produce unsatisfactory results.
RBF drivers allow you the freedom and creative control to put secondary bones precisely where you want them to be given a particular pose, without having to worry about how (or if!) you can make that happen. They can produce really good results very quickly, and a single RBF driver can be used to handle multiple transform properties on multiple bones or objects at the same time.
- Intuitive workflow: set inputs, add driven properties, define "poses" and you're good to go.
- Professional-grade tooling that's accessible enough for even beginners to use.
- Comprehensive documentation so you can hit the ground running.
- High performance with no runtime python execution and multi-core operation within Blender's dependency graph.
- With unlimited driven properties a single RBF driver can be used to control multiple bones, objects, shape-keys etc.
- Built on Blender's native tools so you can share or sell your creations freely: end-users do not need to have the addon installed.
- Fast support available through the discord channel.
- Continuous development means you can expect enhancements over time and feature requests are welcomed.
One small step...
Because RBF drivers solve so many problems, and can be used to enhance characters in so many ways, they offer a new level of creative freedom and the possibility of rapidly bring your rigging to a new level of fidelity.