• Daz 3D
  • Shop
  • 3D Software
    • Daz Studio Premier
    • Daz Studio
    • Install Manager
    • Exporters
    • Daz to Roblox
    • Daz to Maya
    • Daz to Blender
    • Daz to Unreal
    • Daz to Unity
    • Daz to 3ds Max
    • Daz to Cinema 4D
  • 3D Models
    • Genesis 9
    • Genesis 8.1
    • Free 3D Models
  • Community
    • Gallery
    • Forums
    • Blog
    • Press
    • Help
  • Memberships
    • Daz Premier
    • Daz Plus
    • Daz Base
    • Compare
  • AI Solutions
  • Download Studio
  • Menu
  • Daz 3D
  • Shop
  • 3d Software
    • Daz Studio Premier
    • Daz Studio
    • Install Manager
    • Exporters
    • Daz to Roblox
    • Daz to Maya
    • Daz to Blender
    • Daz to Unreal
    • Daz to Unity
    • Daz to 3ds Max
    • Daz to Cinema 4D
  • 3D Models
    • Genesis 9
    • Genesis 8.1
    • Free 3D Models
  • Community
    • Our Community
    • Gallery
    • Forums
    • Blog
    • Press
    • Help
  • Memberships
    • Daz Premier
    • Daz Plus
    • Daz Base
    • Compare
  • AI Solutions

Notifications

You currently have no notifications.

Loading...
    • Categories
    • Recent Discussions
Daz 3D Forums > 3rd Party Software > Blender Discussion

Hitchens: A DAZ Studio to Blender Live Link

«1234»

