What about next-gen particles?

Titanio said:
Can this be one final blend at the end? Draw all the transparencies and then blend with RSX's buffer?

Yes, 1 final pass per frame. Shouldn't be a problem

Titanio said:
It may not cover all cases, but sorting batches could work OK. If you have a bucket of all particles in a particular portion of the frame, you could sort them independently of others? You might have problems with shared particles, though...but I'm not sure if you'd notice in dense particle systems.

You're right. It's very rare that you'd need to sort every particle agains all others. You can pre-sort them in groups that do not overlap, and then sort each group on the SPU.

Titanio said:
Millions seems like a lot to be drawing on one frame, even with overdraw.

Actually 1 million is what people are talking as next gen target.
There was this white paper on how to do 1 million sorted particles on the GPU. It's quite interesting. It required like 200+ passes. And runs at like 2fps on current gen PC, but it has potential with some optimization + next gen GFX power.


Titanio said:
The amount of time required is a good question, I'm not sure at all. The alpha blending itself doesn't seem particularly complicated though (I'd say perhaps the sorting and splitting into tiles might take as long if not more). I'm not really qualified to say, though, I'd leave it to Faf or Npl or other devs to comment on that.

Alpha blending is not the problem. It's the actual rasterization. It has a very unbalanced nature - 1 second you have subpixel particles, next you have 10,000 pixel particle covering the whole screen. It's a problem for the GPU too, except it has a lot of pixel arrays and super deep pipelines.

That doesn't mean processing particles on the SPU is a bad idea. Actually I would generate the particles on SPU(s) and send them directly to RSX for rasterization. This would be the perfect match IMHO. I just wish RSX had EDRAM like the GS. There is no substitute for raw bandwidth and fillrate when it comes to particles.
 
Barbarian said:
Alpha blending is not the problem. It's the actual rasterization. It has a very unbalanced nature - 1 second you have subpixel particles, next you have 10,000 pixel particle covering the whole screen. It's a problem for the GPU too, except it has a lot of pixel arrays and super deep pipelines.

That doesn't mean processing particles on the SPU is a bad idea. Actually I would generate the particles on SPU(s) and send them directly to RSX for rasterization. This would be the perfect match IMHO. I just wish RSX had EDRAM like the GS. There is no substitute for raw bandwidth and fillrate when it comes to particles.

First, thanks for your responses, it's nice to get clarification on some things :)

I think the question mark then is a SPE's "fillrate", from a computational perspective. Bandwidth would not be a problem, so it'd be down to how fast the SPE could "work it out".
 
Jaws said:
richardpfeil said:
...
The Xenos has 32GB/s write, 16GB/s read to the EDRam module for a total of 48GB/s...

That's what I used to think but looking at Dave's article and the block diagram, it's 32 GB/sec aggregate.

Rockster brought this up when the article came out. Unfortunately Dave didn't respond.
http://www.beyond3d.com/forum/viewtopic.php?start=20&t=23953
Rockster said:
One thing I would like clarification on is the bus between the parent and daughter die. The leaked block diagram showed it as 32GB/s write and 16GB/sec read. Dave's diagram shows a single 32GB/s bi-directional interface. Which is correct?

I can't find anything online about that 16GB/s read bandwidth. I can't figure out where that came from. Anand seems to agree with Dave...
http://www.anandtech.com/video/showdoc.aspx?i=2453&p=7

All I can say is, mea culpa. And also that Microsoft's claim that the bandwidth will never restrict pixel writing is BS. Every time a tile is read back out pixel output will slow down. This must be a part of the 5% hit.
 
richardpfeil said:
...
I can't find anything online about that 16GB/s read bandwidth. I can't figure out where that came from. Anand seems to agree with Dave...

Hehe... I believe I started that rumor off in this thread where I posted the ATI R500 multi-threaded patent and speculated before official info...

Jaws said:
...
So 16 US units, R500 ~ 240-320 mm2 @ 90nm

That's a huge chip! And if you're gonna add another 10+ MB of eDRAM, that's GINORMOUS! ...So the eDRAM module looks like a separate chip with it's 16 + 32 GB/s read/write bandwidth (48 GB/s?)...

http://www.beyond3d.com/forum/viewtopic.php?p=495971#495971

...this is also where I made assertions that Xenos would be 'two' separate chips too! :LOL:

If you look at the leaked diagram, you'll see 'read' and 'write' combinations... this is where the 16+32 GB./sec originated from. However, in hindsight, this doesn't seem to be on a single cycle, therefore it's 32 GB/sec aggregate.
 
I did some particle stuff some years ago. I guess one XeCPU or some SPUs could easily push 500.000 sophisticated particles including effect like gravity, obsticles, wind/ air resistance, very complex emitters, random movement.
Even flocking (fish, birds, butterflies) could propably done up to 100.000 individuals or even more.

I think its will be fillrate what limits you at around a maximum of 100.000 particles /viewport for a beat em up or something similar.

With 100.000 particles you can still do quite convincing water, fire, smoke, explosion effects.

When particles is the only thing you have to do (demo) 1 or 2 million particles are possible I guess, if you use point sprites.

Point sprites basicly require only an (scaled) alpha blit and should very fast on current GPUs.
 
It doesnt take much to display cool particle effects.

This demo (Thanks to our own Humus) looks pretty nifty, and there are "only" around 15000 particles on screen at any one time.

Particles in the 100s of thousands would be not only possible on next gen machines, but look totally crazy.
 
Yes, I was wondering if the whole discussion of worrying about number of particles this coming generation is like worrying if we don't have enough nuclear warheads to protect ourself. We could have half as many as the guy across the ocean, but it's still enough to wipe-out mankind several times over, anyway. ;)
 
