[Tutorial] retargeting animations inside unreal to Daz Characters
hello guys i'm here again with another of my many "tutorials and helps" since i'm really love to share stuffs and help as much as i can others, and maybe sometimes get some help aswell , then here another tutorial this time for peoples which are having issues when trying to "retargeting animations from or mixamo or daz or any other source of animation than daz itself inside unreal.
This tutorial is to help both beginners and not so beginners, which somehow already saw the tutorial but still struggling in make things works, i wil do step for steach, another note remember since english is not my first language then it gonna have some errors specially becase sometimes and since i'm work in "real time" no "pre-writing", then sometimes i do mistakes and misspell some words which i even notice later and try to fix with some edits then bear with me, really srry, then let's begin:
First of all make sure you have the latest version of the pluging proper instaled in the right version of unreal, if you are using unreal 4.25 then use the right version of the plugging the same goes for the 4.26 since this is not about how install the plugging i will not show this part at last on this tutorial, maybe later in a future but for sure not now.
First let's learn a little about "retarget animation, What is exactly this"???? and why i need it????
Retarget animation is a sort of copy process where you copy a "animation from a different character to the character you want aslong they have "the bone structure" somehow almost the same as each one, like while can be possible to export let's say a dog animation to a "human" using bones it not gonna be perfect as if it was actually the dog(maybe based on how you made the bone structure it can actually be perfect!!!), the point is instead of you have to go to the process of create your own animations you can get someone else animation and bring to your character do it aswell, for peoples which already like to do "animations you would not need it unless you are in a hurry or a little to lazy to work and want more fast results, this process cut of the time you could be losing by making your own animations.
1- preparing the character in daz : as aways choose the character in daz you want to animate in unreal" here's my exemple:
i've already choose hair and everything now let's do what we already know which is use the bridge and send it to daz, as aways the process will take some time based on your configuration and how "big' is the characters( i means material numbers poly count, morphs number and size of textures and all) normally it take some seconds going to up few minutes.
now after the process end inside unreal you gonna open the mesh, by double clicking on it in the menu:
after that it will open the mesh options windows.
in this panel we can see a lot of options and stuffs to "configure" but for now to keep on the focus we gonna only use what is matter then at the top right of the panel you gonna see: skeleton, mesh. animation and blueprints(animation and BP) and physics are there because i've alread have some animations for this skeleton to a previous character then it will be applied to this one aswell then normally when you don't already have animations or BP you gonna se only skeleton mesh and physicals.
Now click in skeleton it will open in the same window a new panel which will be this one:
again more complicated stuffs, well for now what is gonna matter for us first gonna be few ones then we gonna ignore a lot of then, first of all in order to "retarget animations we need to make sure 2 things, first one is which both of then have the same bone structure or at last very close and daz character bone structure is being saved inside unreal almost perfect as the other character we want to copy the animations
to check it click on the retarget management:
you will be looking at set up riging then the select rig, if it was proper exported with the pluging then it will be "humanoid" as default which is the right option then under this you gonna see a a panel with a lot of stuffs which is
root
pelvis
spine_01
spine_02
those are the "humanoid unreal default bone names, then after each one you will see the character bone names which means the name of the bones of daz character and they are basic the matching maker for the humanoid again if all was did right no big issues here, you can scrool down and check if all are marked then all must be ok, now to check the others bones of the skeleton you will click on show advanced, becarefull don't click in any other option specially the "automap" it can mess with the ekeleton map making you need to manually fix all the bones which can be a nightmare specially if you don't know which are each bone, don't screw here". it's just to make some checks when chaning to adavanced you gonna find which not all bones from the base unreal are being matched in the daz it's because daz don't have those bones then if everything is fine again no issue those "missing" stuffs you can ignore, then after check everything, now let's go to the next step.
now to the second thing, we must make sure which both character must have the same "pose" before retarget, which means exactly what i'm say both characters must be almost perfect as possible in the same pose, the most accurace is the pose the most "perfect is the animation" if you just use daz pose and the character pose and they are not the same this difference will be easy notiable in the animtion as you gonna see your character with really weird distortions.
now the pluging managed to add for us a "unreal pose for daz characters" in order to do that you gonna look now in the lower part of the screen where it's say modify pose and view pose, you will be clicking in modify pose, when you click on it a small window appear then on this you gonna click on where it's saying "none", the others options are reset, use current pose none selected and a gray import, again click in none then a new small window appear to choose a pose, it gonna have one one pose in this case genesis8tohumanoidpose, after select it then where was saying none selected now appear pose_0, you gonna click in the import buttom which now become clickable, when you do that you gonna notice the character will auto change his pose to this pose on this panel, now after this one more last step.
character on the pose
again in the right side of the big screen where it is the preview scene setting is the choosen option, you gonna look to the mesh and preview mesh and gonna click in the apply to asset buttom it will make sure the pose will appear for the character when making the transfer now after that we gonna click on save then also make sure to save on the panel of the mesh (the pink) now we gonna or close this window or minimize it to go back to the unreal main panel(we gonna go back here later)
Disclamer here: i gonna ignore on purpose one more step which was supposed to de done here on this screen then in case you don't to have this bug or already know about the bug and just want all working right go back to near the end of the tutorial where i place the "fixing bug" part" then come back to continue the tutorial, otherwise let the bug happens in case you never had it or it's the first time and you want to know what can happen to already learn then keep just reading normal the tutorial until the end.
now for the test i will be using some mine animations which i go in unreal but you can use the unreal mannequin, but in my case they will be almost the same the only change is which is a more "female" animtions but are basically the same as the mannequin with the same structure and same animations and blue prints the only difference is which they are more female oriented.
now in the unreal main screen you must go back to the content, where it's say content/daztounreal/nameused, click in content to make it go back to the content root,
ok let's make it clear for really, really obvious reasons you not gonna have all those folders i'm having because i'm using a already existing project then it have a lot of "extra content with they folders then just ignore if you are going to use the mannequin then just go mannequin folder in my case my animations will be from the ods mannequin which is "my exclusive content"
wow i forget a important step before you go to the mannequin you must create a folder for the animations then inside the daztounreal/nameused you gonna create a new folder, then in the folders tab right click in a empty space a new big menu with many options appear just go for the first which is new folder, then it create a new folder which you can rename then name it animations and if you want click on save all buttom in case you gonna need then go back to the mannequin folder then you gonna look for the animations folder and click on it
then after click it will be something like that.
here the unreal mannequin version just in case
now since we already have a animation bp and a idlewalkrun blend then to make things more simple instead of go animation for animations and unreal is really a mother, father, grandmother, grandfather if you just copy the animation blueprint and it have the info of all others animtions it will automatically copy all others animations, it's only work for cases like that!!!, which you already have a animation blueprint if the animations you have don't have it then just copy each one, one by one, unreal can allow you to copy more than one per time however i not advise you do that because it have some "options" where things could not proper work with multiple copies at the same time.
ok another step which is important before go there which i forget is also check if the original character mesh you want to copy the animtions is also using the same options as your character in order to that you gonna also open the character mesh in this case the unreal mannequin and and go for his skeleton then his retarget manegemnt then you gonna check if it's selected humanoid, normally the unreal default is "none/nothing" then you click here and select humanoid then all the bones will be proper setted since its the unreal main natural skeleton and since unreal already is on the pose you want all you have to do is make sure on the mesh previw see if the apply buttom already was marked case you need to click then click otherwise just save the skeleton and mesh then close it.
then to make the retarget you gonna right click in the animation you want to retarget in this case is the animationbp(for unreal base mannequin is the first one with the orange line in the bottom)
when you do that a new window with some options appear you gonna choose the third one: the retarget anims blueprints(it say blue print because obvious we are retargeting a blue print if was a animation it will be the retarget anim assets option which in this case not gonna be the third one, after go to the retarget anims blueprints--->duplicate anim blueprints and retarget, just click on it.
a new window will open for you:
omg more options noooo!!!!!!... srry but nothing is "magical" and you need do some little work and believe me most of the really big dirty job already was done by the pluging it literally cut all the painfull process for you from 100% to only 20%, then be happy to be doing only 20%
you gona see in the Left panel the mesh of the character you choose appearing while in the Right will be blank
ok here on this new panell we have select skeleton with a a list of skeletons which the current animation can be "compatible" it not gonna have all the skeletons you have in your project in case you have multiple skeletons, to be clear skeleton is not the same as mesh, while you can have multiple meshes sharing the same skeleton, you can't have multiple skeletons for a single mesh(maybe is possible who knows?? but must be a nightmare to make it work) the only the skeletons which where place as humanoids" will be listed here, then you gonna choose the genesis8baseskeleton then you gonna notice which the "blank" Right will appear the mesh you want to retarget and since are in the same pose then all is ok tecnically you could just now hit the retarget buttom and let the unreal do the magic but we need a little more steps and pay attention to a little more options
first to make sure the copied animations will be copied in the right foder in our case the folder we created to store the animtions we must look to the the bttom of this window where it' saying folder /game [change](buttom)
you will be clicking on this buttom here you will be choosen the folder you want to save the animtion then i'm sure you know how to choose here right, then choose the folder
click on ok
it go back to the previous window, now we can go a extra step which would be "rename" the animtions, you can choose to rename if you want to use your own names for the animtions, you have here 2 ways first one is just add prefixe and sufixe before and in the end of the names to do that just where it's saying pref and sufifx write what you want then when you retarge whatever you write here will appear at the start and or at the end of the name
or you can choose the "replace" this method is a very case sensitive which means where's it say replace you must use exactly what is saying in the animation name if it use number then number if the letter are small then small if high then high if have a _ then you must also place the _, each letter you want to change must be placed here as it is on the original, then in the "with" option write the new name you want, when the animtion is export it will change any animtion which have exactly those letters by the new ones, this is why is important to be carefull when trying to "export multiple" animations because if not all have some letters of the name in common it will only rename the ones with the common names, it also don't need to be the full name it can be just some lets, for exemple the letters thirdperson" you can replace only those leters for something else like myanimations for exemple then if a animation is named thirdpersonwalk it will change to myanimationwalk, then after made all the adjusts just click on the buttom retarget
tada all the animations where retargeted now let's check then just choose one of the green line animtions to open the animation screen
what the hell is happening???? here??? why the animation is so bugged????? what i did wrong?? you fooled me!!!!!! give my money back!!!!! you liar!!!!!. i hate you, you must die!!!
wow let's calm down a little and breath a little be calm don't worry be happy!!!!!, don't try to kill me yet...
Final step fixing animation, ok being serious now i've on purpose left this bug to happen because i wanted to make sure peoples will experience this bug to make sure in case they forget any step they will know what make this bug happens, then to fix it you gonna stop the animation and at the top at right you gonna go back to the skeleton buttom and open it then back to the skeleton you gonna change from retarget manager to skeleton tree as here:
then you gonna click in the options then choose show retargeting options, when you do that at the side of the bones it now will appear new stuffs
now all the names have this "animation" at they side, i'm pretty sure this gonna happen, or you can have a small chance to the bones actually come proper corrected, now going back you gonna choose the root bone and right click ion it, a new window appear then you gonna look down where it have bone tranlation retarget, then you gonna choose the first one which is " recursively set translation retargeting skeleton, when you choose it "all the bones will change from animation to skeleton, then after that you gonna click again in the root but this time with the left buttom and choose animation, to the same to the hip bone, as optional in some animations case it can be needed you must scroll down until you find abdomenlower and also set it to animation, it's sometimes it can be needed others not, after that just save the skeleton and mesh then open again the animtions and now you gonna see all work right
now open again the animation and check if all is working fine.
now as you can see everything must be working fine.
have a nice weekend hope it can help many new comers, i'm still planing making some more tutorials, in the future like how to create the idle/walk/run blender animation also how to create animation blueprint and some others basic blueprints stuffs and some others tricks, you can also find some of my tutorials on this unreal forum they are in old tabs or old posts maybe i will try to post a proper link for each one to make the searchs more easy in the future.
Again have a nice day/night nice weekend stay safe and have fun.
Comments
ok time to adress another issue when "retargeting animtions" which is our loveds "high heels" or to be more serious and specific is "feet pose", ok let's start most of the animtions are doing with characters having "normal feet angles" i means no high heels, which means the foot is fully contacting the ground then when you normally try to export those animations to characters wearing high heels it normally ending with the character heels feet totally broken, when retargeting a animtion it can be adressed however if you are planning to have the same character sometimes wearing heels another time in flat foot then it can be a lot of nightmare and you have a lot of ways to adress it but all of then will need you already have advanced knowledge in unreal and for "newcomers it can be a lot complicated, then let's try to start with the basics about it
1 "base pose"- remember the "base pose we use to retarget the animtions and how she is import"??? yeah it's is really, really important she is what decides how accurace the result will be then, if you retarget a high heels using character using a "flat foot" pose the the regular unreal pose for daz, it will result exactly in the character animation to be played as if the character is not using a high heels, then is the pose which normally decides how the animtion will play, you have some ways to deal with it inside unreal without have to worry with the pose, but for now let's keep the focus on the pose.
2 possible work arounds for this can be: number 1 , inside unreal after apply the unreal pose to the character you go to the skelen tree and start to manipulate the "right foot bones" and rotate the feet angle is more close as you want for the high heel look righ, you need to know what bones you need to rotate to do that you gonna click again in the buttom modify pose but this time you gonna click on "use the current pose" buttom then save, it will save this pose as the main pose to convert animations, one important note if you are using character blue prints and not just throwing the animation direct into the scene, then you gonna need to adjust the "character height inside the character blue print, because unreal use the "capsule" as the collision for the ground not the character, then when you rotate the character feet to adjust the heel it can make the feet go down a little then inside unreal you can see the character "feet' entering in the ground" then you need to proper adjust the character to account for this error by moving him a little up enough to make sure the feets are not entering in the ground, now the second way, which is a little more complicated but more accurace, means inside daz you create your own "unreal pose" to do that you can go to unreal and export the character to outside unreal, to do that select the mannequin mesh and right click on it then the options panel will appear then you gonna look to:
assect actions--> export, a normal window appear asking for you to choose a name, format and place to save it, just choose the options you want and save as fbx format, after that you have to open a "third part" 3d editor like maya or blender and open this fbx on it, then you gonna select the full character mesh and choose to save it as "obj" (or object) this will save it as obj and only gonna save the model not the skeleton (make sure to know the proper process to save as obj in case it is not exactly as i talked here since each editor have they own way to convert and save) after that you gonna open daz and go to "file"--> import then where you saved the obj you will open it, then just click accept buttom no changes needed then it will appear as something like that:
now just load a daz figure you want to mirror the pose
i've loaded genesis 8 base which being honest is the best one to use to create the pose because when you save the pose maybe using "morphed characters" can make some issues then try to use the base mesh for it, now come the dirt job you gonna manipulate the character until it match almost possible as you can the "mannequin pose, don't worry about "heights" if unreal character is bigger or have long arms just focus on make sure the genesis character will be on the same pose once you done, remove the mannequin and save the pose(i'm sure you know how to save poses), now with this new pose saved now all you have to do is look for the "high heels you are planning to use then look at the outfit, then dress up the charater with the pose already applied before apply the outfit, then the "feet angle will change for the heels, now before export to unreal we have to go to unreal and make a little change, after open you unreal project you gonna go to edit panel then click in project settings
you only have to pay attention to left where it's say all setting, project and bla bla bla, scroll down here until you find plugings then you gonna click in daz to unreal settings:
them where it is saying frame zero is reference pose you gonna mark it, then close this window, then go back to daz and export the character, if everything is fine then you will export the character on exactly the same pose as it was in daz to unreal, in case something happen and it export the character in the normal daz pose and not the customized one, you have 2 ways to maybe adress it, way 1 is inside daz after you open the daz to unreal export main menu, before click on accept marke the opton show fbx dialog then hit accept, then a new window appear on that window under the export options you have to mark base figure pose only, then hit accept, if in case it still not work and it still exporting in the wrong pose then you go again to the pluging inside unreal projects then in daz to unreal settings you will mark show fbximport dialog, then close then export the character again from daz and this time inside unreal the "unreal impor window will appear then where it's the mesh and skeleton to choose you gonna look on the arrow which are hidden extra options you gonna click on those arrows until you find some extra options where it's saying something like use t0 as reference pose and mark it, then click ok, it will again try to force the export to use the pose, if the pose was properly exported this time, then you gonna go to the retarget manager and click on modify pose then use current pose, it will use this pose as the reference pose for retargeting then any animation you want to use will be on the high heels, this is only if you want to all animations to use the high heels pose if you want different feet angles, then all i have to say for now is "good lucky because it will be alot of work to do, you have many ways to do, most of then you need to create and export "a morph" for the feet angle of the heel, then or inside the animation or inside the character blueprint or inside a animation blue print and others way, to make when the character is "wearing this heels" change the angle feet by applying the morph target to the character, remember you also must make sure to call for a adjust in the character positon inside the capsule" to make sure the feet don't go under ground, you also can do that bly IK or as others say procedural animation and if i'm not wrong doing that you don't need to adjust character height it will do that automatically but you still need to know how to work wit the iks and procedural which i really don't know, then have fun learning how to deal with high heels, and if you learn really good tricks please share ir, because i'm also want to learn how to proper deal with that too.
this will cover all the basic common issues when trying to retarget a animation, any issue beyond those would need more precise help, but this is the basic mistakes and issues you have to know when starting to retarget animations.
have fun and nice weekend.
I will bookmark this and read it later, thank you very much for the detailed explanation. One quick question though...I thought the Bridge was supposed to do all of this?
technically speaking the bridge only "export" the character things like retargeting it's up to you, what the bridge does is proper setup the "skeletal mesh" in the rig in the retarte manager, sometimes it also proper setup the retargeting from animation to skeleton on the bones but i found which it had changed in future versions and now is going back the the default animations, you can be look and you skeleton still being skeleton with the "animation in the right bones in this case you can ignore this step.
i've made this tutorial because i've noticed peoples having issue when "retargeting animations" and those issues aways ending being around those basic issues then it prompted me to make this tutorial since it can cover those type of issues, some stuffs on the tutorial are more like "related to how are the default options on the bridge for exemple by default bridge jump the "unreal import window which was supposed to appear it already automatically setup it's "requirede basic stuffs" then sometimes you would want to have this window open then since it's not proper explained in any tutorial other than the david official page how to acess the daz setting then i think is more easy also to have it here.
i've also noticed which some peoples are complain about the "accurace of the official tutorials from the bridge about how to install and do some stuffs, some peoples seens to have issues or in the instalations or in steps like this one of the animation retarget.
Thanks very much, this will be very useful then.
I was going to start a new thread to ask this, but it's somewhat related and you would probably be able to give a good answer. :) If it's even possible, and whenever you happen to have time, could you outline the steps that would be required to retarget a Genesis 8/8.1 (or even 3) to the UE Mannequin skeleton so that animations meant for it could be applied to the Genesis figure inside of DAZ Studio - pretty much the opposite of what you describe here?
ok you got me a little confuse here, let me see if i understood what you asked,
you want to "retarget a daz animation made let's say for genesis 8 or 8.1 or 3 to be retargeted unsing unreal to genesis 1??? if yes then, i only know let's say part of the process, the part to bring back to daz the animtion is the part i really don't know since i've never did or needed to do it before, all my tutorials are about "working inside unreal" to be clear, it's not like i "don't want to help" is more like i just "don't know", my knowledge with daz studio and it's tools when comes to 'work inside daz" are pretty bad" i only know what i feel was important to use to work inside unreal, then normally the only tools i do know how to work are things like the geometry editor or the bone editor and some trick here and there, but animate or even "render inside unreal" i'm prettu noob as many others because that never was my focus, then going back.
to make retargeting inside unreal be x to y or y to x or any other configuration all the aspect are the same:
1 - base pose: - aways both the character which the animtions are come and the character is receiving, they aways must have the same base pose, b a T-pose, a A-pose, a Unreal-pose, before retargeting the animations both character must aways use the same base pose then make sure of that, you don't necessary need to only use unreal-pose if you want for exemple, retarget a animation from the unreal mannequin but you don't want to your daz character to use the unreal pose, then instead of set the daz character to use unreal pose you change the mannequin character to have the same pose as daz character, however i would have to say place unreal character in daz pose would be more troublesome than the other way around, you have to manipulate all the bones inside unreal which is more troublesome than do that inside daz in the worst case, however this is something mandatory if both character don't have the same pose or this pose is not "as much accurace/precise as it needed the animation would end with some issues, the pose don't need to be 100% perfect accurace but let's say it need to be in worst case 90% accurace anything under it and you can notice big issues around 90 you can get some but probably not that big noticiable.
2 - skeleton tree: - aways make sure the receiving character bones are all marked as skeleton, except by the root and the bone after the root which would be or pelvis or hip(daz most often is hip) both of then will be animation, sometimes also the lowerspine(or first spine bone) would be needed to change to animation, if this not proper corrected again the animation would end with some distortions.
3 - humanoid rig: - both characters must be selected on humanoid in obvious case of humanoids, for non humanoids you would need to create your own rig, which unreal can do that however i never tried that then go for yourself, the point is which making that in some cases like unreal mannequin and daz genesis 8/8.1 and genesis 5 it auto setup the skeleton without you need to manually setup each bone, i don't know if the bridge have support for genesis 1 and 2 and vic 4 i means for the skeleton, if not then you have to manually mark each bone according which what he needed to be, don't worry if maybe you ending have more bones or less bones than the humanoid riging if the bones are enough to fill all the most important bones then you don't need to worry the missing bones or extra bones will be ignored and they will not be important for the animation if they come from unreal, if it's a daz animation with let's say "boobs" bounce animation then it can be a deal because the unreal humanoid rig don't proper have support for "breast bones" then any animation on those bones will be lost.
well following those 3 rules you can basically retarget any animation from any character to another character as long they are humanoids and share the same base human bone structure any "extra will be lost" or you have to create your own rig bone structure to add those "extra bones".
Sorry if I wasn't clear, what I actually would like to know more about is how to avoid using Unreal entirely for character animation and to be able to use animations designed for the default UE4 mannequin with a Genesis figure inside DAZ Studio by reconfiguring the skeleton. Thank you for that information though, I'm sure it won't go to waste.
being honest i know which it's possible but is a really, really complex process, you need maya or blender, then knowledge on how to transfer the animations data from one bone to another, it's not a easy process, and i really don't know if it can be accurace, what you are askining is really nothing something simple, would be more easy to retarget the animations and use inside unreal than the way you are asking, i really don't know, specially since both skeletons are not the same, unreal cut all the complicated process which you would need to to in the others tools, the best of what i would say to you try is retarget the animtion inside unreal then export the character back to daz which is the problem, because i don't know the process to import animations to daz.
what i know which you can get any animation then export it outside unreal, now the next step i really don't know, it's up to you all the times i needed it was using unreal.
the best advise i would give is without any doubts make the process to retarget from unreal to the daz character then export to fbx outside then look for how to import the animation to daz, otherwise i really don't know.
No problem, thank you very much for thinking about it. :) It did occur to me, like you said, that I could try taking a converted DAZ figure in Unreal and exporting it out and back into Studio as an FBX with animation and see if will import as an animated prop of sorts. Wouldn't be editable, but it might keep the animation. I'll try that when I have more time and patience though. ;) Thanks again.
Hi there,
Thanks for your tutorial.
But you missed the show one of the most important steps - Skeleton Tree and Retargeting Manager
Yours are not detailed enough. Keep in mind when you make a tutorial, show everything. I will post here now to help others (Genesis 8 used in the example).
For whom are curious, I used Darker Nodes, that's why UI looks darker and more stylish.
YouTube Tutorial / GitHub