PDA

View Full Version : particles, render only?


andrewjohn81
04-17-2006, 01:08 PM
I am a bit new to particles and I am working on a dish washer. I have to show an older model, then the newer model spraying and show the difference. it doesn't have to be super photoreal, but it looks pretty good. if it were photoreal then you really can't see much. I'm just trying to illustrate the differences.

So I have small planes with 9 faces each and the corners pulled in a little to make them slightly more round. Each plane is emitting particles. I have only done the old one so far, but I am a bit disapointed with the speed. There are 20 emitters and I can't change that.
I wonder if I need more than one PFsource? I'm not sure why that would make it faster, or if it would at all.

There are 40k particles per second. (that's 2000 particles/sec each emitter for those who aren't good at math).

I have one colision test with a delete command after that. It is a simple box with the normal facing inward. It is placed Just outside of the dishwasher to stop the particles.

there is one force, gravity straight down.

the speed is varied by 1%

The shape is a tetra (only 4 sides, but this varies the specular a bit, which varies color also)


So those are the settings pretty much. It really doesn't seem to make a difference what the display settings are. it is Always slow. I tested it and the difference between displaying 0%1%10% and 100% are all the same. It takes about 40 seconds to calculate each frame. "#$&%*#)%&" I don't want it to. I want it to render, but I want to be able to do the animation on my own without having to turn on the PF source every time I want to test a render.

The dumb thing is I move to the frame, then it calculates the same thing again when I hit render. What is the point of that?

Is there a more manageable way of doing this? It just doesn't seem very efficient.

I don't need as many particles if i could preview less emitters at a time. Is there a way to have the emitters loaded, but not active? I suppose the answer there would be to load up 5-10 sets of 2-4 emitters each and turn them on/off?

if anyone has experience doing similar animations please give me some advice. I'm working on it OK, but could be ALOT faster.

I do have to say...I learned 3D with maya and I usually compare the components to eachother. Particle Flow is Way easier to learn because of particle view. I watched a couple tutorials, and although they weren't very related It got me going in less than a day. It's almost fun.

andrewjohn81
04-17-2006, 01:39 PM
I've been playing around with figuring out why it's taking so long to test. I mean, 40 seconds per frame? That's rediculous.

So I put in cache at the top of the stack. When I update using the cache it updates fine. Sure it only plays back maybe 10-15 frames a second, but it plays back smoothly. That doesn't make sense to me.
It also doesn't make sense that I can't play it back after I've cached it. the computer still wants to calculate all that again and takes longer than the cache did.

Anyone have an answer for that? I'm sure that'll fix my problem.

JohnnyRandom
04-17-2006, 07:59 PM
That flow sounds huge:D. Not a particle expert either but a couple of things that may help and well have been suggested to me by others in the past.

cache (your already doing that)

try running in heidi or better DX mode.(better viewport speed)

look into particle flow tools box#3. it has a set of disk cache operators. it was suggested by Mr. B. Davis. haven't tried it tho but does look very promising.

Remove or disable the shape operator and preview in wireframe instead of shaded.

Since your only using one collision and its has nothing to do with inter-particle relations can't you just turn off most of the flows and test each individually? Or am I missing something?

The dumb thing is I move to the frame, then it calculates the same thing again when I hit render. What is the point of that?
Sounds like you have your cache operator set to calculate viewport and render, either switch to viewport or render.

It really doesn't seem to make a difference what the display settings are. it is Always slow. I tested it and the difference between displaying 0%1%10% and 100% are all the same.

