#animation

1 messages Ā· Page 126 of 1

next pine
#

Ah - so this is hypothetical. You haven't actually used these.

molten jewel
#

I avoid the hell out of state machines

#

and do most timing myself

#

but I have actually used sync groups

#

just very briefly

#

with sharks

#

and it did fix the problem i had with tail wagging

#

in terms of transitions

#

but the frame lengths of these things were identical

next pine
#

Yeah, in which case it wasn't actually doing the time scaling thing.

#

What's weird is that the 'sync group' scaling does work, it's only when the markers are added that everything fucks up.

molten jewel
#

hm

#

very curious if your sync markers are maybe just accidentally configured wrong?

#

how many cycles do you have?

next pine
#

Ah - I thought that, then I tested a linear blend with the same animation one scaled at 1.0 and one scaled at 5.0 and the dramatic obvious velocity popping was visible in precisely the same place.

molten jewel
#

is it just FOOT_L and FOOT_R ?

next pine
#

So, no, the sync markers are set up properly.

molten jewel
#

or do you have like FOOT_L_DOWN FOOT_R_DOWN FOOT_L_UP FOOT_R_UP

delicate junco
next pine
#

Hmm - they're blending between animations of the same velocity though.

delicate junco
#

I think this is for anims where you character changes direction or something cause then the blend could just make the legs overlap or things like that maybe

next pine
#

I'm skimming through the live training and they don't show it being used.

delicate junco
#

Ah yeah didn't watch the live training entirely too, just saw it in the title and quickly looked if they talked about it

next pine
#

Hmm - ok, but in this case they're controlling the play rate. This is the presentation where they talk about the stride scale and rate scale IK leg locomotion system.

#

In this case, the sync markers would likely be helpful because they're primarily blending between the four directional runs.

#

Which are all being rate scaled.

#

