sorry, wrong translator (translate.google.ru). I wanted to write *I* can add function SetClampProducedParticles (min, max)......
2010/9/9 Maxim Gammer <[email protected]> > Thanks for the reply Robert > > I think you can add function SetClampProducedParticles (min, max) .... how > do you think it can be implemented to version OSG 3.0? > > If so, I will add this feature. > > Thoughts? > Max. > > 2010/9/9 Robert Osfield <[email protected]> > > Hi Maxim, >> >> This is a interesting issue - down to a design issue with the crude >> particular simulation that osgParticle does, ideally one wouldn't have >> start and stops in the simulation unless that was directed by the >> simulation itself. >> >> In this particular case, having too many particles all thrown in at >> one time step clearly is inappropriate, just randomizing this value, >> like you've done , doesn't seem to be appropriate either, effectively >> your code is doing is assuming a time interval of 1, but only using >> this if more than the max number of particles are selected. If one >> wanted this behaviour a better way of doing it would be to clamp the >> max dt used in the computation to 1, or to clamp the max number of >> particles to getRateRange().maximum. >> >> Thoughts? >> Robert. >> >> On Thu, Aug 26, 2010 at 8:25 AM, Maxim Gammer <[email protected]> >> wrote: >> > The problem with the system of particles: >> > in hiding the particle system and their subsequent screening creates a >> huge >> > number of particles (splash). But more than the big time difference >> between >> > concealment and display. The drawings depicted such a situation. >> > http://i35.tinypic.com/ridkhu.jpg >> > http://i33.tinypic.com/2nulhfd.jpg >> > The first figure shows the correct image, the second figure shows the >> > erroneous operation of the system of particles. >> > In addition, when a large number of particles occurs following warning: >> > Warning: State:: drawQuads (0, 72588) too large handle in remapping to >> > ushort glDrawElements. >> > Warning: State:: drawQuads (0, 72592) too large handle in remapping to >> > ushort glDrawElements. >> > Warning: State:: drawQuads (0, 72592) too large handle in remapping to >> > ushort glDrawElements. >> > Warning: State:: drawQuads (0, 72596) too large handle in remapping to >> > ushort glDrawElements. >> > fix this problem : >> > >> > inline int RandomRateCounter::numParticlesToCreate(double dt) const >> > { >> > _np += dt * getRateRange().get_random(); >> > int n = static_cast<int>(_np); >> > _np -= n; >> > if (n > getRateRange().maximum) >> > { >> > n = getRateRange().get_random(); //or .get_random >> > _np=0; >> > } >> > return n; >> > } >> > >> > in attached file.... >> > >> > -- >> > Maxim Gammer >> > >> > >> > _______________________________________________ >> > osg-submissions mailing list >> > [email protected] >> > >> http://lists.openscenegraph.org/listinfo.cgi/osg-submissions-openscenegraph.org >> > >> > >> _______________________________________________ >> osg-submissions mailing list >> [email protected] >> >> http://lists.openscenegraph.org/listinfo.cgi/osg-submissions-openscenegraph.org >> > > > > -- > Maxim Gammer > > -- Maxim Gammer
_______________________________________________ osg-submissions mailing list [email protected] http://lists.openscenegraph.org/listinfo.cgi/osg-submissions-openscenegraph.org