Comments

  • lilweeplilweep Posts: 2,831
    August 2023

    That sounds great.

  • PadonePadone Posts: 4,171
    August 2023

    TheMysteryIsThePoint said:

    Lastly, also at SIGGRAPH I spoke to Dalai Felinto and Hans Goudey, and I've taken up the task of adding to the Python API the ability to set the individual control points of hair curves.

    That is what Thomas is missing to convert the diffeomorphic hair tools to the new hair system, because it can't be accessed via python, so far. So thank you if you take this, let us know of your progress.

  • TheMysteryIsThePointTheMysteryIsThePoint Posts: 3,328
    August 2023

    Padone said:

    TheMysteryIsThePoint said:

    Lastly, also at SIGGRAPH I spoke to Dalai Felinto and Hans Goudey, and I've taken up the task of adding to the Python API the ability to set the individual control points of hair curves.

    That is what Thomas is missing to convert the diffeomorphic hair tools to the new hair system, because it can't be accessed via python, so far. So thank you if you take this, let us know of your progress.

    That's exactly what stopped me too. Interestingly, the Python API to modify existing curves and points is there already, just not to create new curves and points. I think I've found the class that creates hair curves and am working on exposing it to the Python API. Blender is interesting. DAZ Studio is hard to develop for because there's no documentation. Blender is hard to develop for because while there is documentation and a strong community, it is very large and complex and still has a lot of C code that feels very old. I'm on it, but it will take a little time.

     

  • PadonePadone Posts: 4,171
    August 2023 edited August 2023

    double post deleted

    Post edited by Padone on August 2023
  • Singular3DSingular3D Posts: 645
    August 2023

    This all sound amazing. It would really be great to be able to load and transfer Daz content to Blender without touching Daz Studio.

    Have to thank all people that help to use Daz content in Blender like Thomas and TheMysteryIsThePoint! Thanks again also to Padone to support with his tips.

  • TheMysteryIsThePointTheMysteryIsThePoint Posts: 3,328
    August 2023

    Yes, I really can't thank either Thomas or Padone enough... this DAZ/Blender sub-community is really a shining spot in what is otherwise darkness for me.

  • TheMysteryIsThePointTheMysteryIsThePoint Posts: 3,328
    August 2023 edited August 2023

    Padone said:

    TheMysteryIsThePoint said:

    Lastly, also at SIGGRAPH I spoke to Dalai Felinto and Hans Goudey, and I've taken up the task of adding to the Python API the ability to set the individual control points of hair curves.

    That is what Thomas is missing to convert the diffeomorphic hair tools to the new hair system, because it can't be accessed via python, so far. So thank you if you take this, let us know of your progress.

    Blender is pure genius. Before you understand the way the build system automatically generates the Python API for you, it is incredibly frustrating. After you understand, it is pure genius.

    So, I think I'm about half done... I've added the API call to add a strand with the requested number of points:

    PYTHON INTERACTIVE CONSOLE 3.10.12 (main, Jun 21 2023, 01:30:38) [GCC 11.2.1 20220127 (Red Hat 11.2.1-9)]

    Builtin Modules:       bpy, bpy.data, bpy.ops, bpy.props, bpy.types, bpy.context, bpy.utils, bgl, gpu, blf, mathutils
    Convenience Imports:   from mathutils import *; from math import *
    Convenience Variables: C = bpy.context, D = bpy.data

    >>> curves = D.objects["Curves"]
    >>> curves.data.add_curve( 40 )
    >>>

    and I've found the relevant curve manipulation code in source/blender/blenkernel/intern/curves.cc to do the actual resizing.

    Actually getting the code approved and pushed aside, I think I'll have it working soon.


     

    Post edited by TheMysteryIsThePoint on August 2023
  • PadonePadone Posts: 4,171
    August 2023

    That's wonderful news Donald, thank you for your work and for keeping us up to date with the progress.

  • TheMysteryIsThePointTheMysteryIsThePoint Posts: 3,328
    September 2023

    Update: I got stuck on how to make a Python API that accepts a two dimensional array, so Hans Goudey put me out of my misery by just doing it himself :) It's already in his personal fork of Blender, if you build Blener from source:

    https://projects.blender.org/HooglyBoogly/blender

    And the branch name is curves-rna-api

    Hans' call is simpler than what I envisioned:

    curves.data.add_curves( [ 42, 30, 49 ] )

    This call will add 3 curves to the hair curves object, with 42, 30, and 49 points respectively. He correctly reasoned that the call doesn't have to arrange any points because the API to do that part already exists. The added curves have all of their points at (0,0,0) and these points can then be manipulated with the existing Python API. I'm currently re-writing my hair exporter so I have called the new API and it seems to work, but I haven't actually manipulated any of the new points.

    I don't know what the timeframe is for this to make it into the main tree and a release.
     

  • PadonePadone Posts: 4,171
    September 2023 edited September 2023

    Thank you Donald for the news, it's good to hear that the task is proceeding fine. There's no rush so I guess we'll wait for the official version to come out.

    p.s. I'm not sure it's a good idea to place all the points at zero. I mean the curve has to be interpolated some way and placing all to zero sounds like bad. May be a bunch of lines from zero to infinity and beyond is better LOL. But of course I trust Hans already considered this so I'm probably worrying for nothing.

    Post edited by Padone on September 2023
  • Singular3DSingular3D Posts: 645
    September 2023
    Great job Donald. Looking forward to it, because I switched from Win7 to Win11 with a new hardware and will be able to use the newest Blender versions. I still need some time to set up everything as needed.
  • TheMysteryIsThePointTheMysteryIsThePoint Posts: 3,328
    October 2023

    Hans was a real bro and merged the code into main on the September 23rd, which beat the Bcon3 deadline of the 27th, so it should be in Blender 4.0 which drops on November 7th.

    I've already used it extensively and it works perfectly. Hans, and Dalai (who put me into contact with Hans) are both champs.

    Open Source For The Win.

     

  • PadonePadone Posts: 4,171
    October 2023 edited October 2023

    Thank you for the news, just tried and seems to work, though I fear 4.0 will be a mess to work with due to the many api changes. Reported to Thomas.

    https://bitbucket.org/Diffeomorphic/import_daz/issues/1764/

    Post edited by Padone on October 2023
  • TheKDTheKD Posts: 2,711
    November 2023

    Oh my, 6 more days to wait :D

  • Singular3DSingular3D Posts: 645
    November 2023

    Padone said:

    Thank you for the news, just tried and seems to work, though I fear 4.0 will be a mess to work with due to the many api changes. Reported to Thomas.

    https://bitbucket.org/Diffeomorphic/import_daz/issues/1764/

    I definitely agree. We really need some tutorials for the changed interface and features of Blender 4.0. Nevertheless, these are fantastic news and I'm looking forward to use it. A big thanks for your efforts!

  • lilweeplilweep Posts: 2,831
    September 2024

    Given that this is maybe not coming out, what do we consider to be the best workflow for animating Daz Figures in Blender with the idea of sending animation back to Daz Studio to collect HD JCMs (which i personally believe are necessary, although others may disagree!).   

  • TheMysteryIsThePointTheMysteryIsThePoint Posts: 3,328
    September 2024

    @lilweep

    Sorry for the lack of updates. Because of the day job, I just haven't had much time to work on it.

    Where it stands:

    The standalone program that one runs instead of DAZ studio works:

    Loads .duf scenes.

    Has functionality to gather the used assets into a single directory or zip file, and can also load these. It also renames files to be case-sensitive filesystem friendly. Dramatically speeds up load times because it only loads what is actually used, not your whole catalog. There's a small bug sometimes,  but there's also a workaround.

    Export character to Blender via USDA and merges the rigs. There are 2 bugs left, having to do with wearables, but if you don't need them to clean up and perfect the animation, they won't matter.

    Sending back to DAZ is a work in progress. A small script in Blender sends the entire animation for all figures back to Hitvhens, which caches them. Then later, when Blender detects that the frame number has changed, it commands hitches to update the frame by applying all the rotations for the new frame. Blender then asks for all the updated geometry, and updates its proxies (objects with no armature that correspond to the objects imported from Hitchens) that are then rendered. I tested it and it works, even with simulations and such, and I didn't have to write a geometry node, thank god. What doesn't work perfectly yet are the twist bones, and they work differently between Genesis generations. I've worked out the math, but I didn't even bother any more asking DAZ how it works, and that is the greatest hold up.

    There's also other miscellaneous stuff in there like exporting strand based hair, diffeo DBZ files, and pushing blender created morphs back to Hitchens (for something so simple, Morph Loader Pro really makes it complicated).

    So, it's coming, I just can't say when it'll be ready for the public, and it seems like it's going to work well.

     

  • Singular3DSingular3D Posts: 645
    September 2024

    Great news. I would love to see a program that converts Daz characters to native Blender characters with rigs and JMCs. I understand that some things will be complex, like HD morphs and other dependencies like MCMs. For textures, I like to use the basic Daz textures and adjust and enhance them for Cycles. Unfortunately such a program will never exist, but everything that comes near to it is highly welcome.

    So far, I stick to Diffeomorphic, which has a huge number of features. Sagan and Hitchens may be very interesting as well.

    Thanks to all for their great work. Wish I had more time besides my day job.

  • lilweeplilweep Posts: 2,831
    September 2024

    Hitchens would be good because you can animate in Blender then bring back to Daz to get  theHD morphs or whatever else you need from daz. Then can export as alembic if you need to render elsewhere.

  • TheMysteryIsThePointTheMysteryIsThePoint Posts: 3,328
    September 2024

    Singular3D said:

    Great news. I would love to see a program that converts Daz characters to native Blender characters with rigs and JMCs. I understand that some things will be complex, like HD morphs and other dependencies like MCMs. For textures, I like to use the basic Daz textures and adjust and enhance them for Cycles. Unfortunately such a program will never exist, but everything that comes near to it is highly welcome.

    So far, I stick to Diffeomorphic, which has a huge number of features. Sagan and Hitchens may be very interesting as well.

    Thanks to all for their great work. Wish I had more time besides my day job.

    I still stand in awe of the amazing things that Thomas has accomplished with Diffeo. I immediately took a different approach: Don't even try to reverse engineer anything, especially without help from DAZ. Life is too short for that :) Instead, I've learned how to run DS standalone and slap a GUI specific to our needs on top of it so I don't have to worry about HD this, JCMs that...

    And since it generally takes longer to render a frame than it does for DS to advance by a frame and apply all the modifiers, transferring the scene from DS to Blender is effectively instantaneous.

    And I'm with you; I just wish I had more time... this kind of programming is immensely enjoyable.

  • TheMysteryIsThePointTheMysteryIsThePoint Posts: 3,328
    September 2024

    lilweep said:

    Hitchens would be good because you can animate in Blender then bring back to Daz to get  theHD morphs or whatever else you need from daz. Then can export as alembic if you need to render elsewhere.

    Exactly! And I don't have to figure any of that out, with no help from DAZ. I've never actually used Blender's Alembic nor USD export, but I think the best strategy is usually to get out of DS as quickly as possible to avail oneself of other tools that are available.

    Note that the initial USD export is just so that you have a rigged character to animate. Hitchens gets the vertex exact geometry from DS for the next frame of an animation while it is rendering the previous via a custom wire protocol, so no more Alembic or even USD after the initial export. It's automatic. You can also ask Hitchens to update the current frame you are on in Blender with HD and JCMs for your reference while animating finer interactions. DS and Blender can be on the same computer or different ones.

  • lilweeplilweep Posts: 2,831
    September 2024
    Oh that would be even better then
  • mindsongmindsong Posts: 1,761
    June 1 edited June 1

    Yo TheMysteryIsThePoint, 

    as a singer/guitarist... i gotta say that song in your forum sig kicks friggin butt! (hey Dartanbeck, go check it out - you'll be way-impressed!)

    Lyrics and production both, it cracks me up and inspires me to go play some more, and/or figure out how to make any one of the zillion AI tools let me tell my stories with that kind of substance. Bravo! (I'd be curious about the back story/mechanisms employed - it's truly an impressive and fun piece!)

    i am not worthy, sir! (bowing like the boyz on 'Waynes World')

    cheers, and mo mo more!

    --ms

    PS - and congrats on your Hitchens breakthrough - much as I'm loving lurking in the nearby animation/ai forum topic (Dart/Wsterdan/and crew), I'm also still digging the hands-on part of it all and excited to run your new masterpiece through some paces (no pressure!). 

    Post edited by mindsong on June 1
  • TheMysteryIsThePointTheMysteryIsThePoint Posts: 3,328
    June 1 edited June 1

    Hi @mindsong

    I picked up the guitar when I first heard George Lynch play In My Dreams. I put it back down when I heard Yngwie Makmsteen play Far Beyonf the Sun. Or was it I am a Viking? When I heard Tony MacAlpine play Hundreds od Thousands, I realized that I had never played at all. Who knows... I got to the realization that even though I was developing some actual virtuosity and could burn up E Harmonic Minor or A Phrygian scales, I didn't inherit the true musician's gene that my father and sister were blessed with. But since you're a player, you'd probably enjoy messing around with Suno because you already know the language to tell it. It understands. And certain things hit too close to home, so I asked Claude if it actually read the DAZ forums and it said that it had. So there ya go :) Hit me up through email if you create anything with it, and let me know what elese you've been up to.

    And even after the stupidest bug that confounded me for so long was resolved, I'm already beating my head up against the next undocumented thing having to do with scaled armatures. I know that the DAZ devs are not dummies and there's most certainly a good reason for why they've done what they've done, but sometimes it is really hard to figure out what is going on inside the opaque box that is DAZ Studio, with zero help from anyone that knows, and actual negative help from people that don't.

    When you waste time wondering how a 3 x 3 matrix can encode translations until you tralize that the thing unfortunately named "DzMatrix3" is not a 3 x 3 matrix but a 4 x 3, it takes longer than it should. And there's something going on with scaled armatures I don't quite have my brain around. And I also discovered that if you set positions and rotations with setLocalPos() or setLocalRot() it can corrupt the scene and the GUI, so you have to use node->get...Control() and set the value there. It would have been really nice if there had been a one line comment saying "Yes, we know this is a public class method and it looks so sexy and simple and seems like it will do exactly what you want... DO NOT CALL IT!!!" That's what you sign up for when you try to make a plugin. OK, rant over :)

    But I am pretty excited to be so close to the end... I don't scale any armature bones, so it's already working for my own purposes. It works like a charm with move.ai's high quality data.

     

    Post edited by TheMysteryIsThePoint on June 1
  • mindsongmindsong Posts: 1,761
    June 2 edited June 3

    I've got lots of 'songs-to-write' ideas and motifs jotted down, so maybe a Suno or Udio session (or 20) will at least get me going on them. Not enough hours in a minute!

    And, of course, I hope that someday a few of my 3D animation visions fill some of the imagery that such good music regularly conjours. In that regard, @Dartanbeck is my main long-time hero and inspiration, along with @wolf359 and @WendyLuvzCats for their out-of-the-box mindsets and explorations. All good stuff.

    I so look forward to mutzing with your Hitchens tool(s), and maybe getting a few animated shorts from my mind to MP4! You'll certainly get links to my progress! With Hitchens in mind, I'm still architecting a standalone Blender/DS console in the far recesses of my noggin. It's all soo cool, but keeping up with it all is kind of crazy - but I don't dare complain about that being a problem. "Blessed I am", as Yoda might have said.

    One foot in front of the other...

    Keep it up, Sir! and thanks - as ever.

    --ms

    (edited - minimized off-topic banter...)

    Post edited by mindsong on June 3
«1234»
Sign In or Register to comment.
Adding to Cart…

Daz 3D is part of Tafi

Connect

DAZ Productions, Inc.
7533 S Center View Ct #4664
West Jordan, UT 84084

HELP

Contact Us

Tutorials

Help Center

Sell Your 3D Content

Affiliate Program

Documentation Center

Open Source

Consent Preferences

JOIN DAZ

Memberships

Blog

About Us

Press

Careers

Bridges

Community

In the Studio

Gallery

Forum

DAZ STORE

Shop

Freebies

Published Artists

Licensing Agreement | Terms of Service | Privacy Policy | EULA

© 2026 Daz Productions Inc. All Rights Reserved.