Animated / Rigged SubD export

Ok if I Lock the settings of SubD level in the editor at 1 / above 0, it then does export the SubD in FBX, however, this now destroys the rigging / skinning on the export model, so that is obviously why the export tried to stop the FBX exporter doing SubD by default. So the real bug is - SubD Export destroys character rigging / skinning / animation export.

Comments

  • ARealitiARealiti Posts: 151

    I should have asked - does anyone know if I am wrong / a work around?

  • WendyLuvsCatzWendyLuvsCatz Posts: 38,948

    only work around is to export a subdivided obj then rig that

    if in DAZ studio it tends to weld mouths and eyes sadly

    Blender might by name or a more sophisticated program like Max, Maya etc I don't have either.

  • ARealitiARealiti Posts: 151
    th3Digit said:

    only work around is to export a subdivided obj then rig that

    if in DAZ studio it tends to weld mouths and eyes sadly

    Blender might by name or a more sophisticated program like Max, Maya etc I don't have either.

    Actually the FBX exports with SubD as I said, but the rigging is wrong, so using the FBX and rigging that would be the same as rigging the OBJ they both export with SubD if you set the option in the editor, lock it and the export. I believe this is a bug and will follow up with Daz unless someone knows a work aroud, reason I'm checking is so many people did not know you could in fact export with subd into FBX.

  • What are you wanting to do? The rigging and weights are designed with the expectation that SubD will be applied later - and in my limited experience it is usual for the FBX export to have only the SubD cage (the base resolution) with SubD be added to that in the destination aplication.

  • Male-M3diaMale-M3dia Posts: 3,582

    What are you wanting to do? The rigging and weights are designed with the expectation that SubD will be applied later - and in my limited experience it is usual for the FBX export to have only the SubD cage (the base resolution) with SubD be added to that in the destination aplication.

    I would think since genesis is low poly and HD/Subd is only a detail pass to that mesh, the export is working properly. The rigging and weightmapping is connected to the low poly mesh as well. If you raise the number of polys, you've basically created a different figure, thus you have to rig and weightmap it again. If you need the details, it would be better to create a normal map from a subd figure, then plug that into your materials either in the target app or before you export it from DS.

  • wolf359wolf359 Posts: 3,872
    edited February 2018

    Most of the receiving apps have their  own SubD aglorithums,
    Pixar, Catmul Clark,Catmul Clark-Ngons bilinear ,loop etc.
    The challenge for users of FBX ,as a means to get genesis into 
    other applications, is the loss of the joint control morphs
     not so much subD.

    I did a quick FBX export of the genesis female to Lightwave 2015
    the problem with her elbows at this angle are quite glaring
    which is why i prefer .objMdd for  moving animated genesis figure into other apps.

     

    the-joints.jpg
    800 x 697 - 328K
    Post edited by wolf359 on
  • Hi. Did you say what software you're importing into that is causing the problem?  I've been able to import into both Cinema 4d, Maya, and zbrush with no problems at base, 1 and 2 levels of subdivision.  But once its exported and there's a skin deformer, no more subdividing or you'll break everything.  

  • wolf359wolf359 Posts: 3,872
    edited February 2018

    " But once its exported and there's a skin deformer, 
    no more subdividing or you'll break everything. "

    Hi not quite true with C4D at least
    C4D has Many NON destructive mesh modifiers& Deformers
    that do not Change vertex counts unless you choose
    the "make editable" feature or bake them using the "Current state 
    of the object"command.

    It is because of this, I can import a low poly Daz optitex cloth sim as MDD
    which will have Zero Cloth thickness and add Cloth nurbs modifier to create thickened
    edges and even subdivide  it right before rendering,without buggering My MDD Data Connection.

    The same is true for Skinned weighted characters.
    The Female below is a  low poly native C4D rigged figure from Dosch
    On the left without a hypernurbs modifier and on the right with the modifier

     

    The rigging/weighting remains intact

    I see the OP's point however.
    There is an option in the DAZ studio FBX export to export subD
    it should not be there if indeed it is breaking the rigging in the receiving
    application due to the changed vertex weights.

    HYPERNURBNONDESTRUCTIVE.jpg
    800 x 739 - 259K
    Post edited by wolf359 on
  • FSMCDesignsFSMCDesigns Posts: 12,806
    wolf359 said:

    " But once its exported and there's a skin deformer,

    The rigging/weighting remains intact

    I see the OP's point however.
    There is an option in the DAZ studio FBX export to export subD
    it should not be there if indeed it is breaking the rigging in the receiving
    application due to the changed vertex weights.

    Unless it is the receiving apps fault. Could be there was a reason for it and exporting to C4D or Maya wasn't part of that reason. There are a few variations of FBX, so it doesn't surprise me that there might be an issue.

  • ARealitiARealiti Posts: 151

    What are you wanting to do? The rigging and weights are designed with the expectation that SubD will be applied later - and in my limited experience it is usual for the FBX export to have only the SubD cage (the base resolution) with SubD be added to that in the destination aplication.

    I would think since genesis is low poly and HD/Subd is only a detail pass to that mesh, the export is working properly. The rigging and weightmapping is connected to the low poly mesh as well. If you raise the number of polys, you've basically created a different figure, thus you have to rig and weightmap it again. If you need the details, it would be better to create a normal map from a subd figure, then plug that into your materials either in the target app or before you export it from DS.

    Hi M3M, thanks for your input, you say "If you need the details, it would be better to create a normal map from a subd figure, then plug that into your materials either in the target app or before you export it from DS." How would I go about this, it is in fact the perfect solution if it is possible and accurate you would be really helping me and all games developers and Daz greatly !

    Thanks in advance.

    M - ARealiti

  • ARealitiARealiti Posts: 151
    lchu2004 said:

    What are you wanting to do? The rigging and weights are designed with the expectation that SubD will be applied later - and in my limited experience it is usual for the FBX export to have only the SubD cage (the base resolution) with SubD be added to that in the destination aplication.

    I would think since genesis is low poly and HD/Subd is only a detail pass to that mesh, the export is working properly. The rigging and weightmapping is connected to the low poly mesh as well. If you raise the number of polys, you've basically created a different figure, thus you have to rig and weightmap it again. If you need the details, it would be better to create a normal map from a subd figure, then plug that into your materials either in the target app or before you export it from DS.

    Hi M3M, thanks for your input, you say "If you need the details, it would be better to create a normal map from a subd figure, then plug that into your materials either in the target app or before you export it from DS." How would I go about this, it is in fact the perfect solution if it is possible and accurate you would be really helping me and all games developers and Daz greatly !

    Thanks in advance.

    M - ARealiti

    Unfortunately, I think I already know the answer based on this exact forum discussion :( https://www.daz3d.com/forums/discussion/218946/is-it-possible-to-bake-hd-morphs-to-maps, would be great though if you had a different positive answer, thanks. M

  • ARealitiARealiti Posts: 151

    Thanks MaleM3, I feel a bit stupid, I've been playing around with Substance Painter and it even has a Unity project option with the abitlity to bake a cage based HD model def onto a lower def model, knew about Allegorithmic but didn't know about this, wow, this is a really great, will see how it all goes, thanks again!

    Richard, really I think you should somehow add this workflow as you say about baking / applying HD to the low def Cage on information about the Runtime License, it isn't actually possible to do this in things like UE4 and Unity, you have to use another product, it would greatly add to the usefulness for people buying that license! I will report back on how I went.

    Cheers M - ARealiti

  • ARealitiARealiti Posts: 151
    edited February 2018

    Went really well, thanks again for suggesting this MaleM3 / Richard. I'd suggest again Daz should really put this in information somewhere about the Runtime License and how to make FBX export with rigging useful for HD models!

    Post edited by ARealiti on
  • ARealitiARealiti Posts: 151
    edited February 2018

    However, if you want to animate (export with rigging) with the level of detail you want in the mesh, you are, unfortunately, out of luck. As pointed out by wolf359 and in this thread you get pretty bad mesh resolution issues close up, even if you use Normals, https://www.daz3d.com/forums/discussion/comment/3311341/#Comment_3311341

    It would be nice if this worked IMHO as the future of Realtime is HD, computers are getting fast enough to do 500k-1M poly models in Realtime. 

    Hi Richard can you please look into this bug, it really is a bug for future use of Daz HD products.

    Post edited by ARealiti on
  • ARealitiARealiti Posts: 151
    edited February 2018

    Hi all, so what do we want when exporting HD, 2 cases can be done the 3rd one to go, or does anyone know a work around to achieving case 3?

    Use case 1: The look of HD Statically with no Animation

    Method to achieve use case 1: OBJ or static FBX export with Resolution level set and locked to 2 in figure parameters before export.

    Use case 2: The look of HD in Realtime with Animation for distance use or when the model is animating quickly

    Method to achieve use case 2: Export Base Mesh as FBX with Animation option checked and HD Mesh (can be OBJ or FBX with resolution set and locked to 2 in figure parameters and SubD setting checked on export) then Bake Normals of HD Mesh on Base Mesh using Substance Painter or other.

    Use Case 3: We actually want the HD mesh with rigging and animation for better Geometry smoothness close up, this is also a Realtime requirement as 1Million poly+ models are getting use in modern computer graphics in Realtime close up, in fact I have tested up to 1 Billion poly scenes in 30fps+, inefficent scenes mind you, but the computing power is there.

    Method to achieve use case 3: Export FBX in HD poly mode with Animation. Problem, yes you can export the FBX in HD if you set and lock the Definition Level to 2 in the editor before chosing to export to FBX then setting Animation and SubD on the settings screen, but this then destroys the rigging / animation of the model that is exported. Resolution - Daz this is a real use case and a bug in the FBX export can you please fix this? In fact it is better for this be exported with full HD in FBX with Rigging and allow the Realtime user to do their own LOD creation, that really is a use case that is the standard use in industry.

    M - ARealiti

    Post edited by ARealiti on
  • algovincianalgovincian Posts: 2,646

    I'm no expert, but I don't think it's a bug. A couple of thoughts:

    1. I don't believe there is any rigging set up for HD in DS (my understanding that the rigging is setup for the base resolution only).

    2. It seems to me like you would need to export the HD model as an obj, and then create a new figure using it as the target (and the original base resolution figure as the source).

    - Greg

     

  • Male-M3diaMale-M3dia Posts: 3,582

    Again, it's not a bug. You're exporting genesis, which is less than 2K polys. HD is pretty much a DS-only feature (and also the DSON importer could use HD morphs as well), which is applied to the mesh AFTER a joint is bent. If anything, the FBX would need to have the JCM information as the figures use that for correcting bends. You probably could put a ticket into the helpdesk, though. 

  • Please do not split threads if they are basically the same topic. If you think the title no longer covers the topic adequately, you can change the title name.

  • ARealitiARealiti Posts: 151

    Please do not split threads if they are basically the same topic. If you think the title no longer covers the topic adequately, you can change the title name.

    Please don't put hysterical red writing in a thread, just combine the thread notify the person privately (yes they are a human being even though you are online) and live a wonderful life of happiness not always being an angry person :)

    M

  • ARealitiARealiti Posts: 151
    edited February 2018

    Again, it's not a bug. You're exporting genesis, which is less than 2K polys. HD is pretty much a DS-only feature (and also the DSON importer could use HD morphs as well), which is applied to the mesh AFTER a joint is bent. If anything, the FBX would need to have the JCM information as the figures use that for correcting bends. You probably could put a ticket into the helpdesk, though. 

    Thanks again MaleM3dia, your help in realising that I should just bake the Normal maps was 90% of my immediate problem. I will however pursue what IMHO is a bug in the rigging of the FBX HD export with high geometry (by locking the SubDivision Level to 2/3) , and really is in the interests of Daz and all the artists and long term use of Daz content in multiple industries. I do realise the irony that after years of people telling Daz their models are too high poly for realtime use I am now saying they should export with the option of full HD geometry and rigging for real time use and creation of LOD external to Daz, but the world moves on, especially technology. 

    As pointed out by wolf359, Daz export has the Option of SubD export on the FBX export screen which can be combined with the Animation (rigging) option, so it is a bug, or the option shouldn't be there.

     

    The clear steps to reproduce this bug:

    1. Create a HD character scene. 
    2. Set SubDivision Level to 2/3 in the Posing / Shaping Parameters for the HD figure. 
    3. Export to FBX with SubD and Animation options. 
    4. The resulting FBX figure will have HD geometry and rigging for animation but the rigging will be very wrong and the figure will be destroyed when animated.

    M - ARealiti

    Post edited by ARealiti on
  • Cris PalominoCris Palomino Posts: 11,933
    edited February 2018
    ARealiti said:

    Please do not split threads if they are basically the same topic. If you think the title no longer covers the topic adequately, you can change the title name.

    Please don't put hysterical red writing in a thread, just combine the thread notify the person privately (yes they are a human being even though you are online) and live a wonderful life of happiness not always being an angry person :)

    M

    Red is a color we sometimes used to differentiate that a mod is speaking in the thread when we want to make sure it is noted. It has no emotional meaning.

    Post edited by Cris Palomino on
  • drzapdrzap Posts: 795
    edited February 2018
    ARealiti said:

    Again, it's not a bug. You're exporting genesis, which is less than 2K polys. HD is pretty much a DS-only feature (and also the DSON importer could use HD morphs as well), which is applied to the mesh AFTER a joint is bent. If anything, the FBX would need to have the JCM information as the figures use that for correcting bends. You probably could put a ticket into the helpdesk, though. 

    Thanks again MaleM3dia, your help in realising that I should just bake the Normal maps was 90% of my immediate problem. I will however pursue what IMHO is a bug in the rigging of the FBX HD export with high geometry (by locking the SubDivision Level to 2/3) , and really is in the interests of Daz and all the artists and long term use of Daz content in multiple industries. I do realise the irony that after years of people telling Daz their models are too high poly for realtime use I am now saying they should export with the option of full HD geometry and rigging for real time use and creation of LOD external to Daz, but the world moves on, especially technology. 

    As pointed out by wolf359, Daz export has the Option of SubD export on the FBX export screen which can be combined with the Animation (rigging) option, so it is a bug, or the option shouldn't be there.

     

    The clear steps to reproduce this bug:

    1. Create a HD character scene. 
    2. Set SubDivision Level to 2/3 in the Posing / Shaping Parameters for the HD figure. 
    3. Export to FBX with SubD and Animation options. 
    4. The resulting FBX figure will have HD geometry and rigging for animation but the rigging will be very wrong and the figure will be destroyed when animated.

    M - ARealiti

    Here is how I solved the problem.  I am using DaztoMaya script

    Export the base level character using the script.
    Export the HD FBX
    Apply the HD mesh to the base level rig as a blendshape.
    Now you can dial in as much HD detail as you need for the scene.  You will have to subdivide in Maya to see the results.  The only problem is the bind pose for DAZ and HIK is slightly different and it will exaggerate further the more you push the blendshape.  This should be solved by adjusting the HD pose before you apply the blendshape deformer.  Of course the HD mesh's rig is broken, but you can delete the skeleton and autorig it to get temporary mobility.

    Post edited by drzap on
  • wolf359wolf359 Posts: 3,872
    edited February 2018

    Hi I had some time to run a few tests this morning. 
    I am not sure what changes to the FBX exporter have been made 
    between DS 4.8( my version) and DS 4.10.

    However if you uncheck "allow degraded skinning"
    and Check "SubD information" the Exporter dialog issues 
    a very specific warning that "FBX does not support Daz Skinning"
    and directs you to recheck "allow degraded skinning".

     

    I suppose one could argue that technically they are conflicting options
    however you are warned, by the software,
    to pick one or the other.

    Screen Shot 02-06-18 at 07.44 AM.PNG
    763 x 642 - 56K
    Post edited by wolf359 on
  • CortexCortex Posts: 111
    edited February 2018

    I tried exporting an hd figure to collada (.dae) format but that doesn't seem to export an increased number of vertexes over a non hd figure.

    I tried setting subdivision level to 2 in Daz parameters tab, but that didnt seem to help. Unless there is another option I need to set ?

    Post edited by Cortex on
  • edited June 2019

    Pardon my cheek for necro'ing a year old thread, but I stumbled onto this via google while looking for a potential solution to this problem. This thread was a top result. I have a quick and easy solution, though it may require 3ds Max or Maya, as I use a functionality that may be peculiar to autodesk products.

    TLDR: This is how I got a SubD Smoothed Genesis 3 figure into Unreal Engine with working hd morphs and weightmaps.

    Problem: I want to animate a SubD Smoothed Genesis figure outside of Daz Studio without losing morph resolution.

    Solution (Summarized): Use Transfer Utility to create a rigged high resolution duplicate of Genesis (or any figure with subd levels). Export that to FBX and import into 3ds Max. Save its weight maps to file. Then, dial up your character in Daz Studio, and lock the SubDivision Level Parameter, setting the minimum resolution to the level you want to export at. Export that figure to FBX, then load it into 3ds Max. Load the previously saved weight maps from file to apply on your finalized figure. This process is a one-off. Once you generate that weightmap file, you can skip the first two stages in the procedure below.

    Solution (Details):

    Stage 1: Daz Studio, Create a conforming High Resolution copy of your Figure.

    - Load a default Genesis figure and export it to .obj at the SubD level you want to export your final figure at, leave the figure in the scene.

    - Import that obj back into Daz Studio and use the Transfer Utility to conform it to the Genesis character you still have loaded. While you have the Transfer Utility window open, leave eveything at default, but check the 'UV Space' box. This will ensure that the transferred weights will be nice and accurate. You can test this on the eyes and mouth to see. We'll call this newly transferred mesh 'HD Genesis'.

    -  Now that HD Genesis is rigged, unfit and unparent it from the original Genesis figure you just conformed it to. Hide or delete that original Genesis, and select HD Genesis.

    - Export HD Genesis to FBX. The settings aren't important here, As long 'Figures' is checked, the FBX will contain the weightmaps we need. Now, we move over to 3ds Max.

    Stage 2: 3ds Max, Create a file containing High Resolution weight maps for your Figure.

    - Import the HD Genesis FBX.

    - Select the Skin Modifier in the Modifiers List and expand the Advanced Parameters Tab.

    - Click the Save button to create an env file. This file contains the weightmaps for this skin modifier. It can be loaded onto another skin modifier, which is what you'll do in a minute.

    - Reset your 3ds Max Scene, you won't need the HD Genesis figure again after this, so you can delete the FBX, as well. Hold on to that Env file, though.

    Stage 3: Daz Studio, Export a High Resolution FBX of your Figure using the Parameter Lock trick.

    - Load or dial up your Genesis character.

    - With your Genesis figure selected, Lock the 'SubDivision Level' Parameter and set its minimum level to whatever SubD level you exported your HD Genesis to. Lock the 'Resolution Level' parameter for good measure, as well.

    - Now export your figure to FBX. Make sure that 'SubD Information' is checked, as well any other settings you may need (morphs, merge clothing, animation and so on).

    Stage 4: 3ds Max, Load the High Resolution weight maps onto your Figure.

    - Import your new character FBX into Studio Max. You'll see that your Genesis figure is at its appropriate SubD, but the weightmaps aren't applying properly. There's no weight data for the SubD vertices, just the vertices from the Base Resolution Mesh.

    - Select the Skin Modifier in the Modifier List, and expand the Advanced Parameters tab.

    - Click the Load button, then navigate to where you stored that env file. Load it.

    - When you're prompted with the envelope window, click the 'match by name' button to make sure that the weights are applied to the proper bones. Also ensure that the 'Load Vertices By Index' box is checked, this will ensure that the imported weights are accurate.

     

    And that's it, from there I was able to export to Unreal Engine. Again, I apologize for bumping this old thread, but since this was a top result in my web search, I figured this was a good place to throw a bone to anyone else who was stuck on this conundrum.

    Post edited by cire992_5c76c5ca30 on
  • cire992_5c76c5ca30 I have been unable to replicate your steps. 3DS Max crashes when I tried to import the HD genesis mesh. I am a little unclear on Stage 1: 

     

    Using the transfer tool, what is the source and what is the target? I have tried this method then result is that the imported object  after the transfer is all kinds of messed up. 

Sign In or Register to comment.