DotProduct said:
I did some particle stuff some years ago. I guess one XeCPU or some SPUs could easily push 500.000 sophisticated particles including effect like gravity, obsticles, wind/ air resistance, very complex emitters, random movement.
.

Has anyone seen the hires trailer of I-8 the Insomniac game ? The smoke/dust effects look pretty good as the dust slowly settles after the explosion. When they would be able to add wind it would look amazing.
 
Could you provide a link if possible?

By th by, haven't we seen a number of PS3 titles with very very nice volumetrics? Even Fromsoft's game had some impressive smoke. Anyone have any thoughts about how many particles those games are pushing?


BY the way, is there a SET of High Rez trailers for the Sony games? MS was nice enough to host HD version of the trailers any such luck with the Sony trailers?

Sorry, for being Off Topic.
 
Many thanks.

The I-8 explosions look very nice, but I have to say after seeing the LAIR video again... the rain was particularly interesting. It looks like a particle effect and was quite high at that, no? Anyone with a better eye want to take a look? Seems likely far far more than what why see in I-8 or progect force.
 
Xenos has better blending performance from alpha-blended particles, but rendering particles is only half the equation. Computing the particle system is the other half of the equation, and one for which the SPEs programming model uniquely excel at. Particle systems are even more parallelizable than other forms of physics, they are in fact, very stream oriented, but they also (except for very simple systems) cannot fit within the vertex shader paradigm. A particle system that can be completely analytically parameterized by time can be shoved into a vertex shader, but otherwise, you need to iteratively integrate.

Thus, we have the situation that the PS3 can compute more particles than it can render, but the XB360 can render more particles than it can probably compute, if we assume a non-trivial particle system.
 
Mefisutoferesu said:
Many thanks.

The I-8 explosions look very nice, but I have to say after seeing the LAIR video again... the rain was particularly interesting. It looks like a particle effect and was quite high at that, no? Anyone with a better eye want to take a look? Seems likely far far more than what why see in I-8 or progect force.

To my eye, yes, it is a lot more..I think it's the best rain I've seen so far in a next-gen game:

lairrain0bn.jpg


lairrain29bo.jpg


lairrain33qm.jpg


It's a lot easier to see in motion, of course...this is one game I really want direct-feed media for.

The rain is very heavy, but it's not just the density..but how it behaves too. The way it rolls off the dragon's eye and skin at the beginning, how it bounces off the stone etc. Very impressive.
 
zidane1strife said:
Shifty, did you see the ps3 particle demo?
Yes, I saw all the demos! The thing with the leaf demo was that the leaves were opaque. When you have alphablended particles you have a lot more demand on BW using traditioanl rendering methods.

The more i think about, the more I feel a particle engine running a SPE would be a good system. It could run concurrently with RSX's rendering, use 3D representation, and could use tiny textures if necessary as long as they fit into SPE LS. The result could even produce optical feedback, providing illumination of the scene I reckon, though I don't know how fast or complex. This should be a very efficient use of the SPE. The particle data can be loaded in batches, maximising LS use so the Apulet is never waiting on data, and the processing is ideally to SPE's FP prowess.
 
Shifty Geezer said:
zidane1strife said:
Shifty, did you see the ps3 particle demo?
Yes, I saw all the demos! The thing with the leaf demo was that the leaves were opaque. When you have alphablended particles you have a lot more demand on BW using traditioanl rendering methods.

The more i think about, the more I feel a particle engine running a SPE would be a good system. It could run concurrently with RSX's rendering, use 3D representation, and could use tiny textures if necessary as long as they fit into SPE LS. The result could even produce optical feedback, providing illumination of the scene I reckon, though I don't know how fast or complex. This should be a very efficient use of the SPE. The particle data can be loaded in batches, maximising LS use so the Apulet is never waiting on data, and the processing is ideally to SPE's FP prowess.

Well the leaves had alpha blending round the edges obviously, or you'd see black corners around each of them. To look like that, they either were modelled with polygons, or they were a leaf texture with alpha around it.
 
I thought (dunno why though) they were modelled polygonal leaves and not just textured quads. I'd need another clear look though.
 
Shifty Geezer said:
I thought (dunno why though) they were modelled polygonal leaves and not just textured quads. I'd need another clear look though.

I think they were geometrically modelled too. They didn't look flat.

I guess, though, going that route may be one way to bypass heavy alpha blending ;) Does it matter how you get there, if you get there?

Of course, some particle systems would realistically require transparency (I don't think we could model enough tiny smoke particles geometrically to negate the need for some transparency ;)). But some particle systems wouldn't need it (or as much of it) if you could throw enough geometry around. I guess it depends on your situation and the context of the rest of the game, if that would be feasible.
 
Geometries fine for solid objects, but for smoke or spark or light effects you need transparency. eg. Exhaust smoke, fireworks, magic sparkles.
 
Titanio said:
Mefisutoferesu said:
Many thanks.

The I-8 explosions look very nice, but I have to say after seeing the LAIR video again... the rain was particularly interesting. It looks like a particle effect and was quite high at that, no? Anyone with a better eye want to take a look? Seems likely far far more than what why see in I-8 or progect force.

To my eye, yes, it is a lot more..I think it's the best rain I've seen so far in a next-gen game:

It's a lot easier to see in motion, of course...this is one game I really want direct-feed media for.

The rain is very heavy, but it's not just the density..but how it behaves too. The way it rolls off the dragon's eye and skin at the beginning, how it bounces off the stone etc. Very impressive.

:?: You got all of that from watching that crappy quality video? The only inkling of rain I saw was at the beginning with the dragon's eye, but it didn't look impressive at all...

Sounds like you're assuming a lot of stuff from just looking at the pictures...
 
Back
Top