Daz characters in SideFX Houdini: part 2

Hi all,

Since my earlier post, I've made a bunch more progress on bringing native Daz content to SideFX Houdini. This was the original feature list:

  • Parse a DAZ Studio Library folder of DSON files, and build a library of nodes, materials, geometries, UV sets, and modifiers
  • Select a character to load in Houdini via a custom Houdini Digital Asset, and create a KineFX skeleton and skin for the selected character
  • Apply character shaping morphs and joint offsets to match each character's custom shape and skeleton
  • Apply pose and joint correction morphs in response to changes in the character's pose
  • Translate Daz materials into Redshift materials via Houdini material stylesheets

…all without exporting anything from Daz Studio.

Since then, I've added the following extra features:

  • Attach multiple followers (clothing, hair, etc.) with skinning, binding all geometries to a single unified KineFX skeleton
  • Apply grafts to base characters (wings, tails, etc.)
  • Add support for attaching unskinned geometries to the overall skeleton
  • Create all geometries as packed primitives, and add support for extracting individual geometries back out of the combined model
  • Show materials in the OpenGL viewport
  • Load characters with triax skin weighting (Daz Dog 2, Daz Dragon 3) using the same approach as Daz's FBX exporter
  • Multithreaded library loading and dependency resolution, and a bunch of work to keep things fast in Houdini
  • Cache the library, and all library geometries, after initial generation
  • Don't create post-pose morphs that can never be triggered (e.g. character JCMs when that character is not dialed in)
  • Fix a ton of bugs with loading and resolving DSON files, so that many more characters can now be loaded

There is still a lot of work to be done, and I don't have any auto-fit logic yet, but it's progress!

I've attached a few more images, as examples.

MermaidCombo.png
3362 x 2774 - 3M
Cyborg8.png
1798 x 2298 - 2M
OutfitAndHair.png
1796 x 2296 - 2M

