Jump to content

a possible solution for arthropod climbing


Recommended Posts

Now, in an interview, Grounded director Alex stated that they are hoping to add climbing to the arthropod's AI, but are having issues with programing the behavior. I propose a possible solution that I'll separate into two parts: Animation and Navigation.

 

For Navigation, the solution would be to enclose each arthropod in two ellipsoid hitboxes; a smaller hitbox for their main body, and a larger hitbox for their legs. The larger hitbox intersects with geometry and is used to determine whether a surface is walkable, while the smaller body hitbox is used for physical collisions to prevent clipping.

 

On the animation end, each arthropod leg would be given two animation "sliders," one for angle, the other for extension. Then you program a script that seeks out the nearest solid surface and have the legs angle and extend/compress themselves to walk along that surface, and finally script the root body to average itself to the angles of the surfaces it's walking on, allowing for a smooth transition along slopes. Long insects, such as ants, may need additional sliders for the head and abdomen.

Link to comment
Share on other sites

I decided to search the internet to see if anyone  else had attempted to code arthropods that climbed on walls in UE4 before. There's a forum about climbing ants where someone made the following suggestion:

Quote

One work around could be have the ants follow a spline that is generated from their position to the players position that conforms to the contour of the terrain.

The problems is making an *efficient* algorithm that makes a spline conform to terrain tightly enough to make the ants seem like theyre walking on surfaces. (Gentle slopes are easy. Sheer drops and overhangs are HARD).

Then there's this guy working on making a spider AI that can climb walls and ceilings.

here's another guy trying to do the same thing

here's a step by step tutorial

Or, you can simply use this free plugin to do it. It's a bit outdated with the latest edition of UE4, so it will likely require some tweaking, but it would still be very useful as a reference.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...