Unreal Engine Livestream - Animation & Physics Updates in 4.17 - August 31 - Live from Epic HQ

AnimPhysUpdates.jpg

WHAT
Many improvements to our animation and physics pipelines have been made with the latest Unreal Engine release. Benn Gallagher and Lina Halper will be joining us to chat about clothing, live editing of animation Blueprints, and more. Be sure to tune in!

WHEN
Thursday, August 31st @ 2:00PM ET Countdown]

WHERE
Twitch.tv/UnrealEngine
Youtube.com/UnrealEngine](Unreal Engine - YouTube)

WHO
Benn Gallagher - Programmer - @Exelcior](https://twitter.com/Exelcior)
Lina Halper - Sr Animation Engineer - @nikolobin](https://twitter.com/nikolobin)
Amanda Bott - Community Manager - @amandambott](http://twitter.com/amandambott)

Toss your questions for this stream in the comments below!

ARCHIVE

Question: What is a good way to preview morph targets in the editor viewport? I used the anim BP Initialize Animation event to do this before, but since 4.17 it’s only working sporadically (not set when opening project, is set when compiling anim BP, then reset again when compiling character BP).

Amazing! Is there any chance to cover some 4.16 topics? Specifically I’d love to have a small walkthrough on how to set up:

  1. Animation Modifiers
  2. Lightweight Rigid Body Simulation

I couldn’t find much documentation on the above features.

Thanks!

sounds like a good one! :wink:

Lightweight Rigid Body Simulation coverage +1

Yeah do go over the immediate mode physics thing.

I guess disregard this post as i have been given the correct links. (really weird the link is almost no where to be found, idk why but i cannot find this link through searching)

Can you give any insight on how you should implement a simple animation system using the pose animation data? The docs show the results, but never really show how. I understand you can drive poses by curve data, that’s fine and it works. But not really the greatest way to control pose driven animations in real-time. When i asked about it before, i was told to wait for the docs to be updated and given a very vague solution in which there are seemingly no docs for the said solution. When i click on the docs about the pose stuff today, it 404’s and It’s been awhile since the pose stuff was released, (it’s been almost a year it feels like). I have hacked together a result that works, sort of, but it’s way too complicated to implement as a full animation system. Something akin to Overgrowth’s anim system, using my pose driven implementation is reinventing the wheel quite a bit and far to convoluted to have a full game’s anim system to be based on.

I have to be missing something trivial, like an animation node or something. I can’t find anything concrete on it though. Allot of questions asked about the pose system are simply unanswered or the people who have figured it out either don’t show their results or are hacking together a result that is something i have already.

All of the experimentation has resulted me in having to revert to using my procedural animation system for organs and arms, in which im ‘reinventing’ allot of what the pose asset does already. Pose Space Deformation and Radial based functions should be trivial to implement but the ue4 workflow is seemingly undocumented. At-least as far as i can tell. Please help. <3

(also i have watched the live stream about the pose stuff (both cube and original pose stream) but that cube sample was very unhelpful)

Pose Blender Node & Pose Driver Node 404’s

Edit, i have been given a link to the AnimPose Docs. This doesn’t 404, and has the info i have been looking for. Thank you DiscordNinja!

Is there anyway to play the same animation on different characters that are rigged with the same amount of bones but are only different in scale?
It might’ve been answered before but I can’t seem to find it if it has.

Never mind, I have found a answer that works for me.

So this is a slightly OT question but still related to this kinda stuff.

Is it possible (or will it be possible in future) to move the render mesh independently of the collision mesh when using Skeletal Meshes? The reason I ask is because I want to do smoothing for a Skeletal-Mesh based object in Multiplayer, and I can’t use Primitive Collision Shapes like Character Movement does with the Capsule.

If not - consider this a feature request to be able to offset the Render Transform of all bones in a Skeletal Mesh :stuck_out_tongue:

Question:
Is there any chance that Anim montage(and other complex anim things) will get a workflow and UI overhaul/improvements? We’re getting new powerful features pretty often and that’s amazing, but they are keep piling up and now it looks really hard to tackle

Are there any good books or other learning resources to get into animation programming?

Would be great to see how you set up a character’s constraint profile (without the “magic number”-part for once :smiley: ) and immediate mode physics! Also: Will the capsule still not follow the mesh after going ragdoll and/or does the “pose-snapshot”-method from one of the previous live streams still apply?

I would love to hear a little about “Enable Update Rate Optimizations” and other ways to reduce animation costs for non player characters. Like the Paragon minions how are they set up in general or specifically how to minimize cost when not on screen or at a distance. Thanks!

Enable Update Rate Optimization (URO) allows you to skip the update/eval of animation or interpolate while skipping by screen size or LOD. It is not that straightfoward to set up, but it is the parameter in SkinnedMeshComponent, and if you follow USkinnedMeshComponent::TickUpdateRate(float DeltaTime, bool bNeedsValidRootMotion), you’ll find how this works.

Eventually, it is parameter that controls how you’d like to tick and how often, and check the struct - FAnimUpdateRateParameters

We do have internal test case, but not exposed.

–Lina,

There are many books about animation programming, but animation programming isn’t that different from any other programming. Just find what topic interests you and do it. :slight_smile:

Use retargeting online within same skeleton. They can share skeleton, if they were rigged same.

The point is to animate the curve, and use it in animation system - using pose node or pose blend node in that link.

We don’t support spring curve though as overgrowth, so that will be issue, but other than that, you use it like normal animation, except you’ll have pose blender at the end. We’d like to make a test project for this, but not yet. Good luck.

Tested this in 4.17. Works in viewport now. :slight_smile:

I tested this in a new empty project with a new mesh and it worked fine there, but in my main project whenever I compile the character BP the morph targets in the world are reset. No idea what’s causing this.

Edit: video: https://youtu.be/LpxSJwmj3aY

Edit2: I managed to fix it somehow by unplugging/plugging stuff back in in the character BP, now it only happens when compiling child BPs (which is really weird) and on startup, which is fine, just need to compile once and it’s back to normal. :rolleyes:

Hope we managed to give you guys a little more information on this, we had a bunch to cover so we didn’t get to dive too deep on this!