FLUIDOS II for Daz Studio - update 2.2 [commercial]

11011121315

Comments

  • I have another prop I've tested this on (a bowl) and it works just fine. Fluid lands inside the concave bowl and settles just like it should. But my swimming pool somehow just appears to Fluidos as a solid object with no concavity. Fluid just "runs off" it and never enters the basin. What can be the problem?

  • AlbertoAlberto Posts: 1,436

    mikethe3dguy said:

    I have another prop I've tested this on (a bowl) and it works just fine. Fluid lands inside the concave bowl and settles just like it should. But my swimming pool somehow just appears to Fluidos as a solid object with no concavity. Fluid just "runs off" it and never enters the basin. What can be the problem?

    Is the Domain higher than the top of the water in the pool? Is it wider than the pool?  

  • mikethe3dguymikethe3dguy Posts: 515
    edited August 2023

    Alberto said:

    Is the Domain higher than the top of the water in the pool? Is it wider than the pool?  

    Absolutely. The top of the domain is above the fluid mass before it drops. The domain fully encompasses both the water and the pool, in all directions, with some additional space on all sides. I'm now trying it with another swimming pool as a test, though I have to use the first one, or abandon the idea.

    Post edited by mikethe3dguy on
  • mikethe3dguymikethe3dguy Posts: 515
    edited August 2023

    Alberto said:

    Is the Domain higher than the top of the water in the pool? Is it wider than the pool?  

    In the majority of my tests, at frame 0 the fluid cube is entirely above the pool (not inside it at any point), though I have also tried using a small sphere (again entirely above the pool). In both those cases the fluid acts like the pool is a solid object with no concavity. I then tried placing a sphere inside the pool, so that it was beneath the top of the pool deck, wondering if it might simulate normally inside the pool once it was below the top. But it did not... didn't even simulate in fact. Just remained in place.

    Post edited by mikethe3dguy on
  • AlbertoAlberto Posts: 1,436

    mikethe3dguy said:

    Alberto said:

    Is the Domain higher than the top of the water in the pool? Is it wider than the pool?  

    In the majority of my tests, at frame 0 the fluid cube is entirely above the pool (not inside it at any point), though I have also tried using a small sphere (again entirely above the pool). In both those cases the fluid acts like the pool is a solid object with no concavity. I then tried placing a sphere inside the pool, so that it was beneath the top of the pool deck, wondering if it might simulate normally inside the pool once it was below the top. But it did not... didn't even simulate in fact. Just remained in place.

    Check if the pool is really open. Check its geometry.

  • Alberto said:

    Check if the pool is really open. Check its geometry.

    I have done so. Opened it in Geometry Editor and made certain. Nor is there any "water" geometry there because I removed it.

  • mikethe3dguymikethe3dguy Posts: 515
    edited August 2023

    Here is a cylinder I opened up with Geometry Editor. Fluidos behaves as if it's closed. This is frame 8.

    Edit: Tried the same thing using a source/sink insteak of the fluid mass. Behaves the same way. So far, with every bowl prop I have found this works fine, but not with primitives or the two swimming pools I've tried. The only difference that I could imagine might be relevant (?) is that the bowls have "thickness" meaning they have both inner and outer surfaces, whereas the primitives and swimming pools are a single poly surface. Your manual talks about how meshes must be "closed surfaces" - this might be the key??? By your definition, I'd think these swimming pools and a primirive with a side removed would not be "closed"... right? Beyond that at this point I have no idea. Maybe I'll try to modify a bowl to remove its outer surface?

    Post edited by mikethe3dguy on
  • AlbertoAlberto Posts: 1,436

    mikethe3dguy said:

    Here is a cylinder I opened up with Geometry Editor. Fluidos behaves as if it's closed. This is frame 8.

    Edit: Tried the same thing using a source/sink insteak of the fluid mass. Behaves the same way. So far, with every bowl prop I have found this works fine, but not with primitives or the two swimming pools I've tried. The only difference that I could imagine might be relevant (?) is that the bowls have "thickness" meaning they have both inner and outer surfaces, whereas the primitives and swimming pools are a single poly surface. Your manual talks about how meshes must be "closed surfaces" - this might be the key??? By your definition, I'd think these swimming pools and a primirive with a side removed would not be "closed"... right? Beyond that at this point I have no idea. Maybe I'll try to modify a bowl to remove its outer surface?

    Oh!, I understand. Yes, It's as you said. The open cylinder and the pool don't have thickness. They're open meshes. They don't work correctly as obstacles and can give unexpected results.

    The cylinder in the image is interpreted by the plugin as a closed cylinder. Thin walls (one layer) are not recognized.

     

  • mikethe3dguymikethe3dguy Posts: 515
    edited August 2023

    Alberto said:

    Oh!, I understand. Yes, It's as you said. The open cylinder and the pool don't have thickness. They're open meshes. They don't work correctly as obstacles and can give unexpected results.

    The cylinder in the image is interpreted by the plugin as a closed cylinder. Thin walls (one layer) are not recognized.

    I used your Thickener plugin to fix this and am experimenting with it now. Can you address my questions about the "Water Plane" presets in your add-on product in relation to what I'm trying to do - would I get better, faster results using that? As it is, the learning curve here is painfully slow.

    Post edited by mikethe3dguy on
  • Alberto,

    I'm trying to keep fluid from leaking through the body of the pool. I've used your Thickener plugin to turn it into a closed mesh, with walls 5cm apart. That, with a Fluidos Thicken value of 10, does not work. I added a geoshell to the pool, and that helps a small amount, but here are some questions:

    1. Is the geoshell offset value important? Currently set to default value: .10
    2. Should I also apply Thicken values to the pool, geoshell, or both?

    Cell SIze is 3.29. Thanks

  • ImagoImago Posts: 5,158

    mikethe3dguy said:

    Cell SIze is 3.29. Thanks

    That's a odd value, try using 5 or 10, it should help the plugin calculate things more easily.

    But if you need a more detailed result, use directly 3 or 2 but keep in mind tha the smaller the grid the longer the simulation.

  • mikethe3dguymikethe3dguy Posts: 515
    edited August 2023

    Imago said:

    mikethe3dguy said:

    Cell SIze is 3.29. Thanks

    That's a odd value, try using 5 or 10, it should help the plugin calculate things more easily.

    But if you need a more detailed result, use directly 3 or 2 but keep in mind tha the smaller the grid the longer the simulation.

    That's the value Alberto's High Resolution script assigned when I ran it.

    Post edited by mikethe3dguy on
  • AlbertoAlberto Posts: 1,436

    mikethe3dguy said:

    Alberto,

    I'm trying to keep fluid from leaking through the body of the pool. I've used your Thickener plugin to turn it into a closed mesh, with walls 5cm apart. That, with a Fluidos Thicken value of 10, does not work. I added a geoshell to the pool, and that helps a small amount, but here are some questions:

    1. Is the geoshell offset value important? Currently set to default value: .10
    2. Should I also apply Thicken values to the pool, geoshell, or both?

    Cell SIze is 3.29. Thanks

    If you use the Thickener, you don't need a geoshell. Apply the Thickener to the pool. I don't know how your pool is, but if it's similar to the cylinder you showed above, apply the Thickener with a value considerably larger than the cell size, If 10 cm didn't work, 20 should.

     

  • mikethe3dguymikethe3dguy Posts: 515
    edited August 2023

    Alberto said:

    If you use the Thickener, you don't need a geoshell. Apply the Thickener to the pool. I don't know how your pool is, but if it's similar to the cylinder you showed above, apply the Thickener with a value considerably larger than the cell size, If 10 cm didn't work, 20 should.

    Okay thanks - this has worked with at or close to 100% effectiveness. Certainly enough for my scene. But I need some suggestions about creating a SPLASH with a body falling into the water with force. Animated a body falling into it and discovered that Fluidos treats moving objects as static, so I'm assuming I have to simulate the splash using a Fluidos Force. The manual describes the forces, but there's one I can't find: FIELD. Is that one I should consider for the splash? It's hard to tell from the description, and I can't test it because it's not in the list of options. Is it located somewhere else than in Fluidos Force? Should I be using a Directional type force instead, or possible multiple Directional forces (the body is not diving into water in a straignt line, but awkwardly falling backward with limbs out.

    Edit: Doing experiments to try and figure out how to use the Directional force and not getting anywhere fast. Don't see anything in the manual about which end force projects from (top? bottom? both?). Don't see any tutorial videos showing the use of the forces and how to set them up. Does the force object have to be in contact with the fluid?

    Post edited by mikethe3dguy on
  • AlbertoAlberto Posts: 1,436

    mikethe3dguy said:

    Alberto said:

    If you use the Thickener, you don't need a geoshell. Apply the Thickener to the pool. I don't know how your pool is, but if it's similar to the cylinder you showed above, apply the Thickener with a value considerably larger than the cell size, If 10 cm didn't work, 20 should.

    Okay thanks - this has worked with at or close to 100% effectiveness. Certainly enough for my scene. But I need some suggestions about creating a SPLASH with a body falling into the water with force. Animated a body falling into it and discovered that Fluidos treats moving objects as static, so I'm assuming I have to simulate the splash using a Fluidos Force. The manual describes the forces, but there's one I can't find: FIELD. Is that one I should consider for the splash? It's hard to tell from the description, and I can't test it because it's not in the list of options. Is it located somewhere else than in Fluidos Force? Should I be using a Directional type force instead, or possible multiple Directional forces (the body is not diving into water in a straignt line, but awkwardly falling backward with limbs out.

    Edit: Doing experiments to try and figure out how to use the Directional force and not getting anywhere fast. Don't see anything in the manual about which end force projects from (top? bottom? both?). Don't see any tutorial videos showing the use of the forces and how to set them up. Does the force object have to be in contact with the fluid?

    Set Enable moving obstacles in the Domain to On.

    To get a force field, add an object to the Domain, and change its FLUIDOS Object type property to Force field.

  • mikethe3dguymikethe3dguy Posts: 515
    edited August 2023

    Alberto said:

    Set Enable moving obstacles in the Domain to On.

    To get a force field, add an object to the Domain, and change its FLUIDOS Object type property to Force field.

    I had Enable Moving Obstacles turned on. Okay, after changing my figure to Force Field I can't get through the simulation without Daz Studio crashing. Found these warnings in the log after restarting, in case any of them are useful:

    2023-08-11 23:01:43.779 [WARNING] :: QWidget::setMinimumSize: (/QLabel) Negative sizes (0,-536870910) are not possible
    2023-08-11 23:01:43.779 [WARNING] :: Object::connect: No such slot ABRunSimulationDialog::changedUnionVDB() in abFluidos.cpp:2115
    2023-08-11 23:01:43.779 [WARNING] :: Object::connect:  (sender name:   'BoolBtn')
    2023-08-11 23:01:43.779 [WARNING] :: Object::connect:  (receiver name: 'FLUIDOS simulation')
    2023-08-11 23:01:43.779 [WARNING] :: Object::connect: No such slot ABRunSimulationDialog::changedOnlyRemeshing() in abFluidos.cpp:2116
    2023-08-11 23:01:43.779 [WARNING] :: Object::connect:  (sender name:   'BoolBtn')
    2023-08-11 23:01:43.779 [WARNING] :: Object::connect:  (receiver name: 'FLUIDOS simulation')

    I am using negative values in the Intensity parameter of the Force Field.

    Question: Is there a way to limit the simulation to just a portion of the timeline? In my case the DS crash has always occurreed at 75% of the wsy through the timeline so for the time being I'd at least like to simulate up to that point so I can get enough feedback to adjust force field intensity, etc. but even when I limit the timeline range the simulation continues past to the end of the timeline, or in my case until it crashes and prevents me from seeing any results at all. The manual says to hit cancel or press the escape key b ut that has never worked for me - it just keeps running. The cancel button on the progress popup never seems to be 'available" to press (PC "not responding").

    Edit: Oh! FINALLY - for the first time I got the simulation to stop before the end, after many attempts. But when I add the mesher and check the effects of the Force Field I can see that:
    1) The water level in the pool has dropped almost to the point where it's useless to see the effects of the Field - the figure should be completely underwater but the water's dropped to the point that only the legs are under water. I'm losing about a third of the water over 120 frames.

    2) I see almost no effect from the Field. I've got the Field Intensity set to peak at -100m/s2 and I can barely see any effect - certainly no splash.

    I've GOT to find out how to shorten up my simulations. At this rate the progress is painfully slow due to the simulation time just to make small adjustments and experiment with the effect. What things can be done to keep from losing all the water in the pool?

    I ASK AGAIN: Will I get better results with what I am doing using the WATER PLANES PRESET add-on?

    Post edited by mikethe3dguy on
  • tfis said:

    Was the simulation finished or did you stop it?
    Did you try switch the mesher on/off?
     

    When I run a simluation the very first time and stop it before it reaches its end, the completion value does not match to the amount of the created geometry files.

    Alberto, I think this is something really important to take into account for a possible improvement/upgrade.

    I have been preparing an animation of about 300 frames, but obviously one can't simulate those 300 frames at every change made in the parameters to see that the result is the one you are looking for.
    So the usual is to simulate, let's say, about 20-40 frames to see how it looks like.
    The problem is that stopping this simulation means that the fluid doesn't move every frame, but every X frames. In my case it moved every 10-12 frames, but that is variable, I guess depending on the difference between the total frames and the ones that have been simulated until stopping the simulation.

    So, the correct way to be able to make tests to see how it looks without having to simulate each time those 300 frames, would be to put the 100% of completion of the Mesher in, for example, frame 40, and to put that 40 also in the frames that should simulate Fluids. This allows to make the test with 40 frames instead of 300, avoids having to stop the simulation, and letting it finish works well, that is to say, the fluid moves in each frame.
    BUT that doesn't prevent one from having to go to the Mesher and do an OFF/ON on the Enable. Without doing that it doesn't look good either.

    So, to sum up, there are 2 things that would be good to fix:
    1) That one doesn't have to do an OFF/ON on the "Enable" parameter of the Mesher. I guess it would be easy for you to add a command so that at the end of the simulation that is done automatically ("easy" solution), or look for the problem in the code why that happens and correct it (solution that would take more time I guess); actually a simple command that would do that automatically instead of having to do it yourself would be enough.

    2) That a simulation can be cancelled at any time and the test can be displayed correctly, which is not the case now. I think the problem right now is that if the Mesher expects to find 300 generated files, but the simulation has stopped at 40, it distributes those 40 generated files among the 300 that the animation lasts, and that's why the fluid moves every X frames instead of every frame. I don't know exactly the best way to solve this. Maybe you can make that the program, if you press the button to stop a simulation before finishing, can know how many frames/files have been generated, and then the Mesher is able to interpret it properly and display them correctly, that is, if 40 files have been generated, display them one by one during the first 40 frames of the animation, not distributed among the 300 of the total animation.

    BTW, problem 1 seems to affect also the real time view (Mesher with Enable ON and Preview OFF). When one does the simulation you can't see in real time how it's looking; it won't be until it's finished, and OFF/ON on the Mesher Enable, when you can actually see what it looks like.

    I hope you can take a look at it. If I haven't explained myself well enough in some things don't hesitate to ask.

    Best regards and thanks a lot for your work!

  • AlbertoAlberto Posts: 1,436

    mikethe3dguy said:

    Alberto said:

    Set Enable moving obstacles in the Domain to On.

    To get a force field, add an object to the Domain, and change its FLUIDOS Object type property to Force field.

    I had Enable Moving Obstacles turned on. Okay, after changing my figure to Force Field I can't get through the simulation without Daz Studio crashing. Found these warnings in the log after restarting, in case any of them are useful:

    2023-08-11 23:01:43.779 [WARNING] :: QWidget::setMinimumSize: (/QLabel) Negative sizes (0,-536870910) are not possible
    2023-08-11 23:01:43.779 [WARNING] :: Object::connect: No such slot ABRunSimulationDialog::changedUnionVDB() in abFluidos.cpp:2115
    2023-08-11 23:01:43.779 [WARNING] :: Object::connect:  (sender name:   'BoolBtn')
    2023-08-11 23:01:43.779 [WARNING] :: Object::connect:  (receiver name: 'FLUIDOS simulation')
    2023-08-11 23:01:43.779 [WARNING] :: Object::connect: No such slot ABRunSimulationDialog::changedOnlyRemeshing() in abFluidos.cpp:2116
    2023-08-11 23:01:43.779 [WARNING] :: Object::connect:  (sender name:   'BoolBtn')
    2023-08-11 23:01:43.779 [WARNING] :: Object::connect:  (receiver name: 'FLUIDOS simulation')

    I am using negative values in the Intensity parameter of the Force Field.

    Question: Is there a way to limit the simulation to just a portion of the timeline? In my case the DS crash has always occurreed at 75% of the wsy through the timeline so for the time being I'd at least like to simulate up to that point so I can get enough feedback to adjust force field intensity, etc. but even when I limit the timeline range the simulation continues past to the end of the timeline, or in my case until it crashes and prevents me from seeing any results at all. The manual says to hit cancel or press the escape key b ut that has never worked for me - it just keeps running. The cancel button on the progress popup never seems to be 'available" to press (PC "not responding").

    Edit: Oh! FINALLY - for the first time I got the simulation to stop before the end, after many attempts. But when I add the mesher and check the effects of the Force Field I can see that:
    1) The water level in the pool has dropped almost to the point where it's useless to see the effects of the Field - the figure should be completely underwater but the water's dropped to the point that only the legs are under water. I'm losing about a third of the water over 120 frames.

    2) I see almost no effect from the Field. I've got the Field Intensity set to peak at -100m/s2 and I can barely see any effect - certainly no splash.

    I've GOT to find out how to shorten up my simulations. At this rate the progress is painfully slow due to the simulation time just to make small adjustments and experiment with the effect. What things can be done to keep from losing all the water in the pool?

    I ASK AGAIN: Will I get better results with what I am doing using the WATER PLANES PRESET ffadd-on?

    You should use positive values for the Force field. Negative values are attractive and positive ones, repulsive.

    To avoid the loss of water, in this case, use an any node source. Go to the object (from here I will call it The Object) you used as the initial fluid mass. Set its Object type as ignored.  Add a Fluidos Source/sink node, and parent it to The Object. Change the Geometry Type of the Source to Any Node. In the Geometric node you should see The Object name. The Object will be the source, and the water will be at the same level ever (unless you add a sink). In fact, this is the trick used by the Water Planes preset.

  • Another doubt Alberto. And I just read your last comment and maybe it's related...

    How to maintain the "volume" of the liquid once it has impacted against an object?
    Imagine you want a jet to impact against a vertical wall, but after the impact, it stays there without "moving" or losing "volume" (height so to speak).
    I like how it looks at the moment it hits the object, but my problem is that while the simulation keeps running for other jets, that first jet, already on the object, keeps moving and losing volume. It goes from being an elongated jet with a certain height, to a puddle, to give you an idea.

    NOTE: I have used in the object a geoshell with viscosity control to try to keep it from moving. I have tried values of 5k or even 30k, but the fluid still doesn't stay still once it has impacted.
    BTW, I have also tried using Body Force on the object directly or using geoshell, but it doesn't work either.

    And also comment that activating viscosity is not a good solution. It should be really viscous to stay on the object, but such high viscosity is not what I'm looking for in that jet, the "viscosity" or that it stays still I want it only once it has impacted on the object.

    A possible solution that I think I have used before is to use a Mesher for a jet, go to the point where I like the impact on the object and export that point as an object. Then do the simulation of another jet with another Mesher, first importing that first Mesher as an object so that it is shown there, this time without movement (static).
    In a way is to simulate several jets independently. Of course, that takes a lot of work, hence my question if there is a way to do it in a single solution. Maybe it can be done using more than one Mesher in the same simulation, but you can't assign the Sources to the Meshers, so I don't see the point, I'm not sure.

  • AlbertoAlberto Posts: 1,436

    capitanharlock80 said:

    tfis said:

    Was the simulation finished or did you stop it?
    Did you try switch the mesher on/off?
     

    When I run a simluation the very first time and stop it before it reaches its end, the completion value does not match to the amount of the created geometry files.

    Alberto, I think this is something really important to take into account for a possible improvement/upgrade.

    I have been preparing an animation of about 300 frames, but obviously one can't simulate those 300 frames at every change made in the parameters to see that the result is the one you are looking for.
    So the usual is to simulate, let's say, about 20-40 frames to see how it looks like.
    The problem is that stopping this simulation means that the fluid doesn't move every frame, but every X frames. In my case it moved every 10-12 frames, but that is variable, I guess depending on the difference between the total frames and the ones that have been simulated until stopping the simulation.

    So, the correct way to be able to make tests to see how it looks without having to simulate each time those 300 frames, would be to put the 100% of completion of the Mesher in, for example, frame 40, and to put that 40 also in the frames that should simulate Fluids. This allows to make the test with 40 frames instead of 300, avoids having to stop the simulation, and letting it finish works well, that is to say, the fluid moves in each frame.
    BUT that doesn't prevent one from having to go to the Mesher and do an OFF/ON on the Enable. Without doing that it doesn't look good either.

    So, to sum up, there are 2 things that would be good to fix:
    1) That one doesn't have to do an OFF/ON on the "Enable" parameter of the Mesher. I guess it would be easy for you to add a command so that at the end of the simulation that is done automatically ("easy" solution), or look for the problem in the code why that happens and correct it (solution that would take more time I guess); actually a simple command that would do that automatically instead of having to do it yourself would be enough.

    2) That a simulation can be cancelled at any time and the test can be displayed correctly, which is not the case now. I think the problem right now is that if the Mesher expects to find 300 generated files, but the simulation has stopped at 40, it distributes those 40 generated files among the 300 that the animation lasts, and that's why the fluid moves every X frames instead of every frame. I don't know exactly the best way to solve this. Maybe you can make that the program, if you press the button to stop a simulation before finishing, can know how many frames/files have been generated, and then the Mesher is able to interpret it properly and display them correctly, that is, if 40 files have been generated, display them one by one during the first 40 frames of the animation, not distributed among the 300 of the total animation.

    BTW, problem 1 seems to affect also the real time view (Mesher with Enable ON and Preview OFF). When one does the simulation you can't see in real time how it's looking; it won't be until it's finished, and OFF/ON on the Mesher Enable, when you can actually see what it looks like.

    I hope you can take a look at it. If I haven't explained myself well enough in some things don't hesitate to ask.

    Best regards and thanks a lot for your work!

    Let me see what I can do. I'm thinking of some possible solutions. I'll take your suggestions into account for the next update.

    Thank you! 

  • Alberto said:

    capitanharlock80 said:

    tfis said:

    Was the simulation finished or did you stop it?
    Did you try switch the mesher on/off?
     

    When I run a simluation the very first time and stop it before it reaches its end, the completion value does not match to the amount of the created geometry files.

    Alberto, I think this is something really important to take into account for a possible improvement/upgrade.

    I have been preparing an animation of about 300 frames, but obviously one can't simulate those 300 frames at every change made in the parameters to see that the result is the one you are looking for.
    So the usual is to simulate, let's say, about 20-40 frames to see how it looks like.
    The problem is that stopping this simulation means that the fluid doesn't move every frame, but every X frames. In my case it moved every 10-12 frames, but that is variable, I guess depending on the difference between the total frames and the ones that have been simulated until stopping the simulation.

    So, the correct way to be able to make tests to see how it looks without having to simulate each time those 300 frames, would be to put the 100% of completion of the Mesher in, for example, frame 40, and to put that 40 also in the frames that should simulate Fluids. This allows to make the test with 40 frames instead of 300, avoids having to stop the simulation, and letting it finish works well, that is to say, the fluid moves in each frame.
    BUT that doesn't prevent one from having to go to the Mesher and do an OFF/ON on the Enable. Without doing that it doesn't look good either.

    So, to sum up, there are 2 things that would be good to fix:
    1) That one doesn't have to do an OFF/ON on the "Enable" parameter of the Mesher. I guess it would be easy for you to add a command so that at the end of the simulation that is done automatically ("easy" solution), or look for the problem in the code why that happens and correct it (solution that would take more time I guess); actually a simple command that would do that automatically instead of having to do it yourself would be enough.

    2) That a simulation can be cancelled at any time and the test can be displayed correctly, which is not the case now. I think the problem right now is that if the Mesher expects to find 300 generated files, but the simulation has stopped at 40, it distributes those 40 generated files among the 300 that the animation lasts, and that's why the fluid moves every X frames instead of every frame. I don't know exactly the best way to solve this. Maybe you can make that the program, if you press the button to stop a simulation before finishing, can know how many frames/files have been generated, and then the Mesher is able to interpret it properly and display them correctly, that is, if 40 files have been generated, display them one by one during the first 40 frames of the animation, not distributed among the 300 of the total animation.

    BTW, problem 1 seems to affect also the real time view (Mesher with Enable ON and Preview OFF). When one does the simulation you can't see in real time how it's looking; it won't be until it's finished, and OFF/ON on the Mesher Enable, when you can actually see what it looks like.

    I hope you can take a look at it. If I haven't explained myself well enough in some things don't hesitate to ask.

    Best regards and thanks a lot for your work!

    Let me see what I can do. I'm thinking of some possible solutions. I'll take your suggestions into account for the next update.

    Thank you! 

    Thanks to you Alberto!

    And to better explain my last question, what I wanted to say is if there is a parameter that allows to "keep the shape" of that jet, as if it had some rigidity. Imagine that it's plasticine, it may be flattened a little with the impact with the object, but once there, its shape will be maintained.

  • mikethe3dguymikethe3dguy Posts: 515
    edited August 2023

    Alberto said:

    You should use positive values for the Force field. Negative values are attractive and positive ones, repulsive.

    To avoid the loss of water, in this case, use an any node source. Go to the object (from here I will call it The Object) you used as the initial fluid mass. Set its Object type as ignored.  Add a Fluidos Source/sink node, and parent it to The Object. Change the Geometry Type of the Source to Any Node. In the Geometric node you should see The Object name. The Object will be the source, and the water will be at the same level ever (unless you add a sink). In fact, this is the trick used by the Water Planes preset.

    Thanks, I appreciate the reply. I must have had it reversed it in my head, I thought negative values repelled. My problem now is that I can't get through a simulation without DS crashing. What can I change or look at to fix this?

    Edit: I set Enable OpenCL to Off and was able to get through a (8 hour!) simulation without crashing. Not sure if that's just a fluke or if it really was a direct effect from changing that parameter. But now the pool overflows rather than losing all its water!

    Update: Tried to simulate again, and DS crashed 6 hours into it.

    Post edited by mikethe3dguy on
  • AlbertoAlberto Posts: 1,436

    mikethe3dguy said:

    Alberto said:

    You should use positive values for the Force field. Negative values are attractive and positive ones, repulsive.

    To avoid the loss of water, in this case, use an any node source. Go to the object (from here I will call it The Object) you used as the initial fluid mass. Set its Object type as ignored.  Add a Fluidos Source/sink node, and parent it to The Object. Change the Geometry Type of the Source to Any Node. In the Geometric node you should see The Object name. The Object will be the source, and the water will be at the same level ever (unless you add a sink). In fact, this is the trick used by the Water Planes preset.

    Thanks, I appreciate the reply. I must have had it reversed it in my head, I thought negative values repelled. My problem now is that I can't get through a simulation without DS crashing. What can I change or look at to fix this?

    Edit: I set Enable OpenCL to Off and was able to get through a (8 hour!) simulation without crashing. Not sure if that's just a fluke or if it really was a direct effect from changing that parameter. But now the pool overflows rather than losing all its water!

    Update: Tried to simulate again, and DS crashed 6 hours into it.

    Increase the cell size; possibly the settings are requiring too much memory.

    To avoid overflow, add sinks in the pool border at the level you want to maintain the water.

  • AlbertoAlberto Posts: 1,436

    capitanharlock80 said:

    Alberto said:

    capitanharlock80 said:

    tfis said:

    Was the simulation finished or did you stop it?
    Did you try switch the mesher on/off?
     

    When I run a simluation the very first time and stop it before it reaches its end, the completion value does not match to the amount of the created geometry files.

    Alberto, I think this is something really important to take into account for a possible improvement/upgrade.

    I have been preparing an animation of about 300 frames, but obviously one can't simulate those 300 frames at every change made in the parameters to see that the result is the one you are looking for.
    So the usual is to simulate, let's say, about 20-40 frames to see how it looks like.
    The problem is that stopping this simulation means that the fluid doesn't move every frame, but every X frames. In my case it moved every 10-12 frames, but that is variable, I guess depending on the difference between the total frames and the ones that have been simulated until stopping the simulation.

    So, the correct way to be able to make tests to see how it looks without having to simulate each time those 300 frames, would be to put the 100% of completion of the Mesher in, for example, frame 40, and to put that 40 also in the frames that should simulate Fluids. This allows to make the test with 40 frames instead of 300, avoids having to stop the simulation, and letting it finish works well, that is to say, the fluid moves in each frame.
    BUT that doesn't prevent one from having to go to the Mesher and do an OFF/ON on the Enable. Without doing that it doesn't look good either.

    So, to sum up, there are 2 things that would be good to fix:
    1) That one doesn't have to do an OFF/ON on the "Enable" parameter of the Mesher. I guess it would be easy for you to add a command so that at the end of the simulation that is done automatically ("easy" solution), or look for the problem in the code why that happens and correct it (solution that would take more time I guess); actually a simple command that would do that automatically instead of having to do it yourself would be enough.

    2) That a simulation can be cancelled at any time and the test can be displayed correctly, which is not the case now. I think the problem right now is that if the Mesher expects to find 300 generated files, but the simulation has stopped at 40, it distributes those 40 generated files among the 300 that the animation lasts, and that's why the fluid moves every X frames instead of every frame. I don't know exactly the best way to solve this. Maybe you can make that the program, if you press the button to stop a simulation before finishing, can know how many frames/files have been generated, and then the Mesher is able to interpret it properly and display them correctly, that is, if 40 files have been generated, display them one by one during the first 40 frames of the animation, not distributed among the 300 of the total animation.

    BTW, problem 1 seems to affect also the real time view (Mesher with Enable ON and Preview OFF). When one does the simulation you can't see in real time how it's looking; it won't be until it's finished, and OFF/ON on the Mesher Enable, when you can actually see what it looks like.

    I hope you can take a look at it. If I haven't explained myself well enough in some things don't hesitate to ask.

    Best regards and thanks a lot for your work!

    Let me see what I can do. I'm thinking of some possible solutions. I'll take your suggestions into account for the next update.

    Thank you! 

    Thanks to you Alberto!

    And to better explain my last question, what I wanted to say is if there is a parameter that allows to "keep the shape" of that jet, as if it had some rigidity. Imagine that it's plasticine, it may be flattened a little with the impact with the object, but once there, its shape will be maintained.

    Did you try the APIC fluid solver? It's more stable.

  • Did you try the APIC fluid solver? It's more stable.

    Yes, it is the one I use.

  • mikethe3dguymikethe3dguy Posts: 515
    edited August 2023

    Alberto said:

    mikethe3dguy said:

    Alberto said:

    You should use positive values for the Force field. Negative values are attractive and positive ones, repulsive.

    To avoid the loss of water, in this case, use an any node source. Go to the object (from here I will call it The Object) you used as the initial fluid mass. Set its Object type as ignored.  Add a Fluidos Source/sink node, and parent it to The Object. Change the Geometry Type of the Source to Any Node. In the Geometric node you should see The Object name. The Object will be the source, and the water will be at the same level ever (unless you add a sink). In fact, this is the trick used by the Water Planes preset.

    Thanks, I appreciate the reply. I must have had it reversed it in my head, I thought negative values repelled. My problem now is that I can't get through a simulation without DS crashing. What can I change or look at to fix this?

    Edit: I set Enable OpenCL to Off and was able to get through a (8 hour!) simulation without crashing. Not sure if that's just a fluke or if it really was a direct effect from changing that parameter. But now the pool overflows rather than losing all its water!

    Update: Tried to simulate again, and DS crashed 6 hours into it.

    Increase the cell size; possibly the settings are requiring too much memory.

    Thanks, will try that. If we're talking about GPU memory that would be very strange: my card has 24GB, and while running a Fluidos simulation I've never seen  memory usage go above 6GB

    To avoid overflow, add sinks in the pool border at the level you want to maintain the water.

    Thanks for that, will do!

    Post edited by Richard Haseltine on
  • AlbertoAlberto Posts: 1,436

    mikethe3dguy said:

    Thanks, will try that. If we're talking about GPU memory that would be very strange: my card has 24GB, and while running a Fluidos simulation I've never seen  memory usage go above 6GB

    No, it's about the system memory. 

  • Alberto said:

    To avoid overflow, add sinks in the pool border at the level you want to maintain the water.

    I haven't figured out how to place or configure the sinks to keep the water level low. I first tried placing 8 sinks around the perimeter of the pool, with their leading edges projecting slightly into the water. That meant they had to pass through the solid obstacle of the pool shell itself though. They had no effect. This image is the second attempt - I moved 6 of those sinks fully into the pool, and this is the result. This is very frustrating, as each simulation takes hours and I'm not making any progress.

  • AlbertoAlberto Posts: 1,436

    mikethe3dguy said:

    Alberto said:

    To avoid overflow, add sinks in the pool border at the level you want to maintain the water.

    I haven't figured out how to place or configure the sinks to keep the water level low. I first tried placing 8 sinks around the perimeter of the pool, with their leading edges projecting slightly into the water. That meant they had to pass through the solid obstacle of the pool shell itself though. They had no effect. This image is the second attempt - I moved 6 of those sinks fully into the pool, and this is the result. This is very frustrating, as each simulation takes hours and I'm not making any progress.

    I see, the shape of your pool is peculiar. 

    I suggest you use a lower resolution when doing tests: Increase the cell size two or threefold. 

    The sinks shouldn't go inside the Source. The level of the water in the pool is too high. Did you try to move down a bit the Fluidos Source? Just to avoid the overflow. The effect of the source is the filling of empty spaces. The velocity of the source should be set to 0 to avoid irregularities. The objective of the source is to prevent the water level to fall, but if the top wall of the Source is ate least a bit above the border of the pool, the water will flow away, overflowing. The top of the source must be below the border of the pool. 

    There are two main options for preserving the volume of fluid when using animated solids in the simulations:

    • You can try the Force fields instead of simple solid obstacles and a regular initial fluid mass.
    • Or you can try the regular solid obstacles and the Source to maintain the water level.

     

  • mikethe3dguymikethe3dguy Posts: 515
    edited August 2023

    Alberto said:

    mikethe3dguy said:

    Alberto said:

    To avoid overflow, add sinks in the pool border at the level you want to maintain the water.

    I haven't figured out how to place or configure the sinks to keep the water level low. I first tried placing 8 sinks around the perimeter of the pool, with their leading edges projecting slightly into the water. That meant they had to pass through the solid obstacle of the pool shell itself though. They had no effect. This image is the second attempt - I moved 6 of those sinks fully into the pool, and this is the result. This is very frustrating, as each simulation takes hours and I'm not making any progress.

    I see, the shape of your pool is peculiar. 

    I suggest you use a lower resolution when doing tests: Increase the cell size two or threefold. 

    The sinks shouldn't go inside the Source. The level of the water in the pool is too high. Did you try to move down a bit the Fluidos Source? Just to avoid the overflow. The effect of the source is the filling of empty spaces. The velocity of the source should be set to 0 to avoid irregularities. The objective of the source is to prevent the water level to fall, but if the top wall of the Source is ate least a bit above the border of the pool, the water will flow away, overflowing. The top of the source must be below the border of the pool. 

    There are two main options for preserving the volume of fluid when using animated solids in the simulations:

    • You can try the Force fields instead of simple solid obstacles and a regular initial fluid mass.
    • Or you can try the regular solid obstacles and the Source to maintain the water level.

    So the water mass is the pool water that originally comes with the pool. I had to downscale and raise it slightly because its geometry collides a bit with the pool shell mesh. I'm using it after multiple failed attempts to fill the pool using various primitive cubes and spheres. Prior to the problems I started having with the pool overflowing (possibly caused by setting "Enable OpenCL" to off? Not sure - might try to change back to on) it filled the pool just right. The problem here may be that I have the sinks enabled from the first frame so the water hasn't dropped and settled yet? This image is from a fairly early frame, but those depressions caused by the sinks don't go away even by the end of the 150 frame simulation. Not at all what I expected.

    Edit: No, it's not "Enable OpenCL" that's affecting the water level.

    Post edited by mikethe3dguy on
Sign In or Register to comment.