(this setup is necessary because they don't have 3D blendspaces)

#

Err... 4D blendspaces?

#

Forward / Right / Lean / Slope

#

But I think I'm getting it. The primary purpose is to pick a correct starting time when blending between disparate animations, not to handle rate scale. Rate scale needs to be handled independently.

delicate junco
#

You seem much more knowledgeable about animation than me lol so I don't think I can help that much unfortunately šŸ˜…
It just seems to be a way to avoid foot sliding and have more control than a simple blend using blendspace I guess

molten jewel
#

i believe so jack.. if you think of the way the non leader is introduced

delicate junco
#

Yeah basically it seems to give some points to start the blend from, avoiding to blend while a foot is in midair for example

molten jewel
#

in terms of time scaling jack

#

when its starting a transition to a new introduced non leader, the frame it starts on might be picked based on space between markers.. so thats not time scaling but it would definite affect things.. I wouldn't be surper surprised if it were time scaling with transitions tbh

#

if you really wanted to find out, would recommend just keying in some markers where it would be very apparent.

#

such as playing a whole walk cycle in between sync markers of another thing

#

that might be something you could get answers from

next pine
#

Thanks you two. I think I figured out where this would be useful. It's useful when you're controlling your rate scale independently, and the point is to pick the right starting point.

#

If you're doing a basic 2D blendspace for locomotion - it's not a good idea to use the markers.

#

If you're doing the 4D blendspace they did on paragon, it does work.

delicate junco
#

Yeah that seems to be pretty much the case, thank you guys, never used them so far but learned about them thanks to this discussion 😁

molten jewel
#

animation in ue4 has most things thought out

#

still find blending things on your own without blend spaces is the best answer when you have highly sensitive timings

#

otherwise animation in ue4 is just kinda like: good enough, approximately correct

#

same reason i don't use state machine really

next pine
#

I find the state machine quite useful. I can't imagine spraying the complexity of disparate states across the graph.

#

Seems... prone to mess.

molten jewel
#

I am a stronger programmer than animator so when i'm trying to tie things into animation i have issue with having to ask the animation whats going on

#

state machine and blend spaces can be kinda like a black box that might as well run on the gpu

#

but that said, they do work well for sure

#

just moment the game needs to care what animation state its in, it jilters the code

#

not a fan of notifies really

next pine
#

ĀÆ_(惄)_/ĀÆ

#

If it works it works.

molten jewel
#

When it don't, it don't shrug

vernal lion
#

Hey folks, anyone know if I can create a "still" / "not moving at all" animation in UE

#

without loading up maya

#

or w/e

next pine
#

Do you have another animation with the pose you want?

vernal lion
#

yes but they all include movement

#

I thought about making a composite, but I'm worried with even 1 frame it would be jittery.

#

TBH I'm just trying to handle the character being dead and not firing animation events

#

that exist in his idle loop

next pine
#

You can copy the idle animation and just delete all the frames you don't want.

vernal lion
#

okay thanks that will probably work for me šŸ™‚

#

It would be cool if you could auto generate a default pose tho

restive yew
#

Or just use the bind pose

molten jewel
#

Someone was mentioning that yesterday. what does the timeline look like with one frame? lol

#

john l, yea if the bind/ref pose is the default pose (as suggested by HighTide), there is a node for that

bronze osprey
#

skip the anim to the pose u want and create pose asset

#

u get 1 frame u want from the anim u want

molten jewel
#

nah

#

pose assets are not for that

#

pose assets are 100% for driving poses by curves

#

similar to how warp/shape targets work with vertices

bronze osprey
#

think u can still use em for this

molten jewel
#

nope

#

only by faking a curve value

#

and you don't want this just to get a single frame of animation data.

#

overhead == large

bronze osprey
#

ok, set playrate 0.000001 might do the trick šŸ˜›

molten jewel
#

just right click your play animation node

#

convert to evaluate

#

and set the time in.

misty dagger
#

Why does Unity's retargeting system work so much better than UE4's? Unity can handle pretty much anything I throw at it with absolutely no errors whatsoever, but nine times out of ten UE4 will have a forearm offset by about two feet or pretty much any issue imaginable. These are all random character meshes extracted from games like Battlefront or Arkham Knight.

#

UE4 is still my go-to, but damn if I wasn't impressed by Unity's retargeting when I decided to give it a try.

molten jewel
#

what your speaking of is only relevant to bipeds in unity. And even though unity is really good at it, its still not perfect.

#

Animations are in joint space in unity more or less. biometrics are captured on the avatar of the character

misty dagger
#

Hmm. And there's no way to make Unreal function similarly?

molten jewel
#

If i had to guess why unreal does not use this same method it would probably be because it would be an absolute nightmare to upkeep without closing source and restricting developers to a sandbox

#

You could potentially do this, but nothing like that comes with unreal

#

Working in joint space would mean basically having two separate animation trees

#

And i would not doubt if thats exactly what unity does. I have no idea though

#

But yea even though retargeting in ue4 is also biped related only, It is very much done at editor time and baked out in favor of performance

misty dagger
#

Alright. It's a shame, but it seems there's a reason for it. Thanks!

molten jewel
#

Just an assumption. I'm familiar with unity's retargeting though yea

#

I feel your pain, but its one of those things unity does for you that eats up a lot more performance than you could ever know about

#

in terms of what can be profiled

delicate junco
#

@molten jewel That's interesting, what do you mean exactly by performance ?

#

Like anim compression and such ?

molten jewel
#

unity tends to run like a dog because of gc but the engine gets away with such hiccups too or it uses threads in the background to do huge things that do not show up on profiler

#

working in joint space, you'd have to spend time articulating everything from biometrics at some state during the evaluation. animation curves in unity are basically like "ElbowBend" or "KneeBend" for humanoids. So it evaluates the entire state machine for these curves and then converts it to representative quats you'd expect

#

Idk about unity now a days but a couple years ago, you were basically limited to state machine consisting of one animation or one blend tree (per state). Then being able to manually control ik targets in code.

#

so trying to pass that torch on between nodes in ue4 would be quite complicated

delicate junco
#

Oh ok I see, thanks šŸ‘
But what if you just retarget the model/anims, export them to fbx and then import them in Unreal ? Is that even possible

molten jewel
#

don't believe you can export anything out of unity

#

but

#

its possible with lots of scripting yea

#

then you just end up with retargeting in unreal already though

delicate junco
molten jewel
#

unity doesn't let you get out of their platform and its likely against the tos to do anything that could help you outside the platform

#

thats interesting

delicate junco
#

Oh yeah I was supposing that the retargetting tool was better for humanoids like Solaris mentionned, just wondered if such a tedious workflow would solve the issue

molten jewel
#

slightly confused what this exports tbh lol

delicate junco
#

lmao

#

Cause yeah since anims and meshes seem exportable you could just abuse the better humanoid retargetting and then put evrything in an fbx to import it in unreal

molten jewel
#

I wouldn't say their retargetting is better as in more accurate

#

The thing that is nice about unity's retargeting is that there is no output phase

#

you don't have to have copies of animations for different body types

#

it just does this for you at runtime

delicate junco
#

Ah ok I see

molten jewel
#

I assume this is what @misty dagger was referring to?

#

Thats what is desirable anyways

#

don't have to retarget manually anything

delicate junco
#

yeah that makes sense

molten jewel
#

Unreal does a pretty good job at retargeting, but it all depends on the pose yea

#

it would be nice if they did a little magic to give you a good standard pose things could fit

#

Like if you looked at all the frames of animations for where bending occurs you could probably approximate the better axes. Unreal just kinda relies on you to do it I guess.

delicate junco
#

I didn't try it myself yet tbh cause no real need, only watched how they did that for Fortnite and in some tutorials

#

But yeah I'll play a bit with this in the next days to see

#

I'm a bit curious about it

molten jewel
#

would recommend sharing skeletons

#

skeleton files are just bone names and hierarchy

#

describes nothing about transforms or poses

#

but having a different skeleton files means your anim bps are incompatible

#

but meshes can not include all the bones in the skeleton and work fine

#

Retargeting is still necessary between meshes of the same skeleton to get accurate movement but at least you don't have to have duplicates of event graph and anim bp

delicate junco
#

Noted, thanks a lot ! šŸ‘

cloud lodge
#

wonder how epic made Fornite use the same animations

#

for multiple skeletons

#

cause animations for me are stuck to the same skeleton

molten jewel
#

theres a video on it

#

control rig

cloud lodge
#

ill take a look thanks

scarlet spade
#

Just curious, but would be the smoothest way of implementing a roll after landing anim, where it doesn't look janky based on character rotation

half willow
#

hello , how i can reverse an animation ? (not in bp) , from endline to startline

delicate junco
#

@half willow Don't have UE4 rn but can't you put a negative play rate scale ?

#

Like -1.0

misty dagger
#

Can I create a ingame animation in blender and export in ue4?

#

like walking and jump animation?

#

sorry for ignorance😟

restive yew
#

That’s really the only way to make animations 😜

#

Of course there’s simulation input, pose to pose, and what not. Those are more so specialized techniques, not for overall pipeline

copper dawn
midnight thorn
#

I have a character push animation that causes glitching through the objects he is able to push. Any suggestions?

#

I tried expanding the capsule when he is in the push animation state, however it seems to enable him to utilize the physics from the capsule to push the object mush easier.

misty dagger
#

are there any good tutorials on rigging different meshes to an already existing skeleton? im using blender

tough oracle
#

@misty dagger the message would have to be the exact same size to fit the skeleton. You might have to rename the vertex groups if the phones have different names. But if they use the unreal skeleton you can delete the skeleton in unreal and replace it with the other skeleton you want to use. But please make a backup first I don't want to be responsible for you losing your project.

misty dagger
#

okay thanks, im fairly new so ima try to figure that out

misty dagger
#

is there a way to add a "direction" variable to my animation

#

i have speed but i want direction so my character will move in that direction when the different buttons are pressed cause they are stuck on the forward running animation when going backwards and left and right

#

i can GIF is anyone needs more insight on the prob

molten jewel
#

Do you have a blend space 1D?

#

Try a blend space 2D

misty dagger
#

i do i can try 2d

#

ahh that'd be it thanks

#

do u know what could be used instead of "calculate direction"

molten jewel
#

Think of it as velocity

#

Against the ground

#

In a heading

misty dagger
#

hmm

#

could i get the velocity and calc the direction instead of vector length?

#

whilst still have a vector length

glacial cedar
#

"Importing FBX from Unreal Engine to Blender results in distorted bones and wrong IK bones locations and orientation"

molten jewel
#

Take velocity and rotator of character. UnrotateVector and you have local velocity which is directional

#

That’s not a bug @glacial cedar

#

Blender only shows bones as y axis forward

#

Maya only shows bones as direction from parent

#

So axes in maya show just like skeleton in ue4 editor

#

Maya doesn’t require y forward, so they look all disoriented in blender because of the decisions on supporting some system that can be easily mirrored

#

Generally mannequin and other ART characters use X forward or -X forward depending on the side and arm or leg

#

Blender just cannot show it properly

#

It’s being imported correctly

misty dagger
#

i see what u mean now

#

but my character is stuck in idle rn

molten jewel
#

Connor you are side stepping?

misty dagger
#

whats that mean?

molten jewel
#

Strafing?

misty dagger
#

oh lol

#

ummm

#

no im just stuck in idle

molten jewel
#

No in the blend space

misty dagger
#

for my idle blend

#

no im running

molten jewel
#

UnrotateVector will give you a vector where .X is forward and backward speed .Y is right and left speed

#

You can have these two things drive your blend space instead of an angle

misty dagger
#

do u have an example?

molten jewel
#

Nah sleeping but see any blend space 2D for mannequin

#

Take that rotator and ā€œunrotateā€ the velocity

misty dagger
#

like this?

molten jewel
#

Now break the vector instead of using calculate direction

#

And pass X and Y to your blendspace 2D

misty dagger
#

where do i pass the X and Y to from here?

#

sorry if im asking a lot of questions

molten jewel
#

They need to get to the blendspace 2D node

#

So look at what is connected to that

misty dagger
#

mmm

#

so should i make a cast to blendspace ?

glacial cedar
#

@molten jewel Okay, thanks! So I should be able to import and export back and forth fine after I skin and fix weight paint, then? I am working on a reskin, and if I move a joint to better line up with my model, before I bind it, I will need to re-target the animations from the character who's skeleton I used?

#

*I move the joint before I parent/bind... but in the kit, I would re-target.

molten jewel
#

Yes. So long as you don’t reorient anything podcreature

glacial cedar
#

ok thanksšŸ‘

molten jewel
#

Autoweights wont work so well but painting should be fine

#

Connor look at anim graph

misty dagger
#

okay

#

i am

#

i have my statemachine

molten jewel
#

Where is your blendspace2D

misty dagger
#

in my idle

#

actually no in my walk/run state

molten jewel
#

What is connected to it?

#

Green lines

misty dagger
molten jewel
#

Enter run

misty dagger
glacial cedar
#

Yes those auto-weights look attrocious, I just let it generate them so I have a reference to clean up. My first go, I didn't re-target and I think that was my main problem for why it animated badly.

molten jewel
#

Yeah blender assumes they point y forward in auto weight

#

When they do not autoweights not so good

#

Connor make two vars

#

Forward, Right

misty dagger
#

2 more?

molten jewel
#

Floats

#

Yep

misty dagger
#

okay done

molten jewel
#

Put forward where direction is connected

#

And right where speed is

misty dagger
#

okay

molten jewel
#

Then go back to your break

#

And set forward to X

#

Right to Y

misty dagger
#

they replace direction and speed im guessing?

molten jewel
#

Yes

#

Idk if you use these elsewhere

misty dagger
molten jewel
#

Yep now connect the white lines

misty dagger
#

i use speed and direction in my animation

molten jewel
#

Your blend space 2d

misty dagger
#

mhm

#

should i change those to forward and right?

molten jewel
#

So you want to think of left side as moving left

#

Right side as moving right

misty dagger
#

right

molten jewel
#

Top as forward bottom backward

#

So speed is all directions

#

Center is slowest

misty dagger
#

yeah i didnt know why my char was going in solomo in the middle*

#

but now i do

#

lol

molten jewel
#

Solo?

misty dagger
#

its late lol

molten jewel
#

Change axes to -600 to +600

#

Both

misty dagger
#

okay

#

done

#

wiat

#

on vert too?

molten jewel
#

Yep

misty dagger
#

ok

#

done

#

why the hell is my char stuck in idle modeeeee

#

i did something i she wont move now

molten jewel
#

Lol

#

Did you delete speed from the graph?

#

How is it transitioning to run?

misty dagger
molten jewel
#

The arrow icon circles

misty dagger
#

lol Xd

molten jewel
#

The transitions are the white circles

#

With arrows pointing opposite directions

misty dagger
#

oooof

#

i knew that

#

idk why i posted the idle walk runnnn

#

yikes

#

it was speed before but i changed it and it still isnt working

molten jewel
#

Yea didn’t say to delete speed. Just to add the two new ones

misty dagger
#

ahh

molten jewel
#

Make speed back, set it to length 2D off the velocity vector

misty dagger
#

like this?

molten jewel
#

No

#

Vectorlength2D

#

VectorLengthSquared will get you power_of_two

#

You just want 2D length

misty dagger
#

i spawned a vector2dlength but i cant connect it with anyhting

#

should i just do normal vector length?

molten jewel
#

Yea

misty dagger
#

okay and that ran to speed?

molten jewel
#

Just on transition yea

#

Looks good

misty dagger
#

cools

molten jewel
#

Work?

misty dagger
#

nope

molten jewel
#

Lol

misty dagger
#

do i wanna change the forward to speed

molten jewel
#

Yes only that one

#

Well

#

In both transitions

misty dagger
#

okay did that

#

my char still jsut idleing

#

lol

#

such a hoeeee

#

is this how i want my walk/run state set up tho?

molten jewel
#

Yea

misty dagger
#

wonder why its not working

molten jewel
#

Set debug object while playing to see

misty dagger
#

shouldnt this be feeding in

#

not flat

molten jewel
#

At the top of window in toolbar set debug object while playing

#

Drop down

misty dagger
#

am i blind

molten jewel
#

AnimBP

misty dagger
#

its grayed out

#

okay i got it

#

its getting stuck on the idle

pure plover
#

Somebody working with Blender who can tell me why making a box selection wouldn't select all keys?

#

And also, when I move them, the animation doesn't change properly. It just keeps playing normally. Then I have some twitching in the end.

#

This is in a file with multiple animations. Must have something to do with that. In a new file it just works to drag the keys.

pure plover
#

Removing "Only Selected" from the Filters menu fixed it. Ofc one button, after searching for hours yday..

analog crystal
#

i think i have ran into an issue, I need my Ai character to play an animation when walking threw a box trigger. So far i am having no luck. Anyone got any pointers

delicate locust
#

Anyone got experience with Blender + root motion? I've never done it before. The selected bone in the video is the root, but it seems to not carry over to UE4, or I've done something wrong. Have 'Enabled root motion', and played it from a montage.

#

'Process root motion' under the Character->Animation preview is on

delicate junco
#

@delicate locust Can you verify your bone hierarchy in UE4 ?

#

Did you export with fbx ?

#

If so the Blender exporter adds your armature as a root bone by default, it may come from here, let me know if that's the case

delicate locust
#

@delicate junco I exported fbx. I seem to remember there's a trick to get Blender to skip adding the extra bone as the root, by naming the object Armature or Root or something

#

Mine is called 'rig', unfortunately. Renaming it and re-exporting causes it to be incompatible with the existing skeleton

delicate junco
#

Ok so do that :

restive yew
#

Verify in unreal

delicate locust
restive yew
#

Yep armature is the root instead of the root bone

delicate junco
#

Locate your Blender FBX exporter script ( something like addons\io_scene_fbx\export_fbx_bin.py ). Open it, comment out the code below. After that, your skeleton should export without the extra bone created. If root motion still won't work, it is likely one of the settings you set in the Unreal Editor.

#
      empty_key = data_empties[ob_obj]
      connections.append((b"OO", get_fbx_uuid_from_key(empty_key), ob_obj.fbx_uuid, None))```
#

To comment just put # in front of each line

delicate locust
#

@delicate junco But how do I handle the incompatibility with the old skeleton's structure?

delicate junco
#

what do you mean ? Editing the script will prevent the "rig" bone to be added as the root, which is your issue rn

#

You won't need to rename anything

delicate locust
#

I have the current skeletal mesh with 100+ animations that includes the 'rig' bone. I suppose if my newly imported animation is missing the 'rig' bone, it can't use the same skeleton

delicate junco
#

You could just export the root motion anim alone maybe

#

Push your anim to an NLA strip and then choose NLA strip only or something like this in the fbx export options

#

Do backups first ofc

delicate locust
#

Ah, I already do export single animations. But when I import the animation in UE4, I need to be able to use it in my existing animation blueprint. Is this where I need to retarget it to the old skeleton? Or the other way around?

delicate junco
#

I don't think you'll have to retarget at all tbh since all the bones will have their match already

#

I'm not 100% sure though lol so make sure to do some backups and then try to import stuff

delicate locust
#

Will do, thanks!

delicate locust
#

@delicate junco So I'm able to import a skeleton now without the Armature as the root (so now it's root -> ORG-hips -> etc)
First I've tried to import is as a totally new skeleton. First issue is that the exported animation for that skeleton is tiiiiny. If I press 'Enable Root Motion', it becomes the normal size, and plays the animation as if it was animated in-place. But previewing it in the animation blueprint and in the animation window only shows it animating in place, even with "Rootmotion from everything", and "Process Root motion" enabled in the preview.

The second thing I've tried is to just import it ontop of my existing skeleton, but as I feared:

delicate junco
#

@delicate locust Ok so for the scale issue try just before exporting to put blender units in meters with a scale of 0.01, it should prevent this issue.
If it's animated in place when you select enable root motion then it's working so that's good news ! I don't remember if the other preview windows show the root motion anim in place or not so better try in game directly

#

Also remember that if you have z axis movement for your root bone you need to put your character to flying mode iirc cause the z movement is driven by physics in walking mode

#

(you can do this a notify state maybe or a blueprint node)

#

Ah that sucks for the skeleton :(
Only way would be to reimport everything I guess if that's doable :/

delicate locust
#

Yeah it's set to flying mode, so that part is fine.
I'm more worried about what to do once I get it working on a new skeleton.
I'm not very savvy with retargeting, but the main problem isn't necessarily re-importing animations, but to keep my animation blueprint, which cannot be reparented to a different skeleton afaik

#

And I don't know any ways to copy all variables, functions, graphs etc over to a new one

#

I'll try setting the units though!

bronze osprey
#

you can retarget an anim bp

delicate junco
#

Ah cool, that could be an option then

#

@bronze osprey In his case he wants to retarget the animBP to a skeleton which would be exactly the same except for one bone, is that possible ?

bronze osprey
#

yea should be fine

delicate junco
#

Duplicate the animBP and try that then runetass, hopefully it'll work fine !

bronze osprey
#

R mouse and retarget, it wil take all the anims the anim bp uses aswell

#

you could even retarget a humanoid to horse animations

delicate locust
#

Woop, will give it a try once I verify that root motion works on the new one. Haven't fixed the scale issue yet, after setting the units to 0.01 before exporting only the animation. Migth still be my error somewhere. But I don't understand why it's different from the new skeletal mesh's scale, when they have the same skeleton

bronze osprey
#

in blender u basically wunna apply scale all the time everytime from the start

#

B4 u rig it

delicate locust
#

It has (1,1,1) scale for what it's worth, all the way

bronze osprey
#

when the mesh is 1.5x 1.2y and 1.4z and the skel is 1 1 1 it gives a lot of problems

delicate junco
#

Do you export both the mesh and the anim ?

bronze osprey
#

nah u can just export armature if u just need the anim

delicate locust
#

I've exported the skeletal mesh alone, and for animations I use a script that exports the current action with only the skeleton, not the mesh

delicate junco
#

Ok didn't remember that

delicate locust
#

Both the skeleton and mesh have uniform scale

delicate junco
#

Don't really have a clue then that's weird... Did you select both in object mode, CTRL + A, apply scale, then unit scene meters + factor 0.01 ?

#

Oooooh yeah

#

When importing

#

Put a scale factor of 100 šŸ˜…

delicate locust
#

Hmm good idea, let me try

delicate junco
#

Sorry forgot to mention that, been a long time I exported models and anims in Blender

#

Yeah that'll work for sure

#

That's my workflow and it works fine, just forgot that part lol

delicate locust
#

No probs of course ;D Hey btw, do you know a way to get the import dialog when importing animations you already have? Otherwise it's gonna auto-import

delicate junco
#

Unfrotunately i looked for it but never found the option, I have to delete the asset and reimport again everytime, it's annoying

bronze osprey
#

import in a new folder?

delicate junco
#

...

#

Ok I'm dumb

delicate locust
#

Yeah I always do these workarounds, but it's okay =(

delicate junco
#

But you'll still need to delete the asset afterwards, would be nice to have the import options again when using reimport from file

bronze osprey
#

for anims and meshes i like the quick reload

delicate locust
#

I also like the quick/auto reload, but when explicitly clicking reimport and selecting the file, I'd expect the import dialog =d

delicate junco
#

^

delicate locust
#

@delicate junco Yay, thanks, look at him go! The import scale trick worked nicely, and root motion works. Next I just gotta retarget the old blueprint. Will let you know how it goes afterwards (maybe tomorrow!)

delicate junco
#

Ah finally, really happy that everything worked ! I spent quite some time dealing with those root motion/scale issues with Blender myself so I know the feeling lol
Sure let me know ! I suggest you to write down all the workflow somewhere btw (script editing, scaling and such), you'll able to refer to it or help other people with similar issues then 😁

delicate locust
#

Good idea, it's easy to forget what the solution was!

untold citrus
short panther
#

I have a bone socket related question. my character looks like this when I run my game

#

nvm it just fixed itself thanks

misty dagger
short panther
#

I have a problem with playing anim montages in unreal. the play anim montage node doesnt seem to work im currently using 4.22

prime hemlock
#

Hey guys!
I exported PhysicsAsset file to *.COPY file format.
How can I import this file to editor?

misty dagger
#

if anyone has some free time and wants to call me up and explain creating animation from blender so they are FBX and ready for unreal, id appreciate it, u dont need to be a pro by no means just a helping hand

#

all the tuts ive seen online are outdated and dont really explain a lot

#

oh hey @molten jewel i got it working btw

#

yesterday

molten jewel
#

@prime hemlock you don’t iirc,

#

Copy is either the clipboard format or just this old format nothing uses anymore

#

Nice Connor

#

Most you can do with phat is copy and paste things afaik. No transferable format starter

#

Nothing fancy to get anims out of blender. The bone orients being maya style is painful to work with if your using mannequin. Nothings really changed tut wise though

misty dagger
#

gotcha, when i import the mannequin the bones come up and it looks really weird and demented

#

ill just wait for someone to come around and take like 10 mins to explain to me fingers crossed

molten jewel
#

Yea that’s correct

misty dagger
#

why does it look so demented xD

molten jewel
#

Maya draws bones differently

misty dagger
#

oh

#

was it made in maya

#

i see now

molten jewel
#

Maya and ue4 draw bones as if they are a line to the parent

#

Blender draws bones as Y axis forward

misty dagger
#

gotcha

molten jewel
#

So just have to work with how it is

#

If you modify the bones, animations won’t work

misty dagger
#

so how do i make them useable so i can make animations?

molten jewel
#

You either: Don’t or you make another armature and set up lots of bone constraints to bind the maya one in place

misty dagger
#

so would a better bet just to kinda play with it in its deformed way like this?

molten jewel
#

UpperArm.L

UE4.UpperArm.L (child)

misty dagger
#

they are all combine in this mannequin i have

molten jewel
#

Then constrain real armature to child

misty dagger
#

in blender

#

should i separate by loosen ?

molten jewel
#

Nah like I said you can’t touch the bone armature. Only thing you can do is made a duplicate of it, duplicate all bones again inside the duplicate armature, parent second version of each bone to its first version then hide the second versions and manipulate the first bones in the duplicate to point to the next bone in the sequence

#

The you set up constraints to copy bones on the actual armature transforms to those hidden second copies

misty dagger
#

so kinda like making a 2nd template that would make blender be easier to deal with*

molten jewel
#

May have an easier time looking around on google for a mannequin rig that already exists. Do think there are some out there, but you’d need to make sure it exports right first

#

Yea if your planning on using ik in blender

#

Y forward is important

#

Goal is to not change the bones in the imported ones

#

But bind them to the template

#

With bone constraints

misty dagger
#

im pretty lost but i know a lil more now

#

XD

glacial cedar
#

So, I exported a dinosaur character, skeletal mesh as FBX from the Ark Dev Kit and didn't really pay any attention to the settings at the time as I am pretty new to this. I imported it into Blender and exported an obj to ZBrush and proceeded to recreate it, and UV there. I then Baked normals in Substance Painter and went back to Blender and skinned it to the skeleton of the original dinosaur FBX import from the kit. I've troubleshot some issues but I admit, I'm just not sure where to go to fix what when it comes to scaling. Because my computer doesn't like the kit, I had a friend export an animation for me and when it imports, everything is visibly the same size as my model and the version of the rig I have skinned to it. However, when I pull up the animation and play it, my model instantly shrinks. The animation actuallyĀ looks pretty good, and seems to have worked in every other aspect, but, it is almost microscopic so hard to be sure. lol... I can see the scale is different from my model when I look at the dope sheet. The scale of mine changes as soon as I hit play from 1.00 to 0.01... A friend said this is a root scaling issue. Is it? Also, when I scaled the rig with the animation that I imported, to be the same number as my main model and rig, it got huge. How can the imorted animation skeleton be so much smaller than the other, even though they display the same size? Will attach a couple of screenshots.

#

hopefully it's a clear simple solution but I just need to know where to navigate and what to change, wondering how far back in my pipeline I have to go to make it work

restive yew
#

Was the scene set to cm before starting on this

scarlet spade
#

Anyone know the easiest way to implement random animations into the anim state machine?

#

So like when my character performs an action, it can play 1 of 3 anims for instance randomly

delicate junco
#

Then in details put the sequences you want to choose from

#

Along with a bunch of other parameters like probability etc

scarlet spade
#

Oh shit cheers! @delicate junco

warm zinc
#

Good morning

#

people I want to separate all my animations for the climbing system to be reusable. Like if I want to use them in another project to easily migrate that

#

is there a way to do that with anim state machine

lilac beacon
#

All, having some weird issues, and of course using some non-standard tools/pipeline. Wondering if anyone has any ideas. Essentially for reasons outside my control (decisions made before I was a part of this project) we are using Reallusion iClone 7 for character animations. All of our animations are made in iClone and all of them use the iClone skeleton. Early in the project a consultant from Reallusion was helping to provide models, however he has moved to a different position and is no longer able to do that. This has forced us to create our own characters with Character Creator 3, which work fine out of the box. However we have a very limited set of clothing available to us, and they don't fit the theme or feel of our game. I thought I would be able to take a CC3 character, suck it into blender, modify clothing, and then suck that in UE4 with no issues. When I do this I get funky results in the arms:

#

This is the same model exported from CC3 without blender in the middle:

#

If anybody has any ideas about what might be happening I would really appreciate it

molten jewel
#

@warm zinc not really. one of my least favorite things with animation blueprints is the inability to share things between skeletons

#

i feel like there needs to be a psa about skeletons though

#

skeletons files are just names and parenting hierarchy.

#

so really you should only have one skeleton file for every biped in your game

#

meshes hold the ref pose, and which bones of the skelton are there or not. a mesh doesn't have to have every bone in the skeleton file to be compatible.

warm zinc
#

for real!

bronze sierra
#

hello, any idea why making an aim offset the left hand does a curve when going up on the pitch?

#

i'm using the animation starter pack

#

and the poses seem good

#

but the interpolation from the center pose to the up pose

#

does that curve

honest bobcat
#

Any animator in here who might want to barter his skills for a quick animation in exchange for some programming? (feel free to dm)

shut path
#

Hey all happy holidays! I had a question regarding Blend Spaces. I currently have some locomotion animations for walking and running. When I use W+A to move diagonal the animations of walk forward and strafe left looks smooth. But when doing it with W+D the strafe right animation jitters and doesn't complete. The strafe right and left animations are exactly the same the only difference is the direction. Any tips on how to solve this?
If more info is needed let me know!

honest bobcat
#

hi all - how can I play a montage and do an action when a notify is triggered? Is it still only triggered in the animation blueprint or is there another way?

restive yew
#

For montages, it can be and usually is triggered in the character bp. It’ll still need to be calculated in the animation bp though

honest bobcat
#

I actually read part of it, couldn't find the part about character bp. It's still not what I'm looking for though; I'll just create a derived class of anim instance and handle it in cpp then.

icy raft
#

Anyone know if I can treat bones as sockets?

#

Meaning anywhere a "socket" is required, I can put a bone and it'll work?

novel basalt
#

Might as well put this in the correct channel.

So, animations. if I disable root motion the character doesn't move (obviously) but if I enable it, after the animation played my camera/character movement/pawn is in the wrong place and seems to just rubber band all over the place. Can I set up animations so that the final position of the animation becomes the point the character then moves from?

tawdry wadi
#

Guys my walkinc backward animation not working correctly how can i fix it

#

-180 and 180 values are my backward values

#

but anim not working corretly when i walk back

novel basalt
tawdry wadi
#

i already tried but didnt work

edgy token
#

how can you import a custom 2d animation and put it in a widget?

lethal pollen
#

When I use Play slot as anim montage it breaks if i set it to loop as -1

#

is there a workaround for this?

delicate junco
#

@novel basalt If you've set root motion well then your character should start his next animation from his end position

#

There's something wrong with your setup

compact lake
#

Is it possible to make transition duration in locomotion as a variable?

opaque stirrup
#

So I semi-successfully have implemented a basic copy pose from mesh modular character, but one segment is giving me trouble, and I checked my skeleton weights, and it deforms fine without seams in blender. I can't figure out why I'm having issues

fair narwhal
#

anyone around that can help a complete noob with animation retargeting?

#

I am trying to use a crouch anim from an MP asset pack with a model from a different asset pack... the retarget worked, but the crouch animation pops the character up about 3 feet off the ground... I tried moving the root bone down so that all anims line up to the same ground but that didn't help... not sure what I'm doing wrong here and the more I poke around the more I'm overwhelmed with a bunch of words I don't understand šŸ™‚

opaque stirrup
#

gooner is there a IK blueprint?

fair narwhal
#

no idea

#

I have an animBP and 2 blendspace 2d assets set up

#

super simple right now

#

@opaque stirrup What is an IK blueprint? I don't see that anywhere

opaque stirrup
#

Then I guess not?

#

how was your root bone retargeted?

#

the extra settings?

fair narwhal
#

not sure what you mean... super noob here šŸ™‚ I right clicked on the animation and chose to retarget... everything except choosing the new skeleton was default settings in that window

ripe yew
#

What can cause my editor crash when I try to retarget a specific animation?

molten jewel
#

Korvax

#

This happens to me too

#

Something introduced in 4.23 I think. Hunch is it has to do with additive animations that try to also retarget the base

ripe yew
#

Is there workaround or something Epic is aware of?

icy marsh
#

Hi! do you know how the blending in a blending space is described? it doesn't seem to be just an average between the blended poses, it seems to be more intelligent than that.

misty dagger
#

Hi guys, I have a few idle animations that I want to put on my character's anim_bp, but I don't know how to do. I want the character to randomly choose an animation each time one is finished

misty dagger
#

I've used UE4 retarget function to retarget the animations in third person shooter BP to the Daz skeleton

#

This has happened to the fingers

#

helpp

young bluff
#

Ok

#

so i want to animate something

#

ill grab an example

#

the doors on this video

#

how would i do this but also be able to interact to open it

#

with bps

restive yew
#

Use timeline node

undone river
#

hey guys so i set up a blend space and when i walk straight my legs follow the direction of the body but when i rotate in any direction the legs stay in that pose and when im walking straight my chracters legs are still strafing as if i was walking left or right how can i fix this

misty dagger
#

Is there a way to rig and animate a cartoon character who has rubberhose bends for the arms like the Bendy bones from Blender?

molten jewel
#

on pc the bone limit is around 250

#

on some mobile platforms its far lower

misty dagger
#

Notice the stretching

restive yew
#

That’s just a normal unparented (vector) rig

misty dagger
#

Yeah. This kind of parenting is by offset

#

But still, I'm asking if there's an alternative to do these stuff like this. From Blender to Unreal.

compact lake
#

just need more bones

#

vertices of skinned mesh can support no more than 4 bones, to make it look like a hose just use a chain of bones like for a snake

molten jewel
#

armature -> splines constrained (anchored) to it -> armature constrained to spines -> export

#

bendy bones are a blender specific thing afaik

misty dagger
#

the hand goes way off to the right make it look off, how can i remedy this?

slate olive
#

So I’ve been thinking about multiple ways I can cut back on doing custom animations. Is it possible for me to repurpose animations from one creature and give them to another, like for example the running animation for this horse to be used with this dinosaur?

molten jewel
#

@misty dagger how many frames is the look down animation?

#

@slate olive possible? Probably with ik, not sure it will look good

misty dagger
#

@molten jewel its 5 frames, but that doesn't really matter as i export them as single frames to turn them into an aim offset. this is just what blender does from center to down and what unreal does.

delicate locust
#

By the way, does anyone know if it's possible to play an entire root motion animation, and then stop applying root motion after a certain point? I'd like to return movement control back to the user without waiting for the animation to blend out completely first

delicate junco
#

Oh looking nice ! Great job so far ! 😁

#

i did something similar : I placed a notify on the anim at the point when I want the player to be able to have control back and then I basically check if this notify has been hit + if the character speed is > 0
if so I make the transition to the next state. I do an OR boolean operation with the "normal" transition so that if he doesn't move during the whole anim it makes the transition to the next state as expected

delicate locust
#

@delicate junco Thanks ^^
Yeah, what I've done for now is to check if the character is moving at a certain point with a notify, and then simply stop the montage with a short blend time. It's fine-ish!

molten jewel
#

@misty dagger it does matter. Linear interpolation between one frame forward and one frame down will do what you see there. If your using ik in blender this is the reason it’s not doing the same thing

#

So you’d need to use ik similarly

soft trench
#

When I create an anim montage from a 240 fps animation, the original animation has 104 frames, but the montage only has 12. Anyone know why?

dawn salmon
#

hey guys, I've done some pose rotation inside an animation (directly in UE4), yet I can't seem to make the new pose stick. the pose is unrelated to the animation itself

short panther
#

hi guys im having a problem playing anim montages ive tried play anim montage and montage play nodes but I still cant play anim montages can anyone please help me on this?

molten jewel
#

@dawn salmon are you giving it a new name?

#

i kinda recall having issues updating poses in pose assets

#

i'm assuming your talking of pose assets yes?

molten jewel
#

what i would do is make a new pose name then delete the old and rename the new to the old name

opaque stirrup
#

Anyone here have a workflow for blender 2.8 to import a UE4 animation back into blender? When I import a FBX rig the bones are all sideways and everything is weird.

opaque stirrup
#

lol

molten jewel
#

its just how blender is, it only renders bones down y

opaque stirrup
#

I'm not your knight in shining armor.

molten jewel
#

maya renders bones from their parent as a line, just like ue4

opaque stirrup
#

Well my goal is to take an existing animation in UE4 and tweak it to match a custom character in the cases when even a retargeted animation are not matching right.

#

So I don't need to remake the whole thing.

molten jewel
#

you just have to work with the bones being oriented as they are or have some means of restoring them back to how they were before you export

#

a control armature is one way to do it

#

have not tried this

#

dunno if its any good

opaque stirrup
#

I was just curious if someone knew of a blender script to flip the bone postion.

#

Is there a way in the UE4 editor to tweak bone postions of an animation keyframes?

molten jewel
#

i don't think your listening thouhg lol

opaque stirrup
#

yeah I got that plugin,

molten jewel
#

you can import the animations into blender

#

animate them

opaque stirrup
#

Yeah I know

molten jewel
#

and export them

opaque stirrup
#

but the bones are all messed up

molten jewel
#

what i'm saying is no they are not

opaque stirrup
#

Okay

molten jewel
#

when you export they work

opaque stirrup
#

so you're saying I need to make a control rig

#

and hide the bones?

molten jewel
#

you could do that, or you could just use the bones that look badly oriented

opaque stirrup
#

Is there a way to tweak animations in UE4 editor?

molten jewel
#

believe so, but not familiar with it

opaque stirrup
#

Well if the armature is correct, I could just bind the mr mannequin control rig to it and use that

#

I'll give it a shot.

molten jewel
#

this is what i do

#

if you dupe the armature you import and then dupe the bones in it

#

parent each bone to its original

opaque stirrup
#

let me try that

molten jewel
#

then you can do whatever you want and just use a world transform constraint between the two

#

you just make sure to select the root armature when you export and hit export selected only. blender bakes down the constraints for you

opaque stirrup
#

Not sure I follow you

molten jewel
#

i'll make a short video quickly

opaque stirrup
#

Thanks.

#

I'm using AutoRig Pro, but it would be helpful to be able to reimport the baked down FBX armature since then I could delete superfluous bones

#

I like autorig pro but it's a bit of a black box in some regards

molten jewel
opaque stirrup
#

Thanks It's past my bedtime but i'll be sure to check it out tomorrow.

#

Really appreciate the help, as much as i like autorig pro it'll be hand to be able to tweak the final export manually.

molten jewel
#

yeah, not much is explained haha but you'll see what im doing

#

take care

signal otter
#

anyone know why my animations (i do some special stuff like warping) look really choppy on remote clients ?

molten jewel
#

Would need a visual

signal otter
#

ah i think it might be off of a calc based off an enum type that cant replicate

molten jewel
#

Coo

signal otter
#

ah nope

#

one sec

#

i also did a set min tick of 33 on the base class

pure vault
#

I have a model with animations I've made for it. I've been able to import the model and the animations, but I can't seem to get the animations to go through in Unreal

molten jewel
#

Dang ck

#

Can you use the anim bp debug thing on the one character?

#

Use pose watches to try and find where in the anim graph things go wrong

signal otter
#

ah

#

how do i select the other character for debugging? ive had a hard time with debugging anim bps

molten jewel
#

There is a debug drop down menu while in pie

#

It should list all pawns using the specific animbp

#

You cycle through until you find the one that correlates

#

(Moving)

#

You have an animation blueprint @pure vault ?

pure vault
#

no

#

Just what I exported from blender to unreal

molten jewel
#

Would recommend looking into animation blueprint tutorials

#

It is how you apply animations normally

#

You can however choose to lick a specific clip to play on the skeletal mesh component of your actor but you don’t want this

pure vault
#

ok

molten jewel
#

The blueprint is like the mixer

pure vault
#

so I need a blueprint?

molten jewel
#

You’ll get a hang of it

pure vault
#

@molten jewel

thorny dust
molten jewel
thorny dust
#

Maybe look at @molten jewel 's

#

if you're not too familiar with unreal the documentation can be kinda confusing

molten jewel
#

Sit through a video and you’ll understand

signal otter
#

o @molten jewel i have never been able to get a breakpoint to work in anim blueprints, they dont seem to trigger for me

molten jewel
#

Pose watch?

#

You need to bring up the viewport

#

It shows you skeletons

#

Not breakpoints

#

Breakpoints would be in event graph on the bp

signal otter
#

ah

molten jewel
#

So you can set a red skeleton to before ik

#

And a yellow one after ik

#

And observe what’s going on to reach final pose

#

You’d want to find where things get sketch

signal otter
#

is there a way to select the other client actor

#

with pose watch i can toggle the red skeleton in the preview

molten jewel
#

Top of window

#

Combo drop down

#

You may need to click a ..> button as it won’t fit on 1080p

#

But it’ll say debug component or actor or something and should show all of the replicated things I think

#

The. That shows up in the viewport

#

Of animbp editor

signal otter
#

yep fouind it

#

thanks this is helpful

#

and yeah i see the jitter

#

is there a way to pause the game in the middle of a jitter

molten jewel
#

Not really besides pausing pie

#

Pause button on keyboard

signal otter
#

ah thanks a lot

#

all of this really helps

#

this gif has a lot of artifacts but some computed variables have some erratic behavior

#

client 1 and the server variable sets should be equal

#

but they are not

molten jewel
#

Interpolation between the two delta angles maybe a bit hairy

signal otter
#

yeah i think whats happening is

molten jewel
#

Would seem server is in radians

signal otter
#

i think server is in degrees

molten jewel
#

Never mind yeah

#

It’s just completely unaligned lol

signal otter
#

yeah so when rendering another player some variable somewhere in computing the derived yaws are behaving totally erratic

molten jewel
#

FYI the between angles stuff in fmath does not repeat

#

That’s something that got me before if your dealing with values larger than 360 but those angles seem okay in value unless your double calling it

signal otter
#

should be -180 to 180

#

what do you mean by double calling ?

molten jewel
#

If you pass 720 in it will return 360

#

The check is only if >180 subtract 360

#

It got me a few times dealing with angular velocity

signal otter
#

ah hmm

#

like the numbers in the server and client should be approximately equal

#

hmm

molten jewel
#

That’s a cool way to print numbers lol

signal otter
#

UKismetMathLibrary::NormalizedDeltaRotator(GetVelocity().Rotation(), GetActorRotation());

#

i think that relative rotation calc might be messing up?

#

just on the replicated client

molten jewel
#

Do not like vel to rotation like that

#

A disturbance in the velocity with slow movement would be all jittery and unsure what standing still gives you

signal otter
#

hmm

molten jewel
#

You’d be better just networking velocity

signal otter
#

maybe replicate the velocity vector ?

molten jewel
#

Yes

signal otter
#

yeah that makes sense

#

thanks for all the help ill give that a shot

signal otter
#

is it a good practice to also replicate current acceleration or leave that off?

signal otter
#

ohhh so the problem was that i was interping the rotation

molten jewel
#

It’s something you won’t be able to do much with

signal otter
#

and setting a new rotation in a child class

#

Role >= ROLE_AutonomousProxy

#

over that block fixed it

#

doh šŸ¤¦ā€ā™‚ļø

molten jewel
#

Cool stuff. Animation channel helps networking

dawn salmon
#

@molten jewel I wasn't using the controls to add keys, which works fine if you pose stuff and export as poses, but as soon as you add animations and frames it's not possible to do it seems

honest bobcat
#

how can I get the total elapsed time in a notify anim state OnTick ?

young pine
#

I've rigged in Blender and also created 3 animations for a FPS game. Each animation works perfectly separately but when I'm adding this 3 animations in UE4 to a Blendspace, the transition from one animation to other (From idle to walking and to running) the mesh is deformed. I've done something wrong in Blender? ( I'm a begginer ) Because it looks like a bone problem.

young pine
#

Thank you! I'll start reading

soft trench
#

Man what's the point of using animation trails if montages destroy your frames and half the time don't produce smooth trails?

simple star
#

I'm having some issues with my character IK visuals, when on an uphill surface the heels look unnatural .... does anyone know if the problem can be ameliorated while still using only the bones of the ue4 guy ? please @ me if you know anything about this

molten jewel
#

are montages really framed @soft trench ?

#

I kinda thought they were more or less like video editing or nla in blender

#

@simple star you have ball_l and ball_r bones?

#

your weights are too strong on the ankles too,

#

if your using epic rig, ankles should be fully on the twist bone

#

er not fully, but the back but it looks like the skinning on the foot goes too high regardless. you'd still want ball_l/ball_r to do some bending at the ball of the feet at such aggressive angles no one would stand like this

#

its possble your foot bone pivot is too high too. it could be lots of things really. but would consider the amount of times you've stood like that up a 45 degree angle

#

twist bones alleviate these kinds of joints by facing or counter facing the next or parent bone.

#

thigh twist undoes the roll of its parent (thigh), to keep the pelvis deformations consistent, calf twist rotates towards the roll of the foot bone.

signal otter
#

oh and @molten jewel -- instead of replicating the velocity variable im using these settings now ```cpp
ReplicatedMovement.RotationQuantizationLevel = ERotatorQuantization::ShortComponents;
ReplicatedMovement.VelocityQuantizationLevel = EVectorQuantization::RoundTwoDecimals;
ReplicatedMovement.LocationQuantizationLevel = EVectorQuantization::RoundTwoDecimals;

#

in the character constructor (in case anyone else has jumpy replicated animations)

molten jewel
#

still don't think you should really use velocity to rotator thogh but cool :D

noble pelican
#

how do you handle entering, exiting and then re-entering a state while it's still blending? "always reset on entry" causes a pretty noticeable pop

molten jewel
#

perhaps you could use a cached pose sleg

#

zoom all the way out of your graph

#

add a cached pose

#

put in the stuff from teh state in question

#

and in the state 'use cached pose' and connect

#

don't know if this will do you any good but might stop the thing from re-initing

#

otherwise you'd have to have some sort of thing to not let it transition until so much of the anim has played

#

i personally hate state machines

noble pelican
#

I get the results I want from using duplicate states and switching between them using a boolean but it seems like a convoluted solution, I don't know how it's usually done in games

molten jewel
#

4.24 adds a new transition mode

#

that would help you here

#

but are you purposely trying to restart the animation smoothly or something?

#

like what are the animations doing

#

(don't jump to 4.24 yet though, just mentioning it because it sounds relevant)

noble pelican
#

turning for example, if you're in the middle of 180 degree turn and want to turn the other direction

molten jewel
#

so galloping more or less?

#

Sync markers will help you maybe

#

sync markers and sync groups

noble pelican
#

well the problem is the animation can't blend into itself, it either starts up where it left off when you exited the state or it resets and pops

#

I mean if you re-enter the state before the blend duration is over

molten jewel
#

yes sync markers may help you here

#

perhaps editing the duration of the transition would too

#

make it a tad slower to exit out of

#

if it is unmaintable, you could always switch your looping animation to an evaluation node

#

by right clicking on it

#

then you just need to calculate time yourself, in event graph

soft trench
molten jewel
#

@soft trench open the console

#

type

#

slomo 0.1

#

while playing

#

and swing a bit

#

in the video it just looks like normal frame rate studder

#

playing at 0.1 speed should give you an idea if its actually the animation timing or not

soft trench
#

It seems to work always with slow motion enabled. But it's weird, because even in standalone with consistent 100+fps it's inconsistent

molten jewel
#

very possible the logic you have to fire off the montage could possibly be taking extra time

#

making that first frame delay large

soft trench
#

I tested it on a slower moving animation and it works much better

molten jewel
#

i've not really dealt with montage but if a lot is going on, or if your syncronously loading things with that button rpress unknowingly its possible that one frame takes slightly longer and with the faster animation it just drastically is more visible

#

like i said thought it just looks like microstudder

#

something in your game taking longer than it should

#

could be wrong again, i've not dealt with montage but would recommend looking into using unreal insights or something

soft trench
#

I'm pretty sure with faster animations it's just not possible to get consistent results. I've found other people having this issue, never seemed to get resolved

molten jewel
#

for fun, just make the animation trigger every frame

#

and see what your frame rate is like

#

theres a lot more going on than just animation there

#

if your getting 100fps and then drop to one frame that is 30 fps because of the effects there being spawned its pretty much going to look like this with that jump in the swoosh

#

so might just be that you have to look into pooling effects better or authoring your effects in a way that they aren't dependent on the animation

#

if you look at that youtube video frame by frame. pay attention to the sword position too in each frame. the frame rate of the montage shouldn't matter really but that effect will only use positions that were actually used in the animation at the times it needs

#

it wont source data from frames between the ones it displays

obsidian mountain
#

Hello. Is there a way to properly import FBX animation with 10 fps rate? It automatically converts to 30 and if I try touching "Custom sample rate" setting in FBX import it just outright doesn't import

molten jewel
#

inside import settings after its imported

#

if you set Custom Sample Rate to 10, and then press reimport animation button does it not work?

obsidian mountain
#

For some reason it breaks

molten jewel
#

have an error?

obsidian mountain
#

I'm importing 2 skeletons and if I set the sample rate to 10 they try to merge for some reason

molten jewel
#

you are importing first, then changing this setting and pressing the reimport animation button?

obsidian mountain
#

Nevermind, now it worked...

molten jewel
#

šŸ‘

opaque stirrup
#

im sorry @molten jewel I couldn't follow what you did, when I duplicated the bones it didn't look like it did on yours, and the transform bit didn't look like yours either 😭

molten jewel
#

Yea you duplicate the bones and then parent each with keep offset to the original.

#

once they are all parented to their original bones in the duplicate armature, select the duplicates and set them to a hidden bone layer

#

at that point you can reorient the parents of them to whatever direction you feel like

#

that make sense @opaque stirrup ?

opaque stirrup
#

I'll have to try to see if I can get it figured out.

#

So I got to manually parent ALL the bones in the armature?

molten jewel
#

head.001 parents to head

#

and every bone there after like that

#

then you can reorient the parent of the target bones in bone edit

#

and the orientation of the target bones matches that of ue4, which are copied by transform constraint

#
import bpy

# ENTER EDIT MODE OF THE DUPLICATED ARMATURE FIRST!
# THEN DUPLICATE ALL BONES
# THEN RUN THIS SCRIPT

for bone in bpy.context.active_object.data.edit_bones:
    if bone.name.endswith('.001'):
        continue
    dupe = bpy.context.active_object.data.edit_bones.get(bone.name + '.001')
    if not dupe:
        continue
    
    dupe.parent = bone
    dupe.select = False
    dupe.layers[1] = True
    dupe.layers[0] = False``` @opaque stirrup
opaque stirrup
#

Oh, thanks!

molten jewel
#

it does the parenting and hiding

opaque stirrup
#

I can't handle blender scripting so My thanks!

molten jewel
#

@opaque stirrup ```py
import bpy

ENTER POSE MODE OF THE ACTUAL MESH ARMATURE (not the control)

THEN RUN THIS SCRIPT AFTER CONFIGURING THE BELOW LINE TO MATCH THE NAMES OF THE CONTROL ARMATURE

control_armature = 'root.001'

control_armature = bpy.data.objects[control_armature]
root_armature = bpy.context.active_object

kill all constraints

for bone in root_armature.pose.bones:
while 0 != len(bone.constraints):
bone.constraints.remove(bone.constraints[-1])

make all constraints

for bone in root_armature.pose.bones:
constraint = bone.constraints.new('COPY_TRANSFORMS')
constraint.target = control_armature
constraint.subtarget = bone.name + '.001'
constraint.name = 'ue4 constraint'```

#

for making the constraints

#

name*

signal otter
#

is there a decent technique for making the twist a bit less extreme on a right to left attack animation when strafing right

molten jewel
#

side stepping lol

#

if your using ik for everything, you could use FABRIK

#

up the spine

#

and put some twist in the pelvis

#

writing animation nodes is really easy though if you did want to try and corrrect it that way

signal otter
#

im using layered blend per bone - 4 at pelvis and -1 at thighs

#

ah hmm

#

yeah i wouldnt mind diving into that i guess

#

havent done it before

#

and yeah the IK should be working

molten jewel
#

FAnimNode_RotateRootBone is a easy gateway node

#

you need an editor dll though if you don't have one

signal otter
#

is that something from rebuilding from source?

molten jewel
#

no

#

you just make another module in your source directory

#

hm

#

yea i think that you'd want it, not sure its required though

#

it consists of the struct for the node itself and then an editor type for the anim graph

signal otter
molten jewel
#

yep the code for that one is very easy

#

the entire anim graph

#

it executees from the sink node at the right back to the furthest left depending on blending

#

it literally goes that deep in call stack, its easy to use

signal otter
#

hmm

#

can i just use the rotate root bone with a conditional yaw

#

i can definitely build my own node (these instructions are pretty clear) but why is that necessary

molten jewel
#

so the anim graph executes one character per thread

#

it means if you wanted to alter the twist based on the direction the head was looking, like that harsh 170 degree angle

#

to make it conditional based on that, you'd need to do it in node space land

#

because the event graph executes before any animation is updated

#

and if you have a if statement or anything complicated in the animgraph you loose your lightning bolt icon and that means your graph runs on the gamethread instead of the 1 character per thread model (it will kill performance quickly)

signal otter
#

in the event graph i have strafe direction and aim pitch/yaw

#

so i think i could create another yaw for that

molten jewel
#

the thought was you'd like to power the twist delta to pelvis by the animation itself, if you look at the attack animation i mean, it would look more natural if it only corrected when it was at the end of the swing (or at least more correction there than at the front of it)

signal otter
#

like if the character is strafing right do a clamped rotation of like 1/3 the twist to the right

#

ah

#

i see what youre saying

#

yeah that would look better

molten jewel
#

you couldn't do that sort of thing in event graph.

#

but you could do something based on teh variables like your saying there

#

animnode would be worth it imo if you really don't want side stepping

signal otter
#

let me try to hack something together real quick w/o making a new anim node and ill post a gif to see if its good enough

#

and on the other attack (left to right), it looks a bit stretched at the beginning of the animation but its hard to see unless u slow the animation way down

#

other idea would be to add this info to a curve that would have counter-rotation variables when the character is at extremes

#

then feed those values into the rotation yaw

molten jewel
#

Could stuff a float curve into your attack animation and use it as an alpha

leaden wasp
#

What is an animinstance used for?

alpine flume
#

Has anybody ever seen this issue before? It occurred when I started dragging one of my anim notify states. I noticed that in the first drag, the marker didn't move, and i had to press the second time.

delicate locust
#

@alpine flume Have noticed similar errors in the editor before, and have had to close and reopen

alpine flume
#

@delicate locust
Thanks for the reply! Hmm, we ended up temporarily "solving" it by taking the problematic anim notify state, and instead of dragging the sides, we just moved it around a bit (so the length stayed the same), and then saved...
I'm definitely worried about it though haha

delicate locust
#

Hahah, it's probably fine

scarlet spade
#

Yo can someone help me out with the random sequence player? got no idea how to use it

icy cove
#

Guys, is it possible to somehow override animations in Random Sequence Player, in a child AnimationBlueprint?
I can override simple animations but don't see how to do this for the Random Sequence...

molten jewel
#

@leaden wasp it’s the variables you make in animbp

#

And data of the animgraph

untold marlin
#

how can you preview a blendspace live?

#

while playing in editor

#

so i want to play with a character, and see what point he is in the blendspace

#

random sequence player does exactly what it says

#

you put in some animations into it and it will play them randomly when the node is called

#

so if you have like 4 punch animations, and you want them to be random

#

you would put them there

#

@icy cove you could make your own random sequence player, with random integers to control which animation will play using "blend poses by int"

#

than you can override that in the child bp's

icy cove
#

@untold marlin thank you! yes, there are several ways to implement it by myself, just was wondering if there is a "default" way to do this

novel viper
#

Is there a way to replace the skeleton of an existing animation blueprint with a completely new skeleton? I've worked on a very advanced animation blueprint with lots and lots of code inside. Now the skeleton I created this animation blueprint with was a bit of a blockout / test skeleton. I now created a new one, but is there a way I can still use my animation blueprint with this new skeleton? Or do I have to completely recreate the entire animation blueprint?

#

I'm also redoing all animations. So if the animations of the previous skeleton are broken, that's ok because I will replace them all anyway

#

I just don't want to remake the entire blueprint

untold marlin
novel viper
#

Aha, intersting. But how about the places in my other blueprint code which references the previous animation blueprint?

#

I'd still have to replace those references manually?

#

Or is there a way to fix that as well?

untold marlin
#

why not instead, retarget the new sk meshes, to the old skeleton

#

that way you can still use everything you made

#

maybe you could retarget that old skeleton to the new one as well, although if they have different bone setups

#

it might be fairlydifficult

novel viper
#

I've tried that, but it seemed very messy to me. Main reason is because the old skeleton is pretty messy and missing a few important bones which the new one has

untold marlin
#

ah yeah, im not sure to be honest, if you do make/copy the new anim bp you'd definitely have to change the bp references

novel viper
#

So I think it's better to get a clean skeleton, but replacing the animation blueprint references shouldn't be THAT much work, like an hour or so and most will be replaced. It's mainly important that I can save the time to redo the entire animation blueprint, because it has a lot of code šŸ˜›

untold marlin
#

you can also

#

copy paste

#

nodes in between bp's

#

even cross project

novel viper
#

hmm yeah, but it's not just the graph, there are a lot of variables and a complex animation graph

untold marlin
#

maybe you could duplicate it, and then set the parent of that anim bp as the original one and the references should still work, never done it personally

novel viper
#

these are the only blueprints I have to replace the references in

untold marlin
#

but in theory

novel viper
#

so it's fine I guess

untold marlin
#

should worklol

novel viper
#

hmm yeah maybe that works

#

that's actually a sneaky idea haha

#

but in theory i don't see how it shouldn't work šŸ˜›

untold marlin
#

yup hehe, thats me trying to get around doing work

novel viper
#

me too šŸ˜‚

#

as long as it works I'm happy haha

untold marlin
#

yeah keep me posted please

molten jewel
#

@novel viper

#

why do you need separate skeletons?

#

you might be under the wrong impression

#

skeleton files are just names and hierarchy

#

i mention it because if you don't have separate skeletons then you don't have to have multiple copies of the anim bp.

#

it does not save you from retargeting things, but it does mean you don't have multiple graphs

honest bobcat
#

I have a skeletom (from mixamo) and 2 characters. The first one is great and all, and I just tried to import the 2nd one and it seems all messed up, but it looks fine in skeleton/mesh. Is there something I should do here? why is this happening?

#

(4 pictures of the 2 characters, each in Mesh and Animation window)

jolly rain
#

How can I delete bones in the skeleton in UE4? they no longer exist in the Skeletal mesh I've re-imported

restive yew
#

You don’t

jolly rain
#

Thanks for nothing, I needed "assets/remove unused bones from skeleton"

molten jewel
#

You cant

dawn rose
#

hello , i asked this on the blueprint channel but i think this is a better place , i want to control an arm with the vive vr controller but the two bones ik does not look ver good , specially because the lowerarm get minimum rotation , what would you sugest for a smoother movement ?

molten jewel
#

If your sharing skeletons that’ll mess stuff up it’s better to just reimport

#

If you use that option it strips out bones that have no child bones with weight which will break ik animations. There is no way to selectively remove bones like what you asked dhingis

#

@dawn rose if your using the mannequin you want twist bones

#

You’ll want the root twist bones at the start of the limb to invert the parents rotation and the ones at the bottom to look towards feet /hands

#

Steps should be rotate thata way

#

Then look at

dawn rose
#

i see , i never used the twist bones but that makes sense

molten jewel
#

Yeah the thing bones make better deformation around hips and UpperArm around the torso/shoulders. The lower arm and calf twists make better deformation to the wrist and ankle

#

Play around with nodes but just cap it off with a look at node for the upper arm to lower arms and lower arm twists to hand

jolly rain
#

Like I said, the bones are not used - that includes animations.

molten jewel
#

Like I said djinghis it’s a very hair solution and it’s not selecting at all

dawn rose
#

i kind of tried using the "apply limits" node wich i was guessing could cap the rotations from no natural poses but i could not understand how it works

molten jewel
#

Animgraphs referencing the bones could corrupt. Your better off reimporting and delete with replace

restive yew
#

Once you have a hierarchy in place, you're stuck with it

#

unless you do a full wipe

jolly rain
#

By re-import you mean deleting completely and re-creating the skeleton? I know that will clean it up but some of the bones I added later that do nothing were cleaned

molten jewel
#

When you delete your given the option to replace it with something

jolly rain
#

Some facial rig bones won't - but i want to avoid 4 hours of intergrating it all again šŸ˜…

molten jewel
#

It makes a redirector in place to a asset

#

So reimport to new skeleton and delete and replace old with new is the best way to not lose all animations

restive yew
#

and pray

jolly rain
#

Thanks (didnt mean to get snappy) I'll just set that aside for 4.24 (release) and hopefully I stick to the skeleton šŸ‘

molten jewel
#

@dawn rose yeah it’s tricky just experiment with them but always end with a look at node specifying the target as the next bone in the chain

#

I wrote a custom node for it but I believe it could be done with some mixture of nodes

dawn rose
#

@molten jewel thank you i will make some tests using that idea

wheat briar
#

Hey I have a weird question about virtual bones in UE4. I've seen how they're used generally, but can they also be used to create a bone that mimics the same bone on another skeleton you're retargeting an animation from? Basically, let's say one character you made has two daggers that are animated as part of the first character (the animation involves throwing them around or sheathing/unsheathing them). Can you add two virtual bones to the new character that matches those of the daggers, and then use them as the target bones for the animation retargeting?

opaque stirrup
#

Right now I have a character with floppy long ears which are driven by physics, is there a way to save their physics position at a certain LOD or distance so I can disable the physics calculation without them resetting to their default position?

delicate junco
#

Hmm never tried that, are you using animDynamics ?

#

Cause you can then specify an LOD threshold iirc but I'm not sure if that keeps the transform before the change

gleaming cedar
#

The character makes a small leap in the direction of movement, moves only on X axis, the physics of the game can jump and fall, it is possible to somehow correct this lag? Perhaps input lag? although'm using the standard BP on movement, limited FPS not helped, fps 120 not drop, even under this really lag. Can anyone suggest any steps?

frail field
#

guys, how would you fix the camera attached to the head using a TPS animations? to get rid of jittering and jerking

molten jewel
#

@opaque stirrup a programmer could write such a node but i don't believe theres anything like that built in

#

actually

#

i'm not confident a node could do this

#

if it were anim dynamics: yes

opaque stirrup
#

I am using anim Dynamics

#

And I was looking at the ALS blueprints and they save the ragdoll pose for some blending for recovering from ragdoll

#

So I'm just wondering if the same method could be applied to a specific bone and child

#

Someone told me.about the fortnight video so I'm gonna watch that again.

molten jewel
#

so, say in post animation in event graph you you stored the local bone positions of those in the dynamic