Iain, I'm not sure how you interpreted Scott's comment. If he mean what you
said he could have said something such as "Sorry I cannot be more detailed,
but I'm too busy to debate..." or "I'm short on time, but in a nutshell my
opinion is...". However, he insisted on saying something much more abrasive
than was necessary.

On to the particle engine topic, which is infinitely more interesting...

Sure, having the ability to create a *variable* number of particles is a
plus by using a linked list over an array. Why have 20,000 dormant
classes/structures taking up memory when you don't have to? How about
allocating new particles? Are you supposed to scan through the entire array
each time you wish to create a new particle to find that indexes 919 and
9294-12300 are free? By using a linked list, you can simply store a pointer
to the last particle and then add on to it as necessary.

Rendering particles in a linked list would take about the same amount of
time as rending particles in an array. Using the array, you would increment
the index, test the particle's validity, and then render it. Using the
linked list, you would render the particle, and then render the particle
connected to it until you reach the end of the list. Any speed advantage
would be negligible.

A possible reason why indexes are used in engines such as Half-Life for
entities are because they are relatively long-life variables. You are never
going have several thousand entities appear on the screen only to later have
them disappear in 3/4s of a second. Also, the number of (non-particle)
entities in an entire scene is usually much less than the particles used in
one effect. Memory for these entities is a much less important
consideration.

Both methods have their advantages, but my opinion using linked lists for a
particle engine is much superior than using an array. Variable memory usage,
speed during allocation, and most importantly, simplicity more than make up
for the lost speed during deallocation.

----- Original Message -----
From: "Iain Farrell" <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>
Sent: Thursday, June 27, 2002 8:55 PM
Subject: Re: [hlcoders] Particle System


> ----- Original Message -----
> From: "Miguel Aleman" <[EMAIL PROTECTED]>
> To: <[EMAIL PROTECTED]>
> Sent: Thursday, June 27, 2002 11:04 PM
> Subject: Re: [hlcoders] Particle System
>
>
> Look Scott, if you don't have the time to enter this argument then simply
> don't. That must of been the most arrogant comment I've heard this week.
>
> ------
> he wasn't trying to be arrogant, he was just saying (basically) "I can't
> argue my point fully, because I am busy with other things (probably things
> we want him to busy with)"
> His point was simple though - you don;'t need a potentially infinite
number
> of particles, so link lists aren't necessarily the best answer (especially
> when you may have to take into account slower machines)
> I gather from his post, he's trying to say you should try and estimate the
> max. number of particles you'll need and use an array for that amount.
> you may be wasting memory, but on slower systems the sped increase may be
> more beneficial
>
>
> ICQ : available on request
>
> "That's it - screw CNN, from now on - I'm going to rely on Porn sites,
> for news...."   -=[Clawz]=- in alt.games.half-life
>
> HL Mod Site : http://www.tfhl.net
> AGHL Geek Code:
> 78 M D T+ C- A+ Ca H+ K P S+ B Po* RGB+ I++ L3++++++ Sp- ICQ@
>
>
>
> _______________________________________________
> To unsubscribe, edit your list preferences, or view the list archives,
please visit:
> http://list.valvesoftware.com/mailman/listinfo/hlcoders
>
>

_______________________________________________
To unsubscribe, edit your list preferences, or view the list archives, please visit:
http://list.valvesoftware.com/mailman/listinfo/hlcoders

Reply via email to