Procedural animation

THE RESEARCH:
I recently discovered **Procedural Animation **tecnique and was amazed by the natural movements you can achieve without any predefined skeletal package animations.
As far as I understdood, It is all based on physics and AI, IK bone rig and interpolation.
The best video examples based on this tecnique are made by Makan Gilani and this is an example of what you can achieve with no player or enemy animations at all, just Procedural Animation system: BEST OF MADE WITH UNITY #36 - Week of September 5, 2019 - YouTube
It has already been created a package in Unity: Moveen | Animation Tools | Unity Asset Store that contains all the principles of Procedural Animation.

THE GOAL:
the goal is to create a similar concept in UE4 via customizable Blueprints that must be simple and adaptable to any type of character

ADVANTAGES & DISADVANTAGES:
A: avoid skeletal rig limitations, Epic or Not Epic
A: stop using hundreads of animations with complex ABP graphs
A: leave to the AI system create all the interpolation between one keyframe position and the next one
A: apply this system to any type of character with N legs, wings, etc
A: have a more natural moving character responding to physics more than predefined recorded animations blended together
D: effort in building an initial Ai system
D: during the construction, always think out of the box is mandatory because the goal is to create a system that can be easily adapted to any type of character (human, animal, robot, walkin, flying, swimming, etc) with one or more arms/legs/wings

2 Likes

Is procedural animation kinda like what Rockstar use with their games using euphoria natural motion, Say AI gets knocked over they attempt to stop their fall or cup their head? or is this something else?

I think that is a part of it. Procedural anim let you animate anything, without using animation sequences but only rules, physics, IK bones and interpolation…and this gives you natural movements because you are not using identical sequence animations looping. I’ll start from a 3 bone leg or arm and attach a root, then another leg, set and see what comes out.

I’ll do it all in blueprints. Curios to see what happens!

Sounds Amazing and I would have never imagined this to be possible 15 years ago. I look forward to whatever Animation System is developed from this body of work. Perhaps in the very near future, Full Scenes will animated procedurally.

@VerumBit ,

Per this Tweet, It appears Makan Gilani has moved to UnrealEngine. Perhaps we can get in contact with him and possibly establish a collaboration? Makan explains his process in this 80 Level interview.

Thanks for the info! I sent Twitter message days ago. I think he has so many questions because his Twitter videos have thousands of likes!
Here one of his first videos
https://twitter.com/i/status/996196205217497088
incredible with no animations at all. That’s shadow of the colossus game.

​​​​​

Here Makan Gilani interview explaining more on Procedural Animation.

I read the Article, but I actually did NOT see any explanation on how the ‘point manipulation’ and reaction is achieved. I assume he means joint manipulation of IK rig. Some Pseudo code would be helpful.

Explanation will mean revelaing all the AI rules he developed behind his proc anim and I understand if Makan keeps it private. I imagine there isn’t a ‘best way to do it’ just his way…is a personal approach and solving micro/macro situations. He did a great job, for sure one of the best procedural anim implementations.

You can’t walk on spheres with standard animations characters……YOU CAN WITH PROCEDURAL ANIMATION!

Click here to see the video

procedural_anim_spider.jpg

I’m not sure if he is talking about AI rules, as there is no context to suggest that. Because there isnt a best way to do is why i see no need to keep it private. He could be expressed the concept in psudeo code or a illustration. It would be known as the Makan Gilani Method or something else with his name in it. Dude could create plugins etc, even write a book on it. Too bad he teasing around, because he’s sitting on gold mine.

Do you just rig up the model, give it a bunch of rules then tell it what you want it to do! That would be amazing! Have I correctly understood that? Is so you need any testers give me a shout, that would save me so much time.

Hi! A kind of rig but not the UE4 classic rig and for sure not all the bones skeleton rig….just the one involved in the procedural animation.
I’m starting in these days with different approaches: ‘a bunch of rules’ makes me laugh……I will start with an AI procedural animation blueprint…if I see it get’s too complicated I start again with a different approach…until is Simple to adapt the AI to any creature. Must be Simple to adapt, not complex.

