Welcome to the Second Life Forums Archive

These forums are CLOSED. Please visit the new forums HERE

Particle size rolloff factor

Apotheus Silverman
I write code.
Join date: 17 Nov 2003
Posts: 416
11-22-2004 09:54
A nifty way to make things like luminous particles more realistic would be to provide two new parameters which allows scripts to specify the particle size rolloff factor and optimal viewing distance.

That is, how much smaller the particle(s) get as distance increases.

[PSYS_PART_ROLLOFF_DISTANCE, 5.0] would mean the "optimal" viewing distance for a particle system is 5.0 meters. That is, the on-screen particle size in relation to nearby objects exactly matches the size supplied in the particle system. Er, in easier-to-understand terms "looks the right size".

[PSYS_PART_ROLLOFF_FACTOR, 1.0] would be the default, which means on-screen particle size exactly matches its size in relation to the objects around it as distance changes.

[PSYS_PART_ROLLOFF_FACTOR, 0.5] would mean that the on-screen particle changes its size half as much in relation to objects around it as distance changes. In other words, as you move away from it beyong 5 meters (from the example above), the on-screen particles reduction in size is only half that of what it normally would be. Conversely we could set 2.0 which would have the opposite effect of making the particles get smaller twice as fast as it normally would.


This addition to the current particle system capability would open a whole new avenue for particle system design and effects, and allow for much more realistic lighting effects.

The best example I can think of right now is, appropriately enough, airport lighting. From an airplane you can see runway lights from 50+ miles away. When you get right up next to them, they are only a few inches in diameter. This type of visual effect is not currently remotely possible in Second Life.
_____________________
Apotheus Silverman
Shop SL on the web - SLExchange.com

Visit Abbotts Aerodrome for gobs of flying fun.
Strife Onizuka
Moonchild
Join date: 3 Mar 2004
Posts: 5,887
11-22-2004 10:27
I can see it now painted in the night sky, visible from sims all around...
"Land For Sale"
_____________________
Truth is a river that is always splitting up into arms that reunite. Islanded between the arms, the inhabitants argue for a lifetime as to which is the main river.
- Cyril Connolly

Without the political will to find common ground, the continual friction of tactic and counter tactic, only creates suspicion and hatred and vengeance, and perpetuates the cycle of violence.
- James Nachtwey
Psyra Extraordinaire
Corra Nacunda Chieftain
Join date: 24 Jul 2004
Posts: 1,533
11-22-2004 10:34
From: Strife Onizuka
I can see it now painted in the night sky, visible from sims all around...
"Land For Sale"


*screams and jumps off a bridge. Dies, gets reborn*

Aw... crap. maybe a taller bridge will work.
_____________________
E-Mail Psyra at psyralbakor_at_yahoo_dot_com, Visit my Webpage at www.psyra.ca :)

Visit me in-world at the Avaria sims, in Grendel's Children! ^^
Zuzi Martinez
goth dachshund
Join date: 4 Sep 2004
Posts: 1,860
11-22-2004 15:35
assuming someone's unreasonable and selfish (i know i know, quite a stretch) what's the reason they wouldn't set this to maximum on everything they ever make?
DoteDote Edison
Thinks Too Much
Join date: 6 Jun 2004
Posts: 790
11-22-2004 17:26
What does it matter if your SL client doesn't know to render the particles until you're within ~50 meters anyway? From my experience, particles stop when you get this far from them, or maybe its when you leave the sim in which they reside. So the distance would likely be limited to the distance at which particles no longer render.
eltee Statosky
Luskie
Join date: 23 Sep 2003
Posts: 1,258
11-23-2004 10:52
um... *NO*

particles are part of the 3d space, and they scale appropriately, don't mess with that.. if yer sizes don work with that, *you* not secondlife, are doin somethin wrong
_____________________
wash, rinse, repeat
Apotheus Silverman
I write code.
Join date: 17 Nov 2003
Posts: 416
11-23-2004 10:57
Wow.

Score 1 for fear of misuse.
Score 0 for innovation.


Although, with appropriate limits misuse would be impossible, but I guess no one is interested in that.
_____________________
Apotheus Silverman
Shop SL on the web - SLExchange.com

