Jim: yeah, that's what I said earlier. The benefit of using arrays lies in the fact that they're sequential and initialized early, so no memory allocation time. But as you so correctly pointed out, the problem of figuring out the most efficient use of space within the array is not simple.
Anyway, I think we're all forgetting the 80-20 rule here. 80% of processing time is taken up by 20% of the program. I seriously doubt, based on my observations, that at reasonable amounts of particles, a carefully-programmed particle system using linked lists is in that 20%. Also, consider this. If you initialize a long linked list at the beginning of the program and create all the individual rendering lists from that, you get most of the advantages of sequentiality without the staticness of arrays, since malloc or new will allocate sequential memory. You can grow the list at any time, and you can shrink it within the program if memory limits start to be reached. Persuter > -----Original Message----- > From: [EMAIL PROTECTED] [mailto:hlcoders- > [EMAIL PROTECTED]] On Behalf Of Jim Hunter > Sent: Thursday, June 27, 2002 11:28 PM > To: [EMAIL PROTECTED] > Subject: Re: [hlcoders] Particle System > > > 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. > > Forgive my ignorance, but aren't you just shifting that burden (of finding > empty space to store a new particle) from your own code to the heap > manager? > I have no idea which would be more efficient, but either way, *something* > has got to look for storage space and determine that it's unused, and > reclaim space that is no longer used. I would bet the performance would > be > close to equal; anyone know if a formal analysis of such a problem has > been > done? Just curious. > > Jim > > _______________________________________________ > 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

