UltraScatter2 - Now in store!

123457

Comments

  • AnEye4ArtAnEye4Art Posts: 867

    Dormant Volcano.

    Volcano.png
    2560 x 1440 - 7M
  • Needs a large missile with a toon shark and person roped to it. Regards, Richard
  • AnEye4ArtAnEye4Art Posts: 867

    Ha! Good idea!

  • FrankTheTankFrankTheTank Posts: 1,624
    edited February 14

    What features are different between Ultrascatter Pro and Ultrascatter 2? I'm debating which one to buy, but I don't want to miss out on certain features of the Pro version. I don't see any feature list comparing the two directly.

    From what I see, I think its missing the "point at" and "matrix" features (maybe others as well?).

    So then I wouldn't be able to create crowds of people looking in the same direction, or parking lots or highways packed with cars, etc. Those are pretty big features to me. So is there any plan to release an "UltraScatter 2 Pro" version as a plug-in? I think the US2 regular version is too limited for what I need it for. 

    If there is no plan to release it, its not a problem. I just want to know before I buy the Pro version, which seems to have everything I want, except the added speed. So I would hate to buy the script version and then find out that a C++ version is around the corner with all the Pro features.. 

    Post edited by FrankTheTank on
  • AnEye4ArtAnEye4Art Posts: 867
    HowieFarkes take on this would be welcomed.
  • FrankTheTankFrankTheTank Posts: 1,624

    By the way, I finally went ahead and bought UltraScatter Pro a couple weeks ago and I have been playing with it ever since. I absolutely love it. I highly recommend those on the fence trying to decide between the US Pro version and the US2 version to just get the Pro version. It is very fast, I can't imagine needing any more speed than what the Pro version already has, and it has all the bells and whistles. But that's just me, I hate missing out on options. If I have to choose between features and speed I will take the features. It usually takes me longer to decide how to setup my scene than it does to run the script. Maybe a minute to run the script at most in my usage.  

  • ArtiniArtini Posts: 10,894

    Interesting thoughts, @FrankTheTank

    Need to take a look at UltraScatter Pro version again.

    I have missed a lot "point at" function, so I made my own with AI.

    It is amazing, how many useful scripts for Daz Studio one can make that way...

     

  • I've found a odd issue, which might be me doing the wrong thing.

    In short, scatters on an object (A) are fine, and appear on the surface.

    If I then I parent A to another object (B) then the scatters get displaced from A by some distance. In the attached image the scatters are the red spheres, and you can see they're 50cm away from the surface the scatter is meant to be on.

    Is this intended? Is there a way to stop it happening? I was trying to add bubbles to the contents of a glass, but I can't parent the contents to the glass, which makes editing the scene really annoying.

    image_2026-05-15_145007525.png
    630 x 287 - 26K
    image_2026-05-15_145033887.png
    989 x 761 - 68K
  • richardandtracyrichardandtracy Posts: 8,024

    I assume there is a 50cm offset of the cube relative to it's origin.

    If I remember correctly, the spheres will be in an instance group (I think that's what Howie did). I also think the instance group can be parented to other objects and have its own translations. So, if the inatance group is not already parented to the cylinder, make sure it is (don't tick/check 'Parent in Place'). At this point you may find all the spheres are in the correct place. If they haven't moved, put in a translation identical to the translation of the cube (I assume it'll be X=-50). This should move the entire instance group to be around the cylinder.

    Regards,

    Richard.

     

  • begun.empty_0ubegun.empty_0u Posts: 17
    edited May 15

    Yeah, I can move it back (and it's exactly 50cm away, which is interesting - I assume it's related to the cube being 1m across but centered in the middle, so it reaches 50cm in each direction), but if anything makes it regenerate (like changing the parenting or some other things) they move back, which is annoying.

    It's weird that the offset is 50cm on one axis, too, I'm not sure what's going on there.

    The structure is like this, though, so I can't change the parenting in any useful way - if I unparent the "Bubbles" object (which is what USC2 made) then it stops working as a scatter, but doesn't move.

    If I unparent the cylinder (object A, the one the scatters are on) then the scatters move to the right spot.

    If I unparent the "Instance Group" object then Daz Studio crashes, which isn't ideal :)

    I've added the scene file, in case anyone has ideas and needs a test case.

    image_2026-05-15_175223610.png
    566 x 313 - 40K
    duf
    duf
    Scatter Problem.duf
    50K
    Post edited by begun.empty_0u on
  • richardandtracyrichardandtracy Posts: 8,024
    edited May 15

    I wasn't suggesting you unparent the Instance group, just translate the instance group. I have done a small amount of scripting with instance groups (eg a few in the thread from here ), and confess that they always throw up unexpected 'features'. I will try your duf file, but I'm not at my rendering machine, but I will try when I get back to it. I did a spiral instancing script for the staircase individual steps when I created the image below, and had a stange offset I had to correct manually. Never spent the time to get to the bottom of it. Maybe I need to.

    Regards,

    Richard

    Post edited by richardandtracy on
  • barbultbarbult Posts: 27,474
    edited May 15

    begun.empty_0u said:

    I've found a odd issue, which might be me doing the wrong thing.

    In short, scatters on an object (A) are fine, and appear on the surface.

    If I then I parent A to another object (B) then the scatters get displaced from A by some distance. In the attached image the scatters are the red spheres, and you can see they're 50cm away from the surface the scatter is meant to be on.

    Is this intended? Is there a way to stop it happening? I was trying to add bubbles to the contents of a glass, but I can't parent the contents to the glass, which makes editing the scene really annoying.

    Edit: Oops - I didn't see that a scene file was attached. I'll take a look at it.

    UltraScatter, UltraScatterPro, or UltraScatter2? People sometimes post about other versions here, in spite of the thread title.

    Are you "Parenting in Place" or not? It is an option on the Change Parent dialog.

    I can't seem to reproduce this in UltraScatter2. It might depend on how your props were created (origin at object center or origin at world center for primitives, or where the object origin is on a purchased prop). Are you using primitives or purchased props in your example?

    Screenshot 2026-05-15 041955.png
    302 x 432 - 17K
    Post edited by barbult on
  • barbultbarbult Posts: 27,474

    Yes, I can reproduce this scatter offset problem using your DUF file. I can also reproduce it starting from scratch creating my own primitives for the cylinder, cube and "bubble" sphere. I believe this is a bug, and not an error you are making.
    I believe you can work around this bug by creating your cube, cylinder and bubble with the origin at World Center, instead of Object Center. There have been other bugs in the past related to primitives with origin at Object Center. Those bugs were fixed. I think your parenting example exposed another such bug. You can report this bug to the help center. Log in with your Daz credentials.

  • richardandtracyrichardandtracy Posts: 8,024
    What I am not sure of, is where the bug lies. The reason being that I got something similar with a script of my own, suggesting that the bug/feature lies within DS rather than UltraScatter 2. However there is a case that can be argued that it's the job of the script to deal with the way DS works. Regards, Richard.
  • Thanks for this!

    I'll have a play - my real objects are more complicated, but I have exported them from Blender with the base of the glass at the origin, not the base of the contents of the glass, which is where I want the bubbles.

    A way for USC2 to work around this might be for it to have a translation for the scatters that it applies to the whole set, and for it to remember that when regenerating the scatters.

  • umblefuglyumblefugly Posts: 172
    edited May 18

    AnEye4Art said:

    Thank you Howie for ultra scatter 2 and how well it works with no crashes and very fast results. This render has 1,000,000 clumps of grass and 50,000 trees.

    Wow, whats the usual rendertime on these, ie calculation time for scattering, sending geometry to gpu and final render? 
    Im running an older 10900k with 64 GB DDR4 and a 3090 Ti FE.

    Post edited by umblefugly on
  • yuyu.atemyuyu.atem Posts: 493

    Hello, I am a biginner with UltraScenary 2 (and also with UltraScenary), and I am encountering an issue with a tree in my scene. I created a forst with these settings:

    The trees come from this asset: https://www.daz3d.com/ultrascenery2--tree-pack-1

    And I introduced in my scene the birds and props from https://www.daz3d.com/winged-wonders--poses

    In positionned them just above a tree branch, where the tree comes from the Mixed forest 5, as we can see on my first screenshot. On the viewport, the branch is visible, But when I render the scene, the branch is not visible, while the other trees on the scene are:

    Do you know where this issue comes from and how to fix it, please?

    Thank you in advance!

     

    I don't know if it can be usefull, but I show you my other UltraScenary 2 settings too:

          

  • barbultbarbult Posts: 27,474
    edited June 21
    @yuyu.atem it might be caused by camera culling during render. UltraScenery2 has an option to render only what the camera can see, to reduce the load on the computer. Your camera appears to be very close to the tree. It might be confusing the camera culling. You can try turning culling off and see if that fixes it. You could also leave culling on and move your camera further back and see if that fixes it. Let me know what results you get with these suggestions. I wonder why you are building a whole UltraScenery2 scene, if you just want part of a tree branch. Wouldn't it be faster and easier to just load one tree prop in this case? This is the UltraScatter2 thread. This question should have been posted in the UltraScenery thread to avoid confusion.
    Post edited by barbult on
  • yuyu.atemyuyu.atem Posts: 493

    barbult said:

    @yuyu.atem it might be caused by camera culling during render. UltraScenery2 has an option to render only what the camera can see, to reduce the load on the computer. Your camera appears to be very close to the tree. It might be confusing the camera culling. You can try turning culling off and see if that fixes it. You could also leave culling on and move your camera further back and see if that fixes it. Let me know what results you get with these suggestions.

    I increased the radius of the camera culling and it worked, thank you very much! laugh

    I wonder why you are building a whole UltraScenery2 scene, if you just want part of a tree branch. Wouldn't it be faster and easier to just load one tree prop in this case?

    Yeah, when I created the scene, I wasn't sure where i would place the birds and I thought that the forest would be more visible... With the angle of view, creating a entire scene is probably not the best thing to do, indeed...

    This is the UltraScatter2 thread. This question should have been posted in the UltraScenery thread to avoid confusion.

    Oh, I'm sorry! I was tired and a read "UltraScenary 2" intead of "UltraScattrer 2"... Sorry about that! 

  • yuyu.atemyuyu.atem Posts: 493

    barbult said:

    @yuyu.atem it might be caused by camera culling during render. UltraScenery2 has an option to render only what the camera can see, to reduce the load on the computer. Your camera appears to be very close to the tree. It might be confusing the camera culling. You can try turning culling off and see if that fixes it. You could also leave culling on and move your camera further back and see if that fixes it. Let me know what results you get with these suggestions.

    I increased the radius of the camera culling and it worked, thank you very much! laugh

    I wonder why you are building a whole UltraScenery2 scene, if you just want part of a tree branch. Wouldn't it be faster and easier to just load one tree prop in this case?

    Yeah, when I created the scene, I wasn't sure where i would place the birds and I thought that the forest would be more visible... With the angle of view, creating a entire scene is probably not the best thing to do, indeed...

    This is the UltraScatter2 thread. This question should have been posted in the UltraScenery thread to avoid confusion.

    Oh, I'm sorry! I was tired and a read "UltraScenary 2" intead of "UltraScattrer 2"... Sorry about that! 

  • Where is the documentation for this thing?

  • umblefuglyumblefugly Posts: 172

    I asked before but I think my question got lost. What are the timings like on this plugin?
    Time to scatter
    Time to draw in viewport
    Time for rendering
    Hardware tested on?

    Thanks

  • barbultbarbult Posts: 27,474
    edited August 31

    umblefugly said:

    I asked before but I think my question got lost. What are the timings like on this plugin?
    Time to scatter
    Time to draw in viewport
    Time for rendering
    Hardware tested on?

    Thanks

    @umblefuglyThat will probably depend a lot on how many instances you scatter and whether you are scattering on a surface or doing a volume scatter. Other settings will also affect the timing, like the quality setting for the scatter instances location computation. Then of course, your CPU specs and GPU specs will affect some of these timings. too. What do you want to scatter? How many instances? Surface or Volume? What do you want to scatter these instances on? I'll run one example for you. My computer is old. My CPU is 8700K. My GPU is RTX 3800 3080. So your timings would probably be better than mine.

    Post edited by barbult on
  • umblefuglyumblefugly Posts: 172
    edited August 31

    barbult said:

    umblefugly said:

    I asked before but I think my question got lost. What are the timings like on this plugin?
    Time to scatter
    Time to draw in viewport
    Time for rendering
    Hardware tested on?

    Thanks

    @umblefuglyThat will probably depend a lot on how many instances you scatter and whether you are scattering on a surface or doing a volume scatter. Other settings will also affect the timing, like the quality setting for the scatter instances location computation. Then of course, your CPU specs and GPU specs will affect some of these timings. too. What do you want to scatter? How many instances? Surface or Volume? What do you want to scatter these instances on? I'll run one example for you. My computer is old. My CPU is 8700K. My GPU is RTX 3800. So your timings would probably be better than mine.

     Yes, thats pretty general info, I was more interested in say the devs experience, but for reference I am on an old 10900k, 64 GB DDR4, RX 3090 TI Founders Edition.
    What are your times say, for anything above 100k instances? Are the scattered objects high or low poly?

    Post edited by umblefugly on
  • barbultbarbult Posts: 27,474

    umblefugly said:

    barbult said:

    umblefugly said:

    I asked before but I think my question got lost. What are the timings like on this plugin?
    Time to scatter
    Time to draw in viewport
    Time for rendering
    Hardware tested on?

    Thanks

    @umblefuglyThat will probably depend a lot on how many instances you scatter and whether you are scattering on a surface or doing a volume scatter. Other settings will also affect the timing, like the quality setting for the scatter instances location computation. Then of course, your CPU specs and GPU specs will affect some of these timings. too. What do you want to scatter? How many instances? Surface or Volume? What do you want to scatter these instances on? I'll run one example for you. My computer is old. My CPU is 8700K. My GPU is RTX 3800. So your timings would probably be better than mine.

     Yes, thats pretty general info, I was more interested in say the devs experience, but for reference I am on an old 10900k, 64 GB DDR4, RX 3090 TI Founders Edition.
    What are your times say, for anything above 100k instances? Are the scattered objects high or low poly?

    I was asking what you wanted me to test, but I'll just pick something and run over 100K instances (if my computer can handle it) and report back on what I used. I'll assume you want a surface scatter. 

  • umblefuglyumblefugly Posts: 172

    Surface scatter is great, thank you :D

  • barbultbarbult Posts: 27,474

    I'm working on it...

    • First of all, I was reminded that UltraScatter2 has an upper limit of 100,000 instances, so that is what I will use.
    • I am using 3 LoREZ Horse 2 figures in a DS group as the object to scatter. I didn't put manes or tails on them, just the horse body. LoREZ Horse 2 has 2832 vertices, so not trivial like a cube. Each horse has a different material and a different pose. Scattering a group tels UltraScatter2 to randomly pick one of the items in the group each time it makes an instance. So I get a variety of horse colors and poses.
    • I'm scattering them on a plane. I had to keep starting over, because my initial plane attempts were way too small for 100,000 horses! I finally made a gigantic plane 1500 Meters square.
    • I set a minimum distance between horses at 3 Meters to keep them from overlapping.
    • I set a random rotation for the instances to +-180 degrees on Y axis. 
    • I left Quality on 1. A higher quality can be used if the algorithm needs more iterations to fit the instances into the scatter (as I understand it). Quality 1 seemed fine in this example.
    • So, that is my scene setup for this test. I discovered that viewing the entire 1500 Meter plane on the screen made the horses so small, I could barely see them as tiny dots in the render (attached). So now that I have worked out the scenario, I will shut down DS4 and start over fresh to try to capture timing results.
       

     

    100000 LoREZ Horse2 on 1500 Meter Plane.jpg
    2000 x 1500 - 2M
  • umblefuglyumblefugly Posts: 172

    barbult said:

    I'm working on it...

    • First of all, I was reminded that UltraScatter2 has an upper limit of 100,000 instances, so that is what I will use.
    • I am using 3 LoREZ Horse 2 figures in a DS group as the object to scatter. I didn't put manes or tails on them, just the horse body. LoREZ Horse 2 has 2832 vertices, so not trivial like a cube. Each horse has a different material and a different pose. Scattering a group tels UltraScatter2 to randomly pick one of the items in the group each time it makes an instance. So I get a variety of horse colors and poses.
    • I'm scattering them on a plane. I had to keep starting over, because my initial plane attempts were way too small for 100,000 horses! I finally made a gigantic plane 1500 Meters square.
    • I set a minimum distance between horses at 3 Meters to keep them from overlapping.
    • I set a random rotation for the instances to +-180 degrees on Y axis. 
    • I left Quality on 1. A higher quality can be used if the algorithm needs more iterations to fit the instances into the scatter (as I understand it). Quality 1 seemed fine in this example.
    • So, that is my scene setup for this test. I discovered that viewing the entire 1500 Meter plane on the screen made the horses so small, I could barely see them as tiny dots in the render (attached). So now that I have worked out the scenario, I will shut down DS4 and start over fresh to try to capture timing results.
       

     

    lol yeah those are fairly tiny. If you have some timing that would be great. Thank you! 

  • barbultbarbult Posts: 27,474
    edited August 31

    umblefugly said:

    lol yeah those are fairly tiny. If you have some timing that would be great. Thank you! 

    Next up. I was playing around with camera angles to try and see some horses. Dots are kind of boring.
    I will save the scene with the horses group, the cameras, and the plane, but not the UltraScatter2 results. I will shut down DS, load the scene, and enter the UltraScatter2 settings from scratch and see if I can get the timing. It is really all pretty fast (a relative term, I know), even with creating the preview, but once 100000 horses are previewed, DS4 gets SLOW. I think DS4 cannot handle so many instances efficiently. It is possible to disable preview of the instances once you are satisfied with the distribution, if you are trying to manipulate the scene after creating them There is an UltraScatter2 checkbox to do that. There is even a checkbox to turn off the instances in render, if you want to test render the rest of your scene after creating the instances. You can turn the preview off and the render on for your final render. I think that might be most efficient for huge scatters.

    Edit: I am still sitting here waiting for DS4 to clear the scene. I sure hope DS6 has some improvement in this regard. Who knows how long it is going to take to clear this scene with 100000 instances. Minutes, hours, days? I'm tempted to kill it.

    Post edited by barbult on
  • umblefuglyumblefugly Posts: 172

    Yes, when clearing a ton of nodes, no matter what created them, its painful.

Sign In or Register to comment.