Thank you so much, really! You helped me to solve a complex situation I had with animating both an armature and the object controller by the rig.. And the object animation wasn't just exported at all, I tried everything but I managed to solve only with shape keys. You saved me!
@@joydeep3693 import your prefab and drag it into your scene > create a new animation controller > double click that controller to go into the editor > create an entry node and connect it to an action node > in the action node, choose the imported action for your animated mesh as the motion > on your prefab add an animator component and add the controller to it
check your blender export settings if its not working for you. by default anything with blendshapes or bones would import into unity w a skinned mesh renderer
@@RobbieTilton I enabled all the export options for FBX under Geometry (not sure which on did it) and its now showing up as SkinnedMeshRenderer :) Thanks
Thank you so much for this. It's an excellent method. However I'm having an issue making it work in my case. I'm trying to get this to work and I can reproduce it on a cube, but when I try it on my own object the animation becomes massively out of scale and different. The object I'm working on is a series of planes in a line like a ribbon, which wraps around a pole. I'm only animating the vertices, and I use the same method that works for the cube, but for some reason it all goes out of whack with my object. Any idea why? EDIT: I figured it out. The scale of the object was off in the x axis. It was 90 while y and z were 1. This was a consequence of how I created the strip of planes. I just had to apply the scale to set it back to 1 without changing the object and the import method worked.
Hey thanks so much for the tutorial! If possible, can you tell me why the animations are playing faster in Unity than in Blender for me? Your seems that the animations are taking the same time on both Blender and Unity.
Is there any way to get this working with instantiated geonode objects? I have a sort of animated mesh cloud that I want to bring into unity. I baked the points into an .mdd, imported that back into blender, instantiated my objects on top of them but when I export that as a .fbx it shows up as a regular mesh in Unity, not a skinned mesh, so the animation is lost. Following the steps from the tutorial completely messes up the animation.
you can do it with a prefab and then instantiate the prefab. the prefab must have the skinned mesh though. if you're fbx export isn't working check your 3d model programs export settings. likely missing a check-box somewhere.
@@RobbieTilton I ended up figuring it out, I had to bake the MDD of the finished object and then apply the geonode modifier of the object before reimporting the MDD. Thanks for your video, it helped a ton!
Hi how can you export the wave modifier mesh to unreal engine im a bit stuck trying to get it to work. Once you export it to unreal engine it just sits there as a static mesh with no animation
you need to write a script to cycle through the blendshapes like i did in unity, but now in unreal engine. UE calls blendshpaes -> morph targets. You can search google for scripting morph targets in UE.
I gotta ask - why export blend shapes when you could bake your animation to the cube itself? Does that not work in Unity? I'm new to this, so I'm just trying to explore all the options. Thanks!
from my experience you can only bake/import animations that have bones. thats great for many cases, but this is for when you have no bones. if i'm wrong about unity being able to import baked animations with no bones just let me know
I wrote that before finishing the video. I see... the .mdd essentially saves the animation information for you? How necessary is the coding in Unity? I'm doing this for a project for work, but I'm not good with code. I mean, I could follow along and copy what you wrote, but I would also like to understand the importance of that step when just trying to bring in an animation to Unity to just see it - it's not for a game or anything.
@@RobbieTilton I'm going to test that today, baking animation, but I think your version is way easier to do, and this video was really good at helping out beginner-level entry into Unity. Keeping this in mind, actually, there's a side project I'm working on using Blender exported models into NifSkope for Skyrim modding that this .mdd might also help me out with so I'll be excited if that works there, too. :D
@@RobbieTilton Well tbh I don’t know the specifics of how it works, but Unity can play two animations at once, or blend into one another with state transitions. I thought it was dependent on bone blending, since it would cost if it blends all vertices themselves.
you could just interpolate your weights in code instead of pushing them to 100 every frame, and skip the whole mdd baking part, which would lower the size of your files and your ram consumption significantly. Otherwise great showcase.
HI! I'm having this problem with the script in unity (I'm working with the plane and wave modifier): Array index (39) is out of bounds (size=39) UnityEngine.StackTraceUtility:ExtractStackTrace () Im little new in this so I'm not sure how to fix it, I thought it was related to the SkinedMesh render bound that is actually 3.9 x 3.9 x 0.4 so I made it bigger by increasing the extents but that didn't work. My second thought was relating the frames since I have only 38 frames, but that should affect the script right? Thank you very much for the tutorial anyway, hope you can help me :)
apparently is related to my frames (blend shapes) cause I augmented it to 186 and now I have this same error but changing the value: Array index (187) is out of bounds (size=187)
array index out of bounds means your code is looping through the array beyond the memory space. The size of your mesh doesn't matter. Make sure you have line 29 correct from 10:30 in video. Also make sure line 24 is right with the minus 1
@@leonortapia1 glad you figured it out. i like to encounter issues live in video to help folks learn how to debug issues :) indeed confuses some ppl expecting every step to work perfect.
Actually I am trying to make a fold/rolling animation in blender and it uses a curve and a curve modifier on the mesh please tell me how can I export that rolling animation that I made in timeline without a rig . Basically that animation was achieved by using curve modifier on the mesh
thanks for this tutorial i learned a lot but after some work i exported the mesh and animation is working but the rotation is weired and not satsfying i think after export the scale is changes of the mesh and is disorted
@@RobbieTilton no i didnt keyframe position. do i need to change the forward or something when turning it to fbx. it works just fine in blender but unity it moves
when is unity saying this to you? is this an error in the console from the code? technically there are no keyframed animations (just blendshape data) so i dont see the problem unless your code isn't running
@@RobbieTilton It happens when I import the fbx file to Unity. Would it be alright if I could send you the blender file and see if it does the same thing for you?
@@RobbieTilton I consider animation important because I'm currently working on a project. Nonetheless, I sincerely appreciate your time and response, as well as the helpful tip. Thank you.
hi there, i tried your code etc but i made a mistake of some kind, everything is moving XD, my wave modified portal just strays in uknown to humanity direction , and my cube starts floating into the air, what could i've done wrong ? XD plesae respond i am stuck :C
if ur sure your code is correct. try looking at your geo in blender and confirm the origin of the object is in the center and the scale is applied before you bake the frames/export
i've made cube stay in place but wave modified portal (a torus and a plane circle) just rotates and moves out of nowhere, and changes it's x and y scaling and now i am stuck here XD
@@steventomek4236 if it worked with the cube - the code should work with all the others. I think it's a problem with your bake/export. try creating a new blender scene with a fresh plane/modifier and bake/export.
@@RobbieTilton i will look into it later tommorow it's 5am now and i am waking up in 6 hours so yeaaaah, but it might be it! I've never operated with origin of the object and applying scale , i always just go into edit mode and press A to select all and S to scale and then work around with it , what i find peculiar is that shape that the portal is becoming have never been active in blender i mean i've never used it, not in blender and not in unity so it's wierd but i will try again later, thanks for replying ^^
This is exactly what my team was looking for. Thanks for sharing it Robbie
no problem! Glad you found this helpful
Thanks a lot. After all these days, finally I've found a way to achieve the expected result in my project.
super smart solution!! thanks very much for sharing this!!!
Great! I need this one! all I want to do is to transfer geonodes-based-animation to unity, thanks to you I've just done it!
glad to hear it!
Thank you so much, really! You helped me to solve a complex situation I had with animating both an armature and the object controller by the rig.. And the object animation wasn't just exported at all, I tried everything but I managed to solve only with shape keys. You saved me!
THANK YOU SO MUCH!!!
I love this tutorial and I've been very helped by this.
Thank You so much - you made my day today :)
this video sent me down such a rabbit hole trying to get it to work when i could have just used a simple animation controller
Can you explain how to play the blend shape keys using animation controller?
@@joydeep3693 import your prefab and drag it into your scene > create a new animation controller > double click that controller to go into the editor > create an entry node and connect it to an action node > in the action node, choose the imported action for your animated mesh as the motion > on your prefab add an animator component and add the controller to it
This worked perfectly for me, thank you!
Thank you so so much. Clear and concise, just what i needed.
Perfect - thank you!
This is excellent. So useful!
glad you find it helpful :) it's a niche within a niche, but for those who need it - it nice
This saved me. Thanks!
thanks!
you are an angel.... Thanks you so much!!! but not work in "Copy Location" Constraint
Thanks so much.
thanks
This is not working for build modifiers , im getting error on that , do anyone have a solution.
Great! thank you o/
Great vid!
How are you getting them to show up as skinned meshRenderer meshes in Unity?
check your blender export settings if its not working for you. by default anything with blendshapes or bones would import into unity w a skinned mesh renderer
@@RobbieTilton I enabled all the export options for FBX under Geometry (not sure which on did it) and its now showing up as SkinnedMeshRenderer :)
Thanks
Nice tutorial! Can you tell me please what options are on in the bake animation bar when you exporting?
it's all default. i didn't change anything on mdd export settings
Thank you so much for this. It's an excellent method. However I'm having an issue making it work in my case.
I'm trying to get this to work and I can reproduce it on a cube, but when I try it on my own object the animation becomes massively out of scale and different. The object I'm working on is a series of planes in a line like a ribbon, which wraps around a pole.
I'm only animating the vertices, and I use the same method that works for the cube, but for some reason it all goes out of whack with my object. Any idea why?
EDIT: I figured it out. The scale of the object was off in the x axis. It was 90 while y and z were 1. This was a consequence of how I created the strip of planes. I just had to apply the scale to set it back to 1 without changing the object and the import method worked.
glad to hear you got it to work. thanks for sharing the fix should anyone else encounter this.
Hey thanks so much for the tutorial! If possible, can you tell me why the animations are playing faster in Unity than in Blender for me?
Your seems that the animations are taking the same time on both Blender and Unity.
watch to the end. i explain at 15:00
@@RobbieTilton ops, sorry! 🤦♂
What about for things like a fire or galaxy animated texture?
Is there any way to get this working with instantiated geonode objects? I have a sort of animated mesh cloud that I want to bring into unity. I baked the points into an .mdd, imported that back into blender, instantiated my objects on top of them but when I export that as a .fbx it shows up as a regular mesh in Unity, not a skinned mesh, so the animation is lost. Following the steps from the tutorial completely messes up the animation.
you can do it with a prefab and then instantiate the prefab. the prefab must have the skinned mesh though. if you're fbx export isn't working check your 3d model programs export settings. likely missing a check-box somewhere.
@@RobbieTilton I ended up figuring it out, I had to bake the MDD of the finished object and then apply the geonode modifier of the object before reimporting the MDD. Thanks for your video, it helped a ton!
Hi how can you export the wave modifier mesh to unreal engine im a bit stuck trying to get it to work. Once you export it to unreal engine it just sits there as a static mesh with no animation
you need to write a script to cycle through the blendshapes like i did in unity, but now in unreal engine. UE calls blendshpaes -> morph targets. You can search google for scripting morph targets in UE.
I gotta ask - why export blend shapes when you could bake your animation to the cube itself? Does that not work in Unity? I'm new to this, so I'm just trying to explore all the options. Thanks!
from my experience you can only bake/import animations that have bones. thats great for many cases, but this is for when you have no bones. if i'm wrong about unity being able to import baked animations with no bones just let me know
I wrote that before finishing the video. I see... the .mdd essentially saves the animation information for you? How necessary is the coding in Unity? I'm doing this for a project for work, but I'm not good with code. I mean, I could follow along and copy what you wrote, but I would also like to understand the importance of that step when just trying to bring in an animation to Unity to just see it - it's not for a game or anything.
@@RobbieTilton I'm going to test that today, baking animation, but I think your version is way easier to do, and this video was really good at helping out beginner-level entry into Unity. Keeping this in mind, actually, there's a side project I'm working on using Blender exported models into NifSkope for Skyrim modding that this .mdd might also help me out with so I'll be excited if that works there, too. :D
Can you tell me, how to control the speed of the animation through the script. Somehow, even at 60fps, it's still too fast in the Engine
you can choose to do something every X frame if you want: discussions.unity.com/t/how-to-make-a-code-run-in-every-10-frame-not-every-frame/132447
@@RobbieTilton Thankyou for the help.
Can you export an FBX that has both LODs AND these shape keys?
not sure. never export LODs in general
Is this perhaps blendable in Unity? Or is that asking for too much
what do u mean blendable? you mean as blend targets?
@@RobbieTilton Well tbh I don’t know the specifics of how it works, but Unity can play two animations at once, or blend into one another with state transitions. I thought it was dependent on bone blending, since it would cost if it blends all vertices themselves.
wowwww this is amazing!!
i'm glad you enjoyed it!
you could just interpolate your weights in code instead of pushing them to 100 every frame, and skip the whole mdd baking part, which would lower the size of your files and your ram consumption significantly. Otherwise great showcase.
I love you.
HI! I'm having this problem with the script in unity (I'm working with the plane and wave modifier):
Array index (39) is out of bounds (size=39)
UnityEngine.StackTraceUtility:ExtractStackTrace ()
Im little new in this so I'm not sure how to fix it, I thought it was related to the SkinedMesh render bound that is actually 3.9 x 3.9 x 0.4 so I made it bigger by increasing the extents but that didn't work. My second thought was relating the frames since I have only 38 frames, but that should affect the script right?
Thank you very much for the tutorial anyway, hope you can help me :)
apparently is related to my frames (blend shapes) cause I augmented it to 186 and now I have this same error but changing the value:
Array index (187) is out of bounds (size=187)
OK NEVERMIND, I had your mistake before fixing the last piece of code..... haha
array index out of bounds means your code is looping through the array beyond the memory space. The size of your mesh doesn't matter. Make sure you have line 29 correct from 10:30 in video. Also make sure line 24 is right with the minus 1
@@leonortapia1 glad you figured it out. i like to encounter issues live in video to help folks learn how to debug issues :) indeed confuses some ppl expecting every step to work perfect.
Actually I am trying to make a fold/rolling animation in blender and it uses a curve and a curve modifier on the mesh please tell me how can I export that rolling animation that I made in timeline without a rig .
Basically that animation was achieved by using curve modifier on the mesh
follow the tutorial. it will work
@@RobbieTilton ok thanks buddy I'll try but of If stuck please I need your help
thanks for this tutorial i learned a lot but after some work i exported the mesh and animation is working but the rotation is weired and not satsfying i think after export the scale is changes of the mesh and is disorted
@@CrazyToddlerFun apply the scale in blender with cntrl+a
@@RobbieTilton thanks brother i already fix this by applying scale and rotation btw thanks for your support
thats good but if you guys wants an easier way just export it as .abc and simply import it to unity its gonna work
Tried it. Didn't work.
I'm having a weird issue where the object moves one space when moving the frames from 0-1 any clue why?
did u keyframe the position by mistake? as long as the object position is static - the keyframes of the blendshapes/shapekeys shouldn't jump
@@RobbieTilton not that im aware but im making a new version just incase
@@RobbieTilton no i didnt keyframe position. do i need to change the forward or something when turning it to fbx. it works just fine in blender but unity it moves
@@RobbieTilton Figured it out i needed to rotate it 180 degrees in blender before exporting for some reason. but its all fixed now.
@@noahjacobhill7316 glad you figured it out. thx for sharing
After following the video from 17:14, Unity is saying "no animation data in the model". Any tips or solutions to that?
when is unity saying this to you? is this an error in the console from the code? technically there are no keyframed animations (just blendshape data) so i dont see the problem unless your code isn't running
@@RobbieTilton It happens when I import the fbx file to Unity. Would it be alright if I could send you the blender file and see if it does the same thing for you?
@@danielmigwigitonga6451 but why does it matter if it has animation or not? we're using skinned mesh blendshapes here not animation keyframes
@@RobbieTilton I consider animation important because I'm currently working on a project. Nonetheless, I sincerely appreciate your time and response, as well as the helpful tip. Thank you.
hi there, i tried your code etc but i made a mistake of some kind, everything is moving XD, my wave modified portal just strays in uknown to humanity direction , and my cube starts floating into the air, what could i've done wrong ? XD plesae respond i am stuck :C
if ur sure your code is correct. try looking at your geo in blender and confirm the origin of the object is in the center and the scale is applied before you bake the frames/export
i've made cube stay in place but wave modified portal (a torus and a plane circle) just rotates and moves out of nowhere, and changes it's x and y scaling and now i am stuck here XD
every time i hit play , this havoc with portal just moving everywhere and scaling diffrently seems to happen idk what to do know
@@steventomek4236 if it worked with the cube - the code should work with all the others. I think it's a problem with your bake/export. try creating a new blender scene with a fresh plane/modifier and bake/export.
@@RobbieTilton i will look into it later tommorow it's 5am now and i am waking up in 6 hours so yeaaaah, but it might be it! I've never operated with origin of the object and applying scale , i always just go into edit mode and press A to select all and S to scale and then work around with it , what i find peculiar is that shape that the portal is becoming have never been active in blender i mean i've never used it, not in blender and not in unity so it's wierd but i will try again later, thanks for replying ^^