Ladies and gentlemen, start your engines! (Pro Racing AI v0.0.3)

Published by DavidGutierrezPalma on 2012-04-30

Estimated customers, a new version of Pro Racing AI has been released. You can download the new version of the product using the same download link, but there are a couple of things you must take into account before upgrading...

  • Some of the new features required a lot of changes in the internal API: that means that this new release could be slightly more unstable than the previous version and it will probably break code that was using the undocumented API calls from previous releases.
  • With so many internal changes, Unity will lose any Racing Line information stored in GameObjects or Prefabs created with Pro Racing AI v0.0.2 or older, so you should use the following upgrade procedure to avoid the information loss:
  • Before installing the new version of Pro Racing AI, make a backup of your project folder (better safe than sorry).
  • Save the Racing Line information stored in GameObjects and Prefabs into external (JSON) files.
  • Install the new version of Pro Racing AI.
  • Restore the Racing Line information from the JSON files generated before upgrading.

I don't like breaking backwards compatibility, I know this kind of changes are annoying, but it was the only way to implement certain new features. This kind of changes will become rarer as the product becomes more mature, but I think they are unavoidable at this early stage in the development... However, I will publish the API documentation with the next release of Pro Racing AI if everything happen as expected and there aren't too many changes in the internal API.


In any case, here you have the features of the new release:


  • The API has been updated.
  • Added support for flying vehicles.
  • Added support for RapidUnity Vehicle Editor and the Two-Wheeled Addon
  • Added support for played controlled vehicles (using accelerometers, cInput or the built-in Unity Input).
  • Added support for smoothing the AI simulated input.
  • Added support for Speed Limiter (useful for a Pit-Lane --> PitStops will be added in future releases).
  • Added support for Respawn Colliders: the vehicle will be teleported to the desired position OnTriggerEnter().
  • Added support for Basic Collision Avoidance Behaviour.
  • Improved the Respawn Behaviour.
  • Improved the Drifting Behaviour.
  • Improved the Car Recovery Behaviour.
  • Improved the "Track Borders Avoidance" Behaviour.
  • Improved the calculation of the turning radius and the max speed.
  • Improved the AI behaviour with low fps or when the AI is called on Update() instead of FixedUpdate().
  • Fixed a bug taht could cause the AI to "forget" its position in the racing line after a respawn.
  • Fixed a bug that caused several timers not being updated correctly under certain circumstances.


  • Allow the user to define the number of laps of the race.
  • Allow the user to define a list of colliders as checkpoints.
  • Allow the user to generate the list of checkpoints automatically from a racing line.
  • Search automatically all the Pro Racing AI vehicles in the scene.
  • The following information is stored and can be retrieved:
    • Sector Times.
    • Lap Times.
    • Total Racing Time.
    • Last Checkpoint Reached.
    • Complete Laps.
    • Best Personal Sector.
    • Best Personal Lap.
    • Best Absolute Sector.
    • Best Absolute Lap.
    • Clasification.
    • Pit-In Time.
    • Pit-Out Time.
  • The following events are launched:
    • Start of the Race.
    • Checkpoint Reached.
    • Checkpoint Missed.
    • Lap Completed.
    • Race Completed.
    • Pit-Lane In.
    • Pit-Lane Out.


  • The API has been updated.
  • Added support for importing roads from EasyRoads3D.
  • Added the possibility of defining a node as checkpoint.
  • The scale of the racing line has been taken into account in several calculations.
  • The Racing Line can be translated, rotated and scaled modifying those parameters in the Racing Line GameObject.
  • The runtime performance has been improved because more information is precalculated on scene load.
  • The vehicle acceleration and the track baking are taken into account when calculating the max speed.
  • Fixed a bug with the interpolation algorithm that was triggered only when we had a single value.



  • Added support for calculating the optimal racing line automatically.
  • Added several checks to ensure that the introduced values are valid.
  • Added support for choosing between "View Speeds" or "View Sectors" in the Scene View.
  • The performance has been improved because the Racing Line information is only recalculated after making a change.
  • Improved the accuracy of the "Node Subdivision" and "Node Reduction" algorithms.
  • Improved the "Generate Sectors" algorithm.
  • Improved the behaviour of the Handles in the Scene View.
  • Show the track length, the average track width, the average speed and the estimated lap time.
  • Show the "percentage the start of the sector" parameter.
  • The sectors are sorted automatically according to their "percentage end of sector" parameter.


  • It is still considered "experimental", but the process has been improved in accuracy, speed and stability.


  • Simple "Live Timming Screen" example.
  • Simple "Race Summary Screen" example.
  • Simple "Read Events" example.