Launch Control // Auto Car Rig

by Daniel Vesterbaek in Addons




Launch Control Documentation


Launch Control (LC) is a developing Add-on and Blender rig built to solve a lot of the problems in current 4-wheel car rig solutions for Blender.

The rig is fully supported in vanilla Blender. The add-on is just an interface that adds a lot of features and shortcuts when animating with the rig. 

The add-on comes packed with three example files. They serve as object hierarchy and naming guidelines for rigging and they also give you some high-quality meshes to play around with right off the bat. 

The add-on is split into two main UI parts: the "Main Features" and the "Manual Gearbox". The "Main Features" is the place you would spend the majority of the time rigging, animating, and simulating, while the "Manual Gearbox" holds all the add-on "tuning" options and extra features such as the headlight setup and the "jump maker".


If you are looking for tutorials, check out the growing Launch Control Tutorial Playlist on YouTube!



Installation:

Step 1: Inside Blender head to "Edit -> Preferences -> Add-ons -> Install..."

Step 2: Locate the downloaded .zip and click "Install Add-on"!


Uninstalling/Updating:

Step 1: Inside Blender head to "Edit -> Preferences -> Add-ons".

Step 2: Search for "Launch Control" and expand the field called "Object: Launch Control".

Step 3: Click "Remove" and restart Blender to clear all the data from Launch Control.

(Step 4): Install the new desired version as described above.


Main Features:

The Main Features part is split into 3 segments: "1. Select Vehicle, 2. Select Animation and 3. Select Physics" or "Rigging, Animation and Physics". Let's go over each of those here.


Rigging:

The rigging in LC uses Tags or Keywords to detect objects that are needed for rigging the car. If the hierarchy/naming of a model is supported, the rigging can be done with one click (For instance, Transporter Add-on cars have a supported hierarchy and the included example files). Custom tags can be selected in the "Manual Gearbox" to make the add-on work well with your own naming-convention.


Tags:

If all "required" car parts are found, LC can rig the car.

Required car parts:
- Car Body,
- Front Right Wheel
- Front Left Wheel
- Rear Right Wheel
- Rear Left Wheel


If any of the optional car parts are found they will be rigged. If they aren't found, they will be ignored. (This behavior can be changed in the "Manuel Gearbox")

Optional car parts:
- Front Right Brake Caliper
- Front Left Brake Caliper
- Rear Right Brake Caliper
- Rear Left Brake Caliper
- Right Headlight
- Left Headlight

Multiple tags are being searched for when LC is detecting the objects. The full list for each object/location is here:

Wheels:     ["Tire", "Wheel", "Wheels", "Tires", "Rad", "Räder", "tire", "wheel", "wheels", "tires", "rad", "räder", "tyre", "Tyre", "tyres", "Tyres"]
Body:         ["Body", "body", "hull", "Hull"]
Brake:        ["Brake", "brake", "Brakes", "brakes", "Calliper", "calliper", "Caliper", "caliper", "Callipers", "callipers", "Calipers", "calipers", "Bremse", "bremse"]
Headlight: ["headlight", "headlamp", "headbulb", "front_light", "front_lamp", "front_bulb", "front_emitter", "Headlight", "Headlamp", "Headbulb", "Front_light", "Front_lamp", "Front_bulb", "Front_emitter",]