I was thinking how many use can have….one of which I hope will be to map the procedural structure made of trigger points over any skeleton key bones, no matter if has Epic or non Epic rigged structure……and with non Epic structure skel there are amazing ultra detailed fbx out there (mech, animals, etc), just check turbosquid.com
3D Model->characters->robot->mech
or
characters->mythological creatures->fantasy and fictional creatures->monster
to see how many detailed fbx are there all with different skeleton structure.

Thanks for the test avalaibility….will shout you when I reach a decent level! :slight_smile:

Will keep this page updated with my progress…

1st tentative was a total failure!
So I started with a 1st leg 4 bone: I tried to replicate the Unity package (https://assetstore.unity.com/package…/moveen-101452) and was a total failure! :slight_smile:
I also abandoned that approach because I saw all his videos and understood that his method can only generate a spider-mech prototype and not really open to any other type of creature (fish, bird, etc) which is what I’m looking for. And is also very complicated, with many parameters and rules which is not good.

**So I’ll start the 2nd tentative I’ll call ‘POSES INTERPOLATION’: **
this next approach will be based on poses. Basically I have my character in idle pose.
No walk/run/jump animations because Procedural Anim does not use any kind of animation.
To make the mannequin walk I’ll make 2 walking poses (move the bones in walking position) then interpolate them.
IK bones will then be the next step.

Exciting project @VerumBit!

I am really intrigued by physics based, natural, animation for characters in games.

Like Jaycob from an earlier post, I am still a bit confused as of how far you think you can take this procedural animation plugin.
Do you think it would be possible to emulate real humans using this system; things like self-balancing with human reactions to force being applied?

The more a study the more I understand that Procedural Animation is a concept or a programming tecnique you can use in many ways.There are many Procedural Animation plugins out there, each one different from the another.
My goal is to animate a human or animal without using the classic animation sequences : I’m actually testing animation using a few skeleton static poses (2 poses for walk, 2 for run, 1 for jump) and interpolating the skeleton from one pose to another considering speed & acceleration. I’m not really interested in a real human self-balancing system now. I’m adding Inverse kinematics to make the creature adapt foot&hands position when contacting obstacles and react as real as possible. The success is to have a final interpolation tha animates the skeleton in a fluid and realistic way.

Thank you for your reply VerumBit, I would see massive value in functionality like you describe. I am sure that if you release this as a plugin it would gain good traction within the unreal community. The only thing I would want to add myself is the self balancing stuff to make it really realistic, but that is because it is a requirement within my application. I believe what you are trying to achieve in itself is already pretty hard, so it is a good thing to take it step by step. I am really curious how this project pans out, please keep us up to date about your progress! :slight_smile:

Here my first test: I created just 2 Legs without a body. I started with legs because need to understand how to move them realistically.
No sequence animations used, all movement are based on Blueprint maths.

Animation is 100% parametric so you can change speed based on main body speed.

Here the actual parameters you can play on:

  • Run Speed (any Speed, will be connected to main char mov speed)
  • Leg Rot Angles on Front Push and Back Recall (any angle)
  • N° Mesh per Single Leg (1…20)
  • Mesh Type per Single Leg Bone (any StaticMesh)
  • Mesh Scale to Simulate Muscle increase/decrease (each bone size will increase/decrease based on the leg angle compression or extension)

https://twitter.com/Verumbit1

That is freaking Awesome @VerumBit! Are you able to connect multiple legs at the joints?

@TechLord I paused working on the above multiple mesh leg and rebuilt a new leg because complexity was becoming too hard to be managed.
So I restarted with a total different apporach and made a new leg or I prefer to call it a LEVER because it can be used for a leg, arm, or anything that has at least 3 bones rotations.
Here I made a screenshot of 2 legs running inside a 3rd person player capsule (so using mouse+camera rotation and movement). Legs animation depend on capsule velocity, jump high also depends on player velocity so if you run you’ll jump higher than if you walk.
I’m parametrizing everything so that the final user will be able to modify each Lever size and invert bone rotations (ie simulate an ostrich leg), alternate 2 or more legs animation and attach oner or more Levers to a joint.
In these days I’m creating the bprint rules to let the last Lever bone (the foot or hand) behave as an IK bone so that a leg or arm HIT detection (wall or a stone) will be avoided with a Lever bones compression as you do when you pull up a feet or retract an arm near a wall.
So finally all is done via bprint without any mesh skeletal structure, any skeletal animation.