Announcement

Collapse
No announcement yet.

Rama's Multi-Threaded Dynamic Pathing System, Full Physics Support

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Food for thought

    Hi Rama!
    I've been a long time (lurking) watcher of this thread and figured I'd say hi and put in some input on your system thus far

    I think one of the next steps to truly level-up your AI system would be to add cooperative AI goals for AI to accomplish certain tasks they could not do by themselves. You can for example have:

    • Have 2 AI work together to push up the other AI to a previously inaccessible ledge.
    • Detection that a fellow AI is in trouble than seek out & protect it using a swarm/hive-mind type behaviour e.g. a medieval game where all the AI with shields lock into each other when a arrow-storm is upon them
    • A physics based object is blocking the path to an objective and the AI can work together in numbers to move the obstacle.
    • And much much more


    I believe another improvement you could make and which would be pretty straightforward to implement, would be the ability for AI to recognise edges of an object when path-finding and depending on whether it is above or below, decide whether to climb up the ledge or drop down the ledge/hole to the level below.

    Just for giggles you could perhaps make an ant colony AI path-finding system to allow AI to allign themselves into structures to get to previously inaccessible heights e.g. making a human pyramid/ladder/slop.

    Food for thought



    Moreover,
    Have you heard of Kythera AI? I've been following them since Umbra was first announced as a showcase piece on Crydev.net back in the day

    Star Citizen now uses their middleware as well

    Anyhow,
    My point to all of this is that you might be able to gain some new ideas for your own AI path-finding system and perhaps also work out ways to make improved versions of features within Kythera AI for Unreal Engine 4.

    Some interesting Case Studies you should consider reading:



    P.S.
    How's things going with your AI pathfinding system by the way, I hope all is well?
    Regards,
    Benjamin D. Smith

    Founder & CEO | Binary Sword Pty Ltd
    Currently working on: ODIN Tracker (UE4 Plugin)

    Comment


    • Sounds like you were able to dive very deep into the engine.

      What are the advantages of this over the built in pathfinding using nav meshes?

      Comment


      • @Benjaim.Smith

        lovely to hear from you Ben!

        I am uploading my latest AI Jump Pathing video right now!

        Originally posted by illYay View Post
        Sounds like you were able to dive very deep into the engine.

        What are the advantages of this over the built in pathfinding using nav meshes?
        I've used both, UE4 pathfinding / navmeshes are awesome!

        My Custom Support for Huuuge AI Creatures and Terrains!

        In the project for my book on UE4 C++ I use both UE4 pathing and my own nav mesh generation system + pathfinding C++ system (multi threaded of course) because the creatures in my game are huge and I wrote my own nav mesh generation algorithm to support huuuuge areas of terrain.

        Rama
        Last edited by Rama; 03-19-2015, 12:58 AM.
        100+ UE4 C++ Tutorials on the UE4 Code Wiki, including UE4 Multi-Threading!

        UE4 Marketplace: Melee Weapon Plugin & Compressed Binary Save System Plugin | Rama's C++ AI Jumping Videos | Vertex Snap Editor Plugin

        Visit www.ue4code.com to see lots of videos about my C++ Creations! ♥ Rama

        Comment


        • Originally posted by Rama View Post
          @Benjaim.Smith

          lovely to hear from you Ben!

          I am uploading my latest AI Jump Pathing video right now!
          Attached Files
          Regards,
          Benjamin D. Smith

          Founder & CEO | Binary Sword Pty Ltd
          Currently working on: ODIN Tracker (UE4 Plugin)

          Comment


          • Rama's C++ AI Jumping System

            Here's my latest video of my C++ AI Jump Pathing system!

            I prove to you in the video that I am using just multi-threaded C++ to dynamically calculate AI Jump pathsfor my AI units to follow the player through many complex jumping sequences!

            1. I am using just C++ coding, no helpers in the editor!

            2. Listen to me make lots of funny noises as my AI jumps all over the place!

            3. Watch my AI do things that amaze me!

            ~~~

            Video



            Once again, I am doing all the jumping calculations dynamically via C++ using the nav areas and my custom path following component!

            ~~~

            Mult-Threaded

            The code I use in this video is multi-threaded using the UE4 C++ Task Graph system:

            UE4 Wiki Link
            https://wiki.unrealengine.com/Multi-...k_Graph_System


            Enjoy!

            Rama
            Last edited by Rama; 03-19-2015, 05:17 AM.
            100+ UE4 C++ Tutorials on the UE4 Code Wiki, including UE4 Multi-Threading!

            UE4 Marketplace: Melee Weapon Plugin & Compressed Binary Save System Plugin | Rama's C++ AI Jumping Videos | Vertex Snap Editor Plugin

            Visit www.ue4code.com to see lots of videos about my C++ Creations! ♥ Rama

            Comment


            • Originally posted by Rama View Post
              Great stuff as usual!
              This would be especially awesome for monster AI, which would make it very challenging for the player to hide or escape.
              FREE Color LUT Collection
              FREE Physics Driven Spacecraft Project
              GTA Style Vehicle Interaction
              Dynamic DoF(Depth of Field)
              Camera Crossfade
              Portfolio

              Comment


              • Awesome !
                Check out my game OldSchool Nightmare : http://www.indiedb.com/games/oldschool-nightmare

                Comment


                • Originally posted by Jacky View Post
                  Great stuff as usual!
                  This would be especially awesome for monster AI, which would make it very challenging for the player to hide or escape.
                  You gave me a great idea!

                  I'm going to have the AI simply try to push the player off of ledges!

                  That'll be fun!

                  Hee hee!



                  Rama
                  100+ UE4 C++ Tutorials on the UE4 Code Wiki, including UE4 Multi-Threading!

                  UE4 Marketplace: Melee Weapon Plugin & Compressed Binary Save System Plugin | Rama's C++ AI Jumping Videos | Vertex Snap Editor Plugin

                  Visit www.ue4code.com to see lots of videos about my C++ Creations! ♥ Rama

                  Comment




                  • Enjoy video of my most entertaining Jumping AI Work so far!

                    Full description



                    Rama
                    100+ UE4 C++ Tutorials on the UE4 Code Wiki, including UE4 Multi-Threading!

                    UE4 Marketplace: Melee Weapon Plugin & Compressed Binary Save System Plugin | Rama's C++ AI Jumping Videos | Vertex Snap Editor Plugin

                    Visit www.ue4code.com to see lots of videos about my C++ Creations! ♥ Rama

                    Comment


                    • Hyper Intelligent Golden PhysX Balls

                      Did you know I trained physics simulating Golden Balls to use the UE4 Pathing system?!

                      What you see in this video is not programmed via matinee or editor helpers!

                      It's all UE4 nav mesh pathing + my PhysX path following component!

                      In the video I am drawing the UE4 path thet they are following!

                      Hee hee!



                      Rama
                      Last edited by Rama; 03-22-2015, 09:23 PM.
                      100+ UE4 C++ Tutorials on the UE4 Code Wiki, including UE4 Multi-Threading!

                      UE4 Marketplace: Melee Weapon Plugin & Compressed Binary Save System Plugin | Rama's C++ AI Jumping Videos | Vertex Snap Editor Plugin

                      Visit www.ue4code.com to see lots of videos about my C++ Creations! ♥ Rama

                      Comment


                      • AI Jumping To Reach Goals

                        100+ UE4 C++ Tutorials on the UE4 Code Wiki, including UE4 Multi-Threading!

                        UE4 Marketplace: Melee Weapon Plugin & Compressed Binary Save System Plugin | Rama's C++ AI Jumping Videos | Vertex Snap Editor Plugin

                        Visit www.ue4code.com to see lots of videos about my C++ Creations! ♥ Rama

                        Comment


                        • Training PhysX Characters to navigate narrow ledges!

                          In this video I trained my Physics-simulating AI units to stay on narrow ledges!

                          My final algorithm to do what you see in this video ended up being only about 3 lines of code!

                          I show before and after video segments so you see what I achieved!

                          I did all of this with a C++ custom UE4 path following component, using the UE4 navigation system.

                          ~~~

                          My Goals

                          Goal 1: To enable PhysX-simulating characters to use UE4 Navigation system

                          Goal 2: To enable such PhysX-simulating characters to not fall off of every ledge as they try to path along narrow ledges to get to the player, without cheating / using Editor helpers or making it look artificial/clunky! The final movement still needs to look natural and PhysX-y !

                          All goals achieved by end of video!



                          Enjoy the video!

                          Rama

                          PS: Yes I did say PhysX-y! You know what I am talking about!
                          Last edited by Rama; 03-26-2015, 01:05 AM.
                          100+ UE4 C++ Tutorials on the UE4 Code Wiki, including UE4 Multi-Threading!

                          UE4 Marketplace: Melee Weapon Plugin & Compressed Binary Save System Plugin | Rama's C++ AI Jumping Videos | Vertex Snap Editor Plugin

                          Visit www.ue4code.com to see lots of videos about my C++ Creations! ♥ Rama

                          Comment


                          • Wow Rama this is some awesome stuff! <3

                            Comment


                            • Been a while since I've had a chance to check out your works, awesome as always Rama. Keep it up! =)


                              SEJonF.com | Twitter | Youtube | ArtStation | WIP | UE4 SciFi Assets Hallways | Interiors | Props | CMD Center | Engineer Halls & Props | Free Asset Demo | Fantasy WIP | Ice Shader

                              Comment


                              • Originally posted by CosmicGiant View Post
                                Wow Rama this is some awesome stuff! <3
                                Hee hee! great to hear from you CosmicGiant!

                                Originally posted by SE_JonF View Post
                                Been a while since I've had a chance to check out your works, awesome as always Rama. Keep it up! =)
                                Thanks SE_JonF!

                                ~~~

                                Featured on Epic Twitch Stream Today

                                Epic Twitch Stream Link
                                http://www.twitch.tv/unrealengine/b/641812681

                                Have fun today everyone!



                                Rama
                                100+ UE4 C++ Tutorials on the UE4 Code Wiki, including UE4 Multi-Threading!

                                UE4 Marketplace: Melee Weapon Plugin & Compressed Binary Save System Plugin | Rama's C++ AI Jumping Videos | Vertex Snap Editor Plugin

                                Visit www.ue4code.com to see lots of videos about my C++ Creations! ♥ Rama

                                Comment

                                Working...
                                X