Jump to content

2-3 million particles and not rendering!


Recommended Posts

Hi,

I have a scene with varying number of particles ( maximum number of particles is less than 3 million ) and I am copying a small box geometry to 98% of them, just to get a good shaded look, and to the other 2% a bigger cube. the problem is when I try to render it, houdini doesn't do anything at all! it starts as it's going to render, but after 7-8 mins there's no message or anything and in my render scheduler it's like it's to be rendered but nothing happens, I waited almost 30 mins but nothing happened! the funny thing is that it renders very quickly (less than 1 min) if I render that 98% as particles instead of small boxes! has anyone ever encountered that problem? does that copy sop really make my scene THAT heavy?! I also tried point instancing but it didn't work either!

thanks in advance for your help :)

Link to comment
Share on other sites

MP or PBR?

What type of shader?

Using delayed load?

It doesn't work with motion blur off either.

MP, I also tried raytrace. It renders with both with small number of particles, and raytrace shadow, but when I switch to depth map shadow, doesn't render ( at least doesn't start rendering in 30 mins) and none of them render with 2-3 million particles.

and no, I have not tried delayed load.

Btw, SYmek, thanks for your sarcastic comment, and you're probably right, I try to do that when the question is more complicated, but I didn't think it's necessary in this case + the scene is a bit heavy... Anyway I'm uploading a different version with just my render settings, and a simple particle system with the copy nodes that I've used. I can't upload the ropped file because every one is at least 150 MB. I ropped 35 frames and tried to render frame 35 of this file, and the same thing happened.

debris_test.hipnc

  • Downvote 2
Link to comment
Share on other sites

No need to upload the actual scene, just a reproducible case, which you did, so it's easier to get to the subject:

- your scene doesn't render particles, so topic misleads reader.

- you try to copy default box on a 3 millions of particles (at ~frame 30). That geometry weights already 350 MB on disk in frame 4. and takes up to 1GB in memory... in frame 4. My laptop with 4GB RAM could't proceed much further in your scene.

- the last frame I could handle consists with 3 millions of particles. It's unreasonable high for copy geometry on it and unfortunately too much to work comfortable with instances in H11. Export of such a scene will take a couple of minutes, probably a fraction of time it will take to render. This is how it is, but...

- I deleted 999 of every 1000 of your points and instanced the very same box on them. They cover a whole scene densely, it's still too much for any purpose.

Speaking shortly I advice you to reconsider scene setup. Some tips:

- keep effects separated. Don't produce (render) particles effects, instances, small particles, and big particles from a same SOP. They all should be kept in distinct objects.

- save your particles on disk before usage (copying, instancing) deleting from it any attribute not needed for rendering. For most cases this means deleting everything but v, Cd, or orient.

- Use render primitives where possible. Particles can be rendered by Mantra as a couple of shapes natively (without instancing). They can be displaced, scaled, oriented, all in render time. You should be able to render up to 50 millions of particles on average 8GB machine.

- Use Delayed Load shaders.

hth,

skk.

Edited by SYmek
Link to comment
Share on other sites

- keep effects separated. Don't produce particles effects, instances, small particles, and big particles in a same SOP. They all should be kept in distinct objects.

- save your particles on disk before usage (copying, instancing) deleting from it any attribute not needed for rendering. For most cases this means deleting everything but v, Cd, or orient.

- Use render primitives where possible. Particles can be rendered by Mantra as a couple of shapes natively (without instancing). They can be displaced, scaled, oriented, all in render time. You should be able to render up to 50 millions of particles on average 8GB machine.

- Use Delayed Load shaders.

hth,

skk.

good points... thanks. the only thing that I've done is saving my particles on disk, I'm gonna try the other things you suggested.

Edited by ehsan parizi
Link to comment
Share on other sites

good points... thanks. the only thing that I've done is saving my particles on disk, I'm gonna try the other things you suggested.

Copying any geometry to 2 million points is going to make your IFD generation take forever, not to mention probably make you hit SWAP, if your geometry is that simple you should look for alternatives like rendering as sprites

Link to comment
Share on other sites

If I understand your question correctly, the only thing you have to do is to create those attributes yourself at SOPs with an Attribute create SOP.

Well, I think I didn't ask my question very clearly.

let me ask again :

In pop network, there's a render node that gives you some different options for rendering your particles, I want to know if there's a way to do the same thing with points that are already saved on disk? I mentioned that sprite example because it's kind of a similar case

Edited by ehsan parizi
Link to comment
Share on other sites

If I understand your question correctly, the only thing you have to do is to create those attributes yourself at SOPs with an Attribute create SOP.

Well, I think I didn't ask my question very clearly.

let me ask again :

In pop network, there's a render node that gives you some different options for rendering your particles, I want to know if there's a way to do the same thing with points that are already saved on disk? I mentioned that sprite example because it's kind of a similar case

Link to comment
Share on other sites

Well, I think I didn't ask my question very clearly.

let me ask again :

In pop network, there's a render node that gives you some different options for rendering your particles, I want to know if there's a way to do the same thing with points that are already saved on disk? I mentioned that sprite example because it's kind of a similar case

those options are only available to particle systems, according to the help card. As far as i know, you would have to rig up a particle system which emits every frame from the source points and lasts 1 frame so you essentially have the cache inside a popnet, downside is you have to re run it every time you want to scrub through

Link to comment
Share on other sites

The Render POP parameters are available in the Primitive SOP's Particles tab.

Cheers!

steven

Nice advice Steven, but there are no options for cubes or platonic solids in there, Is there any way to render particles as platonic solids without copying real geometry?

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...