Where are the exact functions of dforce parameters documented

TLDR: Where can I find an exact description of all the parameters involved in dforce?

Elaborating:

Dforce can be extremely frustrating to use, epecially for hair. I am talking about hair that is sold as being dforce hair. Most of the discussions I have seen say that if you don't like the results then adust the parameters. But as far as I know there is no published documentation that states explicitly what each of the parameters does. Do you know if such a document exists?  It must; the programmers who wrote it must know what each parameter does. Most likely they documented them somewhere. Do you know where I can find it? For example what is a "buckling coefficient"? what does the buckling coefficient's value mean? None of the parameters are intuitive.

How are the damping coefficients interpreted? Is 1 maximum damping and 0 no damping? And what do they mean exactly by damping? Usually damping refers to the decrease in the amplitude of oscillation over time of a pendulum or of a sping-mass system. In that case, there is no maximum damping coefficient. In math it looks like

x = C exp(-at) sin(2 pi f t)

where x is the displacement in meters from the equilibrium point of the object (usually taken as 0), C is the amplitude of the oscillation, t is the time in seconds (starting at t = 0) of evolution of the system, f is the frequency in Hertz of the oscillation, and a is the damping coefficient. If a = 0 there is no damping and the system oscillates between -C and C indefinitly. As a gets larger the oscillations die out more rapidly ending at a displacement of 0. If a < 0 the system blows up. Damping coefficent a is not limited to lie between 0 and 1. But the damping parameters in the dforce surface descriptions do range from 0 to 1. So they must mean something different than the usual physics. I have not been able to figure out what they actually do in dforce.

Here's an example of bad results: more often than not when I run a simulation on a single frame using the default parameters, the result is not good. (Yes I know to start with the hair not intersecting any surfaces.) The most frequent problem I encounter is that the individual hairs stick together axially so that if the hair is hanging down freely it does not spread out like it would naturally but instead acts like it is wet or covered with some kind of sticky substance. I have let one simulation procede for a couple of hours and all that happend was the stuck v-shaped mass swung back and forth like a pendulum. [I had set the damping to 1, the maximum. Maximum damping should, I think, mean no back and forth swinging. So apparently it does not mean that.] The hairs never separated. But it does stretch. Each swing of the pendular hair mass make the hair longer. Real hair does not stretch.

Hair is the most unrealistic part of the daz characters. I have much to say about it. But I will not in this thread. Here I am just asking for the definitions of the parameters of the d-force surfaces -- all of them. 

Ideally I would like to know the differential equations that are used to simulate the dynamics of the material interactions in the graviational field with wind. Clearly they exist; that's how the simulations are computed. Given the equations, then what are their coefficients and hyperparameters? How do the dforce surface parameters map to them? I realize that info is probably proprietary to daz3d but there should be a good description of what the dforce surface parameters do.

Do you know where I can find such a description?

Thank you!

Post edited by lamoid_5f20d3e469 on

Comments

  • Richard HaseltineRichard Haseltine Posts: 99,340

    No such technical details ahve been released, I'm afraid.

  • Thank you, Richard. I certainly have tried to find them. Where do the hair designers get their information? If they have had to figure it out on their own with no documentation it must take a huge amount of time doing trial and error with the parameters. I admire them and appreciate their efforts. It is annoying that documentation does not exist. It wastes so much of Daz users' time. It would take the person in charge of writing the dforce code maybe a day to write a document that simply describes the effects of each parameter. A few days if the description was detailed at the physics level. No excuse for it not being there that I can see.

  • Richard HaseltineRichard Haseltine Posts: 99,340
    edited May 2022

    I would not think most designers need to figure out the formulae, any more than they need the details of the maths behind Bezier curves to use Illustrator (or even the much simpler maths for layer blending to use Photoshop)

    Post edited by Richard Haseltine on
  • richardandtracyrichardandtracy Posts: 5,505
    Accurate and complete technical documentation of almost every feature of DAZ Studio would be enormously helpful. I always feel the programming is incomplete until someone else can use the function/method to its fullest extent with minimal trial & error. By this standard.. DS is woefully incomplete. dForce, shader mixer and strand based hair are all features that need decent, complete documentation of every function, effect and variable with examples of how to make the most of it. There are many, many more but those are the ones that would be most beneficial to the widest number compared to the effort spent.
  • Doc AcmeDoc Acme Posts: 1,153

    Yup!

     

  • Seven193Seven193 Posts: 1,068
    edited May 2022

    lamoid_5f20d3e469 said:

    TLDR: Where can I find an exact description of all the parameters involved in dforce?

    Daz Studio tends to use open source libraries like OpenSubdiv (Pixar) and OpenVDB (Dreamworks).

    So, it might be better to ask, is dForce based on any open-source library?  If it is, then you can dig through that for answers.

    Post edited by Seven193 on
  • PlatnumkPlatnumk Posts: 664

    You can find a full list of all the dforce parameters & what each one does here https://www.daz3d.com/forums/discussion/203081/dforce-start-here#latest

  • Seven193Seven193 Posts: 1,068

    Platnumk said:

    You can find a full list of all the dforce parameters & what each one does here https://www.daz3d.com/forums/discussion/203081/dforce-start-here#latest

    There are several physics engines available which are GPU-accelerated and make use of OpenCL, like PhysX, Havok and Bullet.  Maybe Daz is using one of these engines.

  • lamoid_5f20d3e469lamoid_5f20d3e469 Posts: 295
    edited June 2022

    Thank you, Platnumk! That is an enormous help to me.

    I want to stress that this is the kind of documentation I was looking for. It is a very good explanation of what the dforce parameters do.  

    Web page: https://www.daz3d.com/forums/discussion/203081/dforce-start-here#latest

    Key words: "dforce parameters"  dforce explanation definition documentation

    Post edited by lamoid_5f20d3e469 on
  • PlatnumkPlatnumk Posts: 664

    lamoid_5f20d3e469 said:

    Thank you, Platnumk! That is an enormous help to me.

    Your welcome 

Sign In or Register to comment.