[RELEASED] Custom Vehicle Controller | Unity3D Arcade Vehicle Physics Package

I am very proud to announce the initial release of the

Custom Vehicle Controller

Asset Store Page
Online Documentation

Custom Vehicle Controller is a Unity package for fast arcade vehicle physics integration into your project. Create and modify vehicle parts from the custom editor window. Supports runtime editing.
Quick Video Demonstration:
https://www.youtube.com/watch?v=p5VbKKnkYmo
Physics Demonstration:
https://www.youtube.com/watch?v=sdN1TyXEOPM

Feature overview:

  • Fast workflow from within the custom editor window. Create and modify vehicle parts with ease.
  • Vehicle performance is represented with ScritableObjects, giving you the ability to save and reuse different combinations of parts to create unique vehicle behaviors.
  • Create presets of vehicle parts.
  • Make runtime changes to the parts and their properties, giving you maximum flexibility in achieving the desired performance.
  • Save the changes you did during play mode.
  • Includes scripts and assets for handling visual and audio effects.

- Vehicle Creation
The vehicle creation is a trivial matter of seconds. Just assign the references to the wheel MeshRenderers and click a button. The whole clean hierarchy of game objects will be created and script references populated - in just 1 click.

- Parts Creation And Modification
Create and modify different vehicle parts from within the editor. Parts are presented in a simplified, easy to understand way and provide comfortable interface to speed up your work. Every part description can be seen from the tooltips and online documentation.

The vehicle consists of the following parts:

  • Engine, which produces torque.
  • Forced induction (an optional part of the engine), which provides additional torque. The way torque is provided depends on the FI type.
  • Transmission - redirects torque from the engine to the wheels, multiplied by the current gear ratio. The asset includes an automatic gear ratios list calculator.
  • Nitrous - provides boost after player input. The nitrous system is highly customizable to every need. Optional part.
  • Front and Rear Tires, which determine the vehicle steering responsiveness.
  • Front and Rear Suspensions, which keep the car above the ground and prevent it rolling over.
  • Brakes and handbrake to stop the car and initiate the drift.
  • Vehicle Body, which determines the vehicle's resistance to different kinds of motion.

- Preset Creation

Instead of assigning individual parts to every vehicle you have an option to save the whole parts preset and use it on other vehicles.

You are also given an option to assign individual parts to an instance of a vehicle, giving you the ability to change the parts that the vehicle uses without affecting any other car.
- Runtime Modifications

Tweak the parts settings from within the custom editor during runtime to quickly achieve the desired behavior. Safely change the parts instances and save any changes you made during the play mode.

- Visual Effect and Audio Assets

The package comes with ParticleSystem, Visual Effect Assets and scripts for handling the following visual behaviors:

  • Tire smoke
  • Tire skid marks
  • Nitrous
  • Anti-lag (exclusive for the TurboCharged forced induction)
  • Wind effect on the vehicle body
  • Wind trails from the rear wing
  • Brake lights (changes the material color)


As well as audio assets and scripts for handling:

  • Engine Sound
  • Forced Induction Sound
  • AntiLag sound
  • Nitro sound
  • Tire Slip sound
  • Wind sound

Feel free to ask any questions, hope you are as hyped as I am :). Thank you for your attention!

Version 1.1.0 update is out!
Added engine performance customization feature:

  • Create your own engine part types from the custom editor.
  • Create instances of engine part types that provide additional torque to the engine and may change the engine's working rpm range.
  • Improved EngineSoundManager script to reflect the impact of the performance customization.
  • Vehicle controller can hold 1 engine part of each unique type that you create. Assign parts from the custom editor or from code at runtime.

Engine Customization Showcase:
https://www.youtube.com/watch?v=zJ-EEJpkgi4
New Physics Showcase:
https://www.youtube.com/watch?v=hqjsAwYZ37Q