This may or may not help buit there are two places were you can adjust the viewport/render percentage of particles one is in particle view (i'm guessing this is the one you were adjusting) and the other is in the modify panel of the flow.

hope some of this helps...

andrewjohn81
04-17-2006, 09:00 PM
I am confused about the cache.

Please assume I know nothing about particles. I am very lost here. I all of the sudden am having to wait about 10 minutes when I want to render or preview where the particles are going.

Here's a problem.
I thought about creating a different pflow for each nozzle (22 in all), but even still I will have the same problem. I have to turn all of the pflow's on before I submit the render. Then I have to wait an enormous amount of time.

So even after testing each individual one I still have to wait for it.

I think I also don't have to make a new pflow for each one, but rather just seperate events?

I think cache might be the answer, but I think maybe I am confused at where to actually put it. At the beginning next to render, in the top of an event, at the bottom of the event, or the bottom of the final event? I think that may be where I am going wrong.

Thanks in advance for the help. I need it!

JohnnyRandom
04-17-2006, 09:32 PM
the cache operator can be used globally or per event.

globally is when you add it to the pfsource node and per event is added in the event node.

they say not to use it in both on the same flow unless the global is set for render and the event is set for viewport.

As to where the cache operator is located AFAIK it doesn't matter where it visually sits in either the global (pfsource node) or in the event node(s). I have always put it under the Render op. and always at or near the bottom of an event or above a test op. Not sure if that makes a difference?

by choosing option>track update>update progress you can visually see where your calculations are more intensive than others. when in this mode (during playback) the current calculation will be highlighted. if it is highlighted for longer than a brief flash you will know where you flow is chunking out and this event would be a good place to add a cache op.

thats alot of particles though, me i am imagining that your emitting geometry has four or five legs each with four or five nozzles. myself i would create a flow for each leg.
it may be better, not sure tho, a particle pro would have to give you a heads-up on that.

come to think of it... do you have afterburn? i ask becuase you said it doesn't have to be photoreal, you can psuedo simulate water with afterburn hypersolids and you could certianly get away with using alot less particles.

feldy
04-18-2006, 03:39 AM
turn off use real time in the timeline options works a lot better performance wise

and for as chacheing sometimes i acutaly find that a pain in the ass too

andrewjohn81
04-18-2006, 12:43 PM
yeah, no afterburn. That would probably help.

I was thinking about doing different pf_source for each nozzle. I don't know how much that would help though. It seems to take the same amount of time. I did a little test last night be splitting it up into 4. It just seems slow because of the amount of particles I have to use to get the right results.


I did a test last night. I was leaving in a rush so I made some mistakes BUT. I used 90000 particles. I had it set from frame 60-300.

It didn't render on my renderfarm because those machines aren't running the 3Gig switch. I have two computers that are running that and actually Have 3Gigs. They rendered the frames last night. Once they actually start rendering they take a very short time...although a couple frames here and there took 20 minutes vs. 1 minute (the average).

Strange thing though. The particles stopped at frame 90. Anyone know why?

I think we are going to try rendering the particles as a seperate pass now. Also I may try to do Less particles, but using motion blur to kind of get more length out of each particle. I just need it to seem more like a volume.

JohnnyRandom
04-18-2006, 03:11 PM
afterburn... just a thought, you could get more for less with a volumetric renderer.

particles stop emitting at 90 or totally disappear? strange, you don't have a particle age set anywhere or an age test do you? gosh clueless here, bad cache or cache out of memory, maybe?

I was thinking about this a little last night. You could remove the collision test and add a camera culling operator (orbaz freebie) to see if that would speed anything up. Any test operator is going to bog things down.

andrewjohn81
04-18-2006, 04:40 PM
Yeah, a volumetrics would be nice, but we don't have a budget right now. We steal from surplus of other people's budgets to even get paid.

The problem with it stopping the render was related to the pfSource. I didn't think about that. i was working primarily in the particle view and didn't notice that you could select and edit the pfsource there. There was a limit to number of particles. Once it reached that it just stopped. It was set at 100000. I just made it one million and it worked fine. BUT, it only would render on two of my computers so that didn't work.


The solution: I had to swtich to standard max render in order to do it, but I cut the particles way down then added motion blur. I can now render with about 20000 particles/second and it looks fine....actually better. AND it renders on all the machines without running out of memory. So I'm rendering them out seperately then comping them back in later.
It was too annoying to create blocking objects, but it's not really going to be noticeable so the particles will just go on top of everything. Since I wasn't coliding with things inside it will pretty much be the same anyway.

JohnnyRandom
04-18-2006, 05:04 PM
heh, budgets argh, haven't one either but what i've got in my pockets...been saving for Pflow tools box #1 (box #3 operators are still way out of my league:blush: but that set disk cache tools)

Glad you got it working at a functional rate:)

is it running with a single flow or did you decide to use multiple flows?

andrewjohn81
04-19-2006, 12:22 PM
well, i had to split up the flows anyway because I forgot that I needed to show one set at a time, then both, so i split it in two. So there are 10 sprays each with 10k/sec particles. At any given time there are probably only 4kparticles. They move pretty fast. When the speed is low they might have 7k on at once, but that's it.

too bad motion blur doesn't work with vray. That would have made my life easier.

CGTalk Moderation
04-19-2006, 12:22 PM
This thread has been automatically closed as it remained inactive for 12 months. If you wish to continue the discussion, please create a new thread in the appropriate forum.