Rear, Left:        ["RL", "RearLeft", "BL", "BkL", "Bk.L", "Bk_L"]
Rear, Right:     [RR", "RearRight", "BR", "BkR", "Bk.R", "Bk_R"]
Front, Right:    ["FR", "FrontRight", "FR", "FtR", "Ft.R", "Ft_R"]
Front, Left:       ["FL", "FrontLeft", "FL", "FtL", "Ft.L", "Ft_L"]


Quick Tag Tool:

With the "Quick Tag Tool", you can quickly tag the car parts that needs renaming to be compatible with LC. Select a car part (for instance the car body), and hit, "body" inside the Quick Tag Tool, to tag the selected object as the body of your car. Go ahead and do the same with the wheels and (if desired) brake calipers and headlights. "FL, FR, RL and RR" referes to the location of the car part and respectively means: "Front Left, Front Right, Rear Left and Rear Right".



Hierarchy:

When rigging LC depends mainly on the size and location of the tire meshes. It is expected that there are 4 tires and that the tires are not tilted or slanted and are touching the ground. Different tire size in front and rear is supported, but it is also expected that Right/Left front tires have the same size and that Right/Left rear tires have the same size. Rims, bolts, brake discs and other meshes, should be parented to the tire mesh and there should be 1 tire mesh for each of the 4 wheels of the car. Please note, that the "tire object" used for rigging by LC cannot be an empty, but has to be a mesh.

The "body object" used for rigging can either be an empty or a mesh. All parts of the car that are not already parented under the tires or the brake calipers should be parented under "body object".

If you plan to rig the brake calipers, make sure 4 of them exist in the scene with all "sub-objects" parented to them. 


As long as the above-described rules are followed, the car can be placed anywhere in the scene and the hierarchy is irrelevant.


LC's Hierarchy:

- LC Armature
     - Main Body (mesh or empty)
            - Additional body meshes

     - Tire.FL (mesh)
            - Additional tire meshes
     - Tire.FR (mesh)
            
- Additional tire meshes
     - Tire.FL (mesh)
            - Additional tire meshes
     - Tire.FR (mesh)
            - Additional tire meshes

     - Caliper.FL (mesh or empty) [optional]
            - Additional caliper meshes
     - Caliper.FR (mesh or empty) [optional]
            
- Additional caliper meshes
     - Caliper.FL (mesh or empty) [optional]
            - Additional caliper meshes
     - Caliper.FR (mesh or empty) [optional]
            - Additional caliper meshes    

If you prefer to manually parent the meshes to the LC rig check out "Rig Setup" under "Manual Gearbox" in this documentation.

It is important to note that even though it’s possible to rig the full suspension of a vehicle (With suspension arms, rods and shocks) this will not be done automatically by LC. If you would like to rig these things that would have to be done manually with the existing bones the “CarRig” armature layer “24” as marked on the image below.




Viewport Setup Interface:


By switching the top horizontal slider to "setup" (Gear icon), you can reveal the setup options for the rig. These options will be available even if the add-on is not installed. The sliders from left to right are: "Turn Limit", "Camber and Toe", "Max Suspension Travel", "Ground Clearance", "Wheel Count", "Body Weight", "Clamp Wheel Movement" and "Single Rear Axle".

Turn Limit:
Determines the maximum turning angle of the front wheels. Default is 45deg. When drifting or steering normally, the front wheels will "lock" when they reach the turn limit.

Camber and Toe:

Changes the camber angle of the wheels (up/down) and the toe angle of the wheels (left/right).

Max Suspension Travel:
Changes the length of the shocks. - When the car is airbourne this determines how low the wheels are hanging compared to the body of the car.


Ground Clearance:
Lifts/Lowers the body of the car compared to the wheels.

Wheel Count:
Pick either 2 wheel drive or 4 wheel drive (2 wheel drive has the best support)

Body Weight:
To add realism to car animations the wheels need to be pushed slightly through the floor plane and the body of the car dropped slightly. This simulates the weight of the car pushing it down. The slider adjusts the intensity of this effect.

Clamp Wheel Movement (Suspension Clip):
Clamp the movement of the wheels, so they don't intersect the wheel well (approximated solution). Please keep in mind this is not a physically correct approach that has an effect on the calculated physics, but rather just a clamp.

Single Rear Axle:
Turn the rear axle into a "solid" single axle. Also called "live axle". This is seen on some offroad cars. 


Animation:

LC uses a curve based animation workflow to give you full creative control over the movement. It is easy to iterate and get the exact result you want. Animation with LC is separated into "Automated animations" and "User Animations". Physics can be applied on top of the Automated and User Animations to add a realistic layer to the movement. Presets are added to give you a head-start with animating and to give you examples on how to animate different movements.

Animation Presets - or User Path:
When creating your animation you can either base it on the 'Animation Presets' included with LC, or you can create your own "Bezier Curve", which can be used as a "User Path" in the Add-on Interface.
If a "User Path" is selected, it will overrule/gray out the animation presets.


Update Driving Path:
When changing the "DrivingPath" curve which the car follows, the total length of the path might change. If the total length changes, any keyframes set, will stick to the frame, but NOT to the position of the car on the curve. Imagine you animated the custom mass handle during a corner to add some body roll and then decide to extend the DrivingPath. Now this body roll will happen further down the road and not in the corner. The "Update Driving Path" button offsets the movement animation of the car on the path, so the keyframes for the body roll again happens during the corner and not at a later point. Basically, always makes sure that when you change any of the control points on the path, you click the "Update Driving Path" button. (A message in the viewport will appear asking you to do this).

User Animations:


Essentially, the only user animation needed for LC is animation of the speed/movement of the car along a modelled curve. This is done by animating the Z-rotation of the Wheel in the viewport UI. Please keep in mind that this animation is not showing the speed of the car, but the location of the car on the curve. That means, that when you open the F-Curve editor with this z-rotation shown, the slope of this movement-curve will correspond to the speed of the car at any point in the animation. In other words. If the movement-cuve is linear, the speed of the car would be constant.


Apart from the essential animation of speed/movement, you are able to animate drift (y-rotation) and mass of the car manually. Inside "Manual Gearbox" you can reveal many more user animation handles to custom animations (see "Manual Gearbox -> Advanced Animation")


Automated Animations:

LC heavily depends on automated animations that are realistically calculated and saves you a ton of time when animating. The animations are:

Steering:
Realistic Ackermann Steering geometry is used to calculate the steering for the rig. It should work in almost any case. It might have issues in a few extreme situations. In that case a "simple steering mechanism" can be used instead for frames where the Ackermann Steering does not work. (See "Manual Gearbox -> Advanced Animation -> Extra Animation Handles")

Wheel rotation:
Is calculated from the size of the tire and the length of the path. Wheel-spin when the tires do not have tracktion is not considered here, but can be added with the extra animation handles for wheel rotation (See "Manual Gearbox -> Advanced Animation")

Ground detection - Suspension:
The car rig reacts to the ground which is calculated from the "groundDetection" collection. To add objects to the ground detection calculation just add them to the collection "groundDetection". 

Camber and Caster:
To add realism when turning or bouncing, the rig estimates "Camber" and "Caster" for the wheels. The calculations are not physically accurate, but copies what camber and caster visually do. 


Viewport Animation Interface: 


Inside the viewport when switching the horizontal UI slider to "Animation" (bouncy ball icon) you will see the animation sliders. The sliders from left to right are: "Wheel Shake", "Wheel Wobble", "Camber Amount", "Airbourne Switch" and "Physics Switch".

Wheel Shake:
Adds slight random wheel shake to all the wheels making the road feel rugged.

Wheel Wobble:
Adds slight random wheel wobble to all the wheels making the car feel old or worn.

Camber (and caster) Amount:
Controls the intensity of the Camber/Caster effect.

Airbourne Switch:
Allows the car to be airbourne (Advanced). As the rig is usually sticking the car to the ground at any time using the ground detection, the Airbourne switch is used to disable this temporarily while the car should be in the air (during a jump or similar). Animate the value from 0 to 1 or 1 to 0 over 2-5 frames for the best result. Too fast transitions makes the animation "snap or pop" a bit.

Physics Switch:
Turns On/Off the simulated data (physics). This is useful if you already simulated physics, but want to check what the base animation looks like without the physics applied. (Mutes the physics, but does not delete the baked data)

Extra Animation Handles:

To add extra animation handles with more options check out "Manual Gearbox -> Advanced Animation".


Physics:

In LC, physics are pretty basic. They are not meant to change the look a lot, but rather be the final "icing" on the animation. Presets that cover most cases are revealed by standard, but physics-sliders can be revealed as well by diving into "Manual Gearbox -> Advanced Physics".

When the Physics have been applied, you can always "mute" it with the "Physics Switch" mentioned above to see what the base animation looks like without the physics.

PostFX:

To make it easier to art direct the Physics, PostFX were added. All the edits here are real-time and do not require you to resimulate. PostFX can also be animated (In v1.3+ of Launch Control).

Body Forces:
     
Turns, sudden speed-changes and jumps have an impact on the "Body Forces"

     Pitch, Yaw, Roll:
     The physics influence on the body of the car in each of the 3 rotation axis. 

     Up/Down: 
      The physics influence on the up/down movement of the body of the car.


Wheel Forces:
      
Impact when the wheels hit the ground because of a jump or a bump

      Up/Down:
       
How much an impact with the ground affects the wheels up/down movement.
       
       Tire Pressure:
        How much the tires are allowed to clip through the floor (To simulate low pressure inside the tires when they have a hard impact with the ground)

Wheel Impact Physics Factor:
       
A "mix-slider" determining how the physics-movement of the body is calculated. The physics-movement of the wheels will always be calculated by the "Wheel impact", but the body physics-movement is not purely calculated by the "Body forces" from above. Instead the wheel-impact has an impact on the body as well and this slider determines how big that impact is. Keeping this value low usually works the best. For a bumpy road, put it a bit higher and for a flat road with turns keep the value low.



Quick Export:

To make it easy to use LC animations in other software the Quick Export function was added. By default it exports relative to the saved blend file and exports with the filename "Launch_Control_Export.fbx". The function is built to quickly export a preview of the animation to other software without having to dial in settings, which is often the case for FBX exports from Blender. If you plan to use LC in collaboration with Unreal Engine in your workflow it might be better to use Datasmith for translating the data since the "FBX for UE5 Export" has a few limitations.

Include Ground Detection:
Includes the ground detection meshes in the exported FBX file.

Include Animations:
When checked, LC will export the meshes, the rig and animations. When unchecked, LC will only export the meshes and the rig.

Only Animations:
When checked, LC will NOT export the meshes, which results in much faster export speeds. However, it will still export the rig and the animations. 
This is especially useful when importing to Unreal Engine, where the "Only Animation FBX files" will be read as animation assets, which fit a previously exported "skeletal mesh" (an FBX with the meshes and the rig)


FBX:
Exports an FBX for general used in DCCs. Only important "deforming" bones are exported with baked animations - other bones are ignored.

FBX for UE5:
Exports an FBX optimized for UE5 from LC. Requires the user to manually set the "current frame" to 0 as this is used as the bind pose inside Unreal Engine.
Specifically for UE5, rebase bones have been added in the rig. These can be used when linking exisiting static meshes to the imported LC car rig from inside Unreal Engine. 

Datasmith Scene:
Export for use in Unreal Engine. It handles dense meshes and materials better than FBX export. On import a sequence is automatically set up in Unreal. To use it, please install and enable the "Blender Datasmith" add-on (FREE). https://github.com/0xafbf/blender-datasmith-export 


Manual Gearbox:

Inside the Manual Gearbox you have a wide range of customization options to make LC work better for you. This is also where you can reveal a ton of advanced functions of LC inside the "Main Features" part of the UI.

Reset all:
Resets all LC settings and values to default.

Headlight:

Headlights will automatically be added if detected in the model. If not, you can manually parent them.

Different texture presets can be picked, which are dynamically changing depending on the length the rays are travelling.

Low Beam and High Beam can be toggled and more settings can be dialed in. 

Advanced Animation:

Here you can expand on the visible animatable handles and sliders and enable and adjust other advanced animation functions.


Extra Animation Handles:


(See the image above to find the handles in the rig)

Wheel Turn (Pair):
    Pull it side-to-side to turn the wheels in pairs. This is added on top of the automatically calculated steering.

    Wheel Turn (Individual):
   
Rotate to turn each wheel individually. This is added on top of the automatically calculated steering.

    
Wheel Suspension:
     
Pull up/down to add manual wheel suspension. This is added on top of the automatic suspension.

    Auto Drift Roll:
   
The amount of influence car drift has on the roll of the body. The bigger the drift amount, the mode the body roll.

    Steering Wheel Factor:
   
A multiplier for how much the steering wheel bone (see "Show Rig Setup Controls") will spin when the wheels of the car turn.

    Simple Steering:
     If the automatic Ackermann steering does not perform well in certain frames or animations, a traditional track-to-bone steering can be used either for the full shot or for a small part of it by animating the slider.

    Airbourne ConstrainRot:
    When the car is airbourne, its rotation will still be determined by the tangent of the animation curve, which does not always look correct when the car is doing a jump. The "Airbourne ConstrainRot" forces the car to stay horizontal when airbourne. The slider is meant to be animated during the airbourne time usually going from 0 towards 1 with the maximum value when the car lands on the ground.

    Pivot Position:
   
Since steering geometry is calculated from the rear axle of a car, the pivot of the rig is on top of the rear axle of the car. For some specific animations, it is preferable to shift the pivot to the front axle to make it easier to animate. For instance when animating "donuts". You can also animate the slider slowly to offset the pivot mid-animation - With a bit of fiddling, you can hide the transition between front-pivot and rear-pivot. It's a pretty experimental feature that does have a negative impact on many of the automated animations, but it does serve as a solution for certain types of movements that would not be possible to do without it. See the images below for a visual reference of how the slider works. 

Pivot Position = 0 (default) - Rear axle is the rig pivot

Pivot Position = 1 - Front axle is the rig pivot


Drift Offset bone:

This bone is used to make drift animations more realistic. The bone can be animated to offset the car to the left or the right relative to the driving path. When drifting, the car will rotate around the front axle, which in some cases will look correct, but it often improves the realism to offset the "drift offset" bone slightly during the drift. Take a look at the gif below to see how the drift offset makes the end of the drift feel more realistic by slightly offseting the car as the drift ends.



Speed-O-Meter:

Shows the speed in real-time. Does only show the correct speed when the car is in motion as it relies on data from the previous frame to calculate the speed. 

Limit Animation sliders:
To allow full control all the Viewport UI sliders can be "unlocked" so you can over-crank them and get whatever craziness you want.

Rate of wheel/body Shake: 
How fast the body+wheel shake is. Higher value produces faster shake.

Update Driving Path:
See "Main Features -> Animation -> Update Driving Path" earlier in the documentation.

Ground Detection:

Toggle Grid Visibility:
Turn the visibility of the ground detection debug grid ON/OFF

Detection Resolution:
Change the resolution of the detection grid which is projected onto the geometry inside the "groundDetection" collection.

Enable Auto Deform:
Turn on automatic tire deformation. The deformation is approximated and might be too strong for certain wheels sizes. In that case, turn down the "Deform Factor" which will be revealed when the Auto Deform is turned on. The Auto Deform does slow down performance considerably if the tire meshes are high poly. Please note that if the tire mesh is joined with the mesh of the rim, the rim will be deformed as well.

Advanced Physics:

Warm-up Frames:
Add extra frames to simulate before the "scene start frame". This way you make sure the simulated data has settled before the "render range" of the animation will be reached.

Physics Settings Sliders:
Reveal sliders under the "3. Select Physics" section of the main part of the interface, which allows you to control:

- Vehicle Mass: Well, heavy car - light car? Don't rely fully on the real-world value of a certain model. Altering it to get the look you want is more important.

- Spring Dampening: How quickly the spring stops moving after an impact. A low value makes the spring wobble for a long time after an impulse.

- Spring Softness: How 'loose', soft or delayed the springs feel. A high value makes the spring less reactive on small fast impulses, but will have a big delayed reaction on big impulses.

- Wiggle Speed: The speed of the simulation. Turn down to emulate slow motion movement.

Simulation Meshes (Softbody):
Show the plane-meshes with mesh icons in the viewport which has the physics modifiers (Soft body) on them. When turned on the simulation meshes will only show if the "Simulation Data" is turned on with the "Switch_UseSimulationData" UI slider.

PostFX Manipulator:
Add a "Custom Mass" controller, to rotate the car body on roll and pitch axis, which manipulates the car body AFTER the physics sim is calculated. Keep in mind that IF you animate this manipulator and re-sim with new settings, the PostFX Manipulator animation might look weird, since the simulation data changed.

Airbourne:

A small Projectile Physics calculator, that calculates spline-points of a realistic car jump. To use it, go into edit-mode on the "DrivingPath" and select the last point, which has to be the very end of the "ramp" the car is going to jump from. This last point needs to have a handle. The angle of the handle will be the take-off angle and the "Jump Speed" (Speed of the car at take-off point) must be defined in the Add-on UI. If you prefer Imperial Units, you can check the check-box in the Add-on UI. The calculation will always expect the end of the jump is on Z=0. 

Automatic Airbourne Detection:
Automatically detect when the car is in the air while following the driving path. The detection is based on the distance from a particular point on the DrivingPath to the ground detection meshes. It does the work in some cases, but generally, it's better to manually animate the "Airbourne slider" to make the car not "snap" when ground detection is turned On and Off.


Rig Setup:

Use Custom Tags:
Reveal options for Custom Tags and make LC NOT use its default search tag, but only use the Custom Tags defined below this button.

Rig Brakes/Headlights:
Rigging options for Brakes and Headlights when LC automatically rigs the car. Options included are "If Possible, Never and [For Brakes] Force it."
- If Possible: Only rig the item if it can be found. If it could not be detected, it will be ignored.
- Never: Don't even try to rig it, just ignore it right away.
- Always: Force LC to rig the item. If it cannot be found, throw an error message and don't rig the car.

Rig Setup Mode:
Reveal the rig controls. Body, Wheel, Brake, Headlight and Steering Wheel attachment bones and setup controls for wheel-base length, track-width length, and wheel radii.
Here you can manually parent your meshes to the body of the car, wheels or whatever you want. You can also rescale the rig, by pulling the wheel-base slider and other sliders. The wheel-base, track-width and wheel radii controls are located at the initial control point of the DrivingPath. The car will temporarily be put back into the center of the scene and all animation handles hidden. All animation and setup sliders will be restored when "rig setup mode" is turned back off.


Thank you for checking out the documentation :)
Please reach out to us if you have any questions.

Choose a product version:

Sales 1000+
Customer Ratings 16
Average Rating
Dev Fund Contributor
Published over 1 year ago
Blender Version 3.6
License GPL
Have questions before purchasing?

Contact the Creator with your questions right now.

Login to Message