Visit Abbotts Aerodrome for gobs of flying fun.
eltee Statosky
Luskie
Join date: 23 Sep 2003
Posts: 1,258
11-23-2004 11:07
no its simply what you describe is a byproduct of the way the human eye works with light intensity, and has nothing to do with the particle system. The reason that bright lights appear visible so far away is in real life there is no limit to light intensity, and the human eyes photonic sensitivity to light is not limited to the grain of the rods on the retina (the resolution) like a matrix 2d display (such as yer monitor) is.

aka 100 photons hitting an optic sensing rod in your eye make for such and such light... regardless of what else is 'there' aka the light is calculated additively above the existing background, independant of 'resolution. *aka your eye can see a light house's beacon at sea, many many more miles than you would actually have enough optic sensors (rods) to actually make out the light house that it comes from.

to simulate that effect in 3d you need to not alter the size, but the very nature of the system in such a way that havin a 'light' within a given pixel, illuminates that pixel to the full extent of that light, regardless of resolution or how far away it is... which is not a trivial task.


there are ways to make particles be seen much further out, assuming they ARE already visible

you simply need to make the emitter larger *say an invisible needle 0.01x0.01x10* so that it will not be cropped by the LOD (when the emitter is not being rendered, the particles it spawns won't be rendered either)
_____________________
wash, rinse, repeat
Apotheus Silverman
I write code.
Join date: 17 Nov 2003
Posts: 416
11-23-2004 11:32
From: someone
there are ways to make particles be seen much further out, assuming they ARE already visible

you simply need to make the emitter larger *say an invisible needle 0.01x0.01x10* so that it will not be cropped by the LOD (when the emitter is not being rendered, the particles it spawns won't be rendered either)

I am aware of making prims larger in order for the particles to render further away. This is not what I am talking about.

Take, for instance, the lamp posts in Olde London. Now, if we saw such a thing in RL, assuming it is dark outside, as we move further from the lamp post the light emanating from within will appear to the viewer that it expands beyond its container. I understand that this visual effect is due to the way we perceive bright lights in dark environment, but what I am saying is that this effect is impossible in SL. I just think this addition could be a simple yet clever way to give our environment just one more of those extra eye candy features people like so much.

Take a look at any decent 3d game on the market that has lights (specifically particle-based light enhancements) and you'll notice that nearly all of them do exactly what I have explained with lighting.

Also, at the very nitty-gritty of 3d engine design, particles are usually decidedly NOT part of the 3d space, though they appear so on screen. Generally for image quality there are 2 rendering passes done for particles so they don't intersect with 3d objects. Of course I have no idea how LL has implemented them.

LL did at one time emulate this with the "light glows" opengl option (which was decidedly not in the 3d space btw), but removed it due to (I believe) the fact that the glows were visible through land and objects under any circumstances due to some rendering bug.

Perhaps my reasoning and explanations are too technical and people just don't understand that this would be a good thing.


From: someone
to simulate that effect in 3d you need to not alter the size, but the very nature of the system in such a way that havin a 'light' within a given pixel, illuminates that pixel to the full extent of that light, regardless of resolution or how far away it is... which is not a trivial task.

Yes I agree with this, but this is quite impossible when texturing is involved since there is no way for the client to know which piece of the texture to render with greater intensity. This is exactly why the method I speak of is already in wide use throughout the world.

Another trick is to make lit particles unaffected or less affected by fog, but I don't expect LL to make such a low-level change.
_____________________
Apotheus Silverman
Shop SL on the web - SLExchange.com

Visit Abbotts Aerodrome for gobs of flying fun.
eltee Statosky
Luskie
Join date: 23 Sep 2003
Posts: 1,258
11-23-2004 11:45
im jus sayin i know what yer talkin abuot but render wise its not a 'cheap' effect, and it would throw a pretty big monkey wrench into things... including creating some rather large problems.. and as to the particles yes they are actually sprites, and they are within the 3d space (hence they can be occluded by walls and such)... making what yer asking for a rather messy endeavour for the existing particle system...

effectively yer asking to turn all particles into 'light glows' (calculaiton intensive, and draw space wise) when the glows themselves were already removed due to the numerous problems that very thing caused within the application (draw order problems, massive client lag etc)
_____________________
wash, rinse, repeat