Comments

  • Glad to see your update. I am tremendously excited about your project.

    Some things that I'm interested in knowing more about are:

    1. How the the auto-fit logic is coming along, as I beleive that would mean that one would not even have to run Daz Studio in order to export.
    2. How Houdini's subdivision modifier compares to Daz Studio's. Blender, for example, handles it slightly differently and therefore subdivided models look slightly different in Blender than they do in Daz. The difference is just enough for me to find in unacceptable.
    3. And important feature that I would like to suggest is that it work on case-senitive file systems.

    Thanks for the update, and I can't give you my money soon enough.

     

  • Bookmarked this thread and very excited to hear you're making progress. 

  • Awesome work! Are you planning a public release any time soon?

  • Amazing, I would also love to know when there might be a public release.

    Is there a github repo we can even checkout?

  • And will this work with 19?

  • d2houdinid2houdini Posts: 34
    edited September 2021

    Thank you all for the comments! Some answers below…

    Glad to see your update. I am tremendously excited about your project.

    Thank you!

    How the the auto-fit logic is coming along, as I beleive that would mean that one would not even have to run Daz Studio in order to export.

    I haven't been able to find any documentation about how Daz's own autofit algorithm works, but I have a draft implementation of autofit up and running based on my own experimentation with blend shape diffs, and it's looking promising. I stand by my previous comment that "no exports ever" is a fundamental goal of this project – DSON is an interchange format, and I 100% hope to support it natively in Houdini.

    How Houdini's subdivision modifier compares to Daz Studio's. Blender, for example, handles it slightly differently and therefore subdivided models look slightly different in Blender than they do in Daz. The difference is just enough for me to find in unacceptable.

    I haven't focused on subdivision quality / accuracy yet, but OpenSubDiv is the standard, so I'm hoping it's possible to match behavior between the tools.

    And important feature that I would like to suggest is that it work on case-senitive file systems.

    Speaking as a case-sensitive Mac user who finally has a working copy of Daz Studio again, I could not agree more.

    Bookmarked this thread and very excited to hear you're making progress. 

    Thank you!

    Awesome work! Are you planning a public release any time soon?

    I'm not quite there yet, but it's what I'm ultimately aiming for, yes.

    Amazing, I would also love to know when there might be a public release.

    Is there a github repo we can even checkout?

    Not currently. This has been a labor of love over many weeks / months of work, so I doubt it will be open-source. But I hope to make it publicly available.

    And will this work with 19?

    Houdini 19? What's that? laugh

    But seriously: everything I'm working on is KineFX-based (as opposed to the old obj-based bones rigging system), so I'm hoping that any future improvements in Houdini 19 (and beyond) will play nicely with what I've created so far. I'm not part of the SideFX beta program, but the email they accidentally sent to all Houdini subscribers a week ago makes me optimistic that Houdini 19 is only going to bring good news for this integration.

    Post edited by d2houdini on
  • Thanks for sharing these updates. I'm looking forward to this integration, as this could make character and crowd generation that much more powerful in Houdini!

  • looking forward for your daz to houdini bridge @d2houdini

  • will we be able to get daz props inside houdini as well?

  • Really looking forward to seeing more of your progress. The main thing holding me back from moving to Houdini atm is that KineFX is still in development and hasn't implemented their node based rig yet. From what I understand, KineFX is mostly a retargetter currently, yeah? I'm really excited to follow your development.

     

    TheMysteryIsThePoint said:

    How Houdini's subdivision modifier compares to Daz Studio's. Blender, for example, handles it slightly differently and therefore subdivided models look slightly different in Blender than they do in Daz. The difference is just enough for me to find in unacceptable.

    Have you tried the HD export with Diffeo? Subd in Blender looks weird because when we're bringing in and subdividing the base Daz mesh. With Diffeo HD export, you actually get the high poly mesh in multires and I haven't noticed any differences in geometry between the two.


     

  • tapanojum said:

    Really looking forward to seeing more of your progress. The main thing holding me back from moving to Houdini atm is that KineFX is still in development and hasn't implemented their node based rig yet. From what I understand, KineFX is mostly a retargetter currently, yeah? I'm really excited to follow your development.

     

    TheMysteryIsThePoint said:

    How Houdini's subdivision modifier compares to Daz Studio's. Blender, for example, handles it slightly differently and therefore subdivided models look slightly different in Blender than they do in Daz. The difference is just enough for me to find in unacceptable.

    Have you tried the HD export with Diffeo? Subd in Blender looks weird because when we're bringing in and subdividing the base Daz mesh. With Diffeo HD export, you actually get the high poly mesh in multires and I haven't noticed any differences in geometry between the two.

    @tapanojum

    Yes, I am embarrassed by how recently I discovered that, and only because Padone asked me to port the HD Exporter to C++ and I had to actually use it; Sure wish someone had told me what you just did a long time ago :) I went from just using Diffeo for materials to using it for just about everything, and now I basically use Sagan as a hair converter because HD export with the multires modifier is pixel perfect just like Alembic, as you say. Thanks.

     

  • d2houdini said:

    Thank you all for the comments! Some answers below…

    Glad to see your update. I am tremendously excited about your project.

    Thank you!

    How the the auto-fit logic is coming along, as I beleive that would mean that one would not even have to run Daz Studio in order to export.

    I haven't been able to find any documentation about how Daz's own autofit algorithm works, but I have a draft implementation of autofit up and running based on my own experimentation with blend shape diffs, and it's looking promising. I stand by my previous comment that "no exports ever" is a fundamental goal of this project – DSON is an interchange format, and I 100% hope to support it natively in Houdini.

    How Houdini's subdivision modifier compares to Daz Studio's. Blender, for example, handles it slightly differently and therefore subdivided models look slightly different in Blender than they do in Daz. The difference is just enough for me to find in unacceptable.

    I haven't focused on subdivision quality / accuracy yet, but OpenSubDiv is the standard, so I'm hoping it's possible to match behavior between the tools.

    And important feature that I would like to suggest is that it work on case-senitive file systems.

    Speaking as a case-sensitive Mac user who finally has a working copy of Daz Studio again, I could not agree more.

    Bookmarked this thread and very excited to hear you're making progress. 

    Thank you!

    Awesome work! Are you planning a public release any time soon?

    I'm not quite there yet, but it's what I'm ultimately aiming for, yes.

    Amazing, I would also love to know when there might be a public release.

    Is there a github repo we can even checkout?

    Not currently. This has been a labor of love over many weeks / months of work, so I doubt it will be open-source. But I hope to make it publicly available.

    And will this work with 19?

    Houdini 19? What's that? laugh

    But seriously: everything I'm working on is KineFX-based (as opposed to the old obj-based bones rigging system), so I'm hoping that any future improvements in Houdini 19 (and beyond) will play nicely with what I've created so far. I'm not part of the SideFX beta program, but the email they accidentally sent to all Houdini subscribers a week ago makes me optimistic that Houdini 19 is only going to bring good news for this integration.

    Any updates to your Daz3D to Houdini? Thank you so very much. 

  • What an amazing tool! I'm really looking forward to a beta release, This should be by all means be a paid toolset. Please at least not make it a subscription for indie artists and leave space for a custom material... I use both Redshift and Octane with Daz characters and have my own skin shaders, not every Daz model have good materials (but most have awesome textures!)

Sign In or Register to comment.