No announcement yet.

[UPDATE] Anti Gravity Racing Kit 2.2

  • Time
  • Show
Clear All
new posts

    Update v2.2

    Update 2.2 - Unreal Engine 4.23 - 4.24
    • Adjustable Child Blueprints of the Vehicle for varying AI Difficulty
    • 3 different Vehicle Presets with unique Vehicle Setups

    Demo v2.2

    New Demo Available!
    Last edited by Alwin; 01-22-2020, 08:45 PM.


      Hi Alwin, fantastic setup!

      I recently purchased this and I'm going through all the settings, fiddling with them to see what they do, but I can't seem to understand what the "Max Autopilot Scans" seems to do. The documentation doesn't include anything about this settings.


        Hi and thanks JackKnife, I'm glad you like the package.


        Scans are there to evaluate the closest target location along the track the vehicle should move to. The vehicle performs Ray Traces along the track in front of the vehicle. If the Ray-Trace hits a sidewall, the closest location in the center of the track is being used as a Scan Location, (3D Vector) which is then used by the Autopilot Controller to adjust control values accordingly to the target location.


        Location A = Vehicle Location
        Location B = Target Scan Location = Vehicle Location + Scan Distance along the Center of the Track

        Ray Trace is performed between A and B. If a sidewall is obstructing the Ray Trace:
        C = Closest Point of the Hit Location at the center of the track

        Finally, adjust control values to move the vehicle to target location C


        Let's say you define 50 Max Autopilot Scans for example.

        What the Autopilot is basically doing, is dividing the autopilot scan range by 50, then performing a for-loop (with break) to incremental scan between the vehicle and each of those 50 locations in front of the vehicle along the track. When a sidewall obstructs the Ray Trace in one of those iterations, the loop is ended and the closest location of the hit-location at the center of the track gets used by the Autopilot.

        Here is an example in more detail:

        A = Vehicle Location
        B = Target Scan Location = Vehicle Location + Scan Distance (Along the Center of the Track)

        Autopilot Scan Range = 1.000 to 2.000 Units
        Max Autopilot Scans = 10
        One scan Iteration = Absolute Scan Range / Max Autopilot Scans = 1000 / 10 = 100 Units

        In each of those (max) 10 Iterations, a Ray Trace happens between A and B, until one of the Trace is obstructed by a sidewall:

        Scan iteration 1 (Scan Distance = 1100) -> Ray Trace Between A and B (No Hit)
        Scan iteration 2 (Scan Distance = 1200) -> Ray Trace Between A and B (No Hit)

        Scan iteration 3 (Scan Distance = 1300) -> Ray Trace Between A and B (No Hit)
        Scan iteration 4 (Scan Distance = 1400) -> Ray Trace Between A and B (Hit) -> Break Loop

        Use closest location to the HIT location of the Ray Trace along the center of the Track as C
        Finally -> Adjust Autopilot Controls accordingly to location C


        One way to visualize this process, is by turning on Autopilot Debugging, which is showing the Ray Trace between the vehicle and the target scan location.

        Last edited by Alwin; 02-04-2020, 04:06 AM.


          Hi Alwin! WRGT to the Autopilot Scans, is it safe to say that the more scans there are, the more accurate the autopilot will be (and vice-versa)? Trying to create a few AI racers with different attributes. Thx!



            joestallings that's correct, but it also depends on the size of the Scan Range.

            The greater the absolute Scan Range is (max - min value), the more Ray Tracing is required for an accurate estimation of the track shape. A higher amount of scan iterations also result in a greater performance overhead per frame, so it's advised to just start with a small value and increase it as you need


              Thank you!


                Hey how's it going? In Unreal 4.24.3, if I attempt to open the Ice Climb level it crashes the editor. Could you double check it for me?


                  Hello Crazy Draisey ,

                  I just imported the package into a new empty project and it works fine with Unreal 4.24.3

                  You could try importing the package into a new project to ensure the issue is not related to your existing project.

                  If it crashes again, feel free to share the crash report so that I can take a closer look into your issue.

                  All the Best,


                    Hello Alwin,
                    I've been enjoying your project! Do you plan on updating to 4.25, and maybe even Unreal 5 in the future? I would totally understand if 4.25 is the last version, just wanted to check


                      Yes x500 , support for 4.25 coming soon. Support for Unreal Engine 5, probably yes but it's still a lot of time remaining.

                      As far as I know, Unreal 4 projects will be supported in Unreal 5. If that's the case, it shouldn't be an issue at all.
                      It also depends on whether they make heavy changes to the physics system, but I don't think this will be as significant.