2025-07-19 14:29 CEST

View Issue Details Jump to Notes ]
IDProjectCategoryView StatusLast Update
0000775Spring engineGeneralpublic2009-05-29 16:01
Reportertvo 
Assigned ToKloot 
PrioritynormalSeverityfeatureReproducibilityalways
StatusresolvedResolutionfixed 
Product Version 
Target VersionFixed in Version0.79.0.0 
Summary0000775: Separate setting for maxnanoparticles and maxparticles
DescriptionI heard a reasonable suggestion from [CoW]TheMightyOne wrt nano particles:

Split maxparticles setting into maxnanoparticles and maxparticles, for nano particles have a huge gameplay element to them, so people may want a much higher maxnanoparticles then their maxparticles, at the expense of more lag of course.

Another suggestion I have myself: make the particleSaturation (= numParticles/maxParticles) limit for creating (nano) particles dependent on (A)LOS.

For example, if a particle is going to be created outside ALOS, cull it if particleSaturation > 0.5, and if a particle is going to be created in ALOS but outside LOS, cull it if particleSaturation > 0.8, and if it is going to be created inside LOS, cull it only if particleSaturation > 1.0.

Once other particle types respect maxparticles better I think this can really reduce CPU without losing detail.
TagsNo tags attached.
Checked infolog.txt for Errors
Attached Files

-Relationships
+Relationships

-Notes

~0001715

KDR_11k (reporter)

OTA culled the oldest nanoparticle if the maximum was reached, not the newest like Spring does now.

~0001716

tvo (reporter)

That would require a design change: from dynamic vector of particles to a single ringbuffer-array thing. (Where a new nanoparticles overwrites oldest one automatically.)

That would save a lot of memory allocations though.

~0003525

tvo (reporter)

/maxnanoparticles has been implemented.

~0003549

Kloot (developer)

note to self: also look at the ALOS-dependent culling idea
+Notes

-Issue History
Date Modified Username Field Change
2008-01-04 21:19 tvo New Issue
2008-01-04 22:39 tvo Description Updated
2008-01-05 00:08 KDR_11k Note Added: 0001715
2008-01-05 01:01 tvo Note Added: 0001716
2008-01-05 14:48 Kloot Status new => assigned
2008-01-05 14:48 Kloot Assigned To => Kloot
2009-05-28 11:54 tvo Note Added: 0003525
2009-05-29 16:01 Kloot Note Added: 0003549
2009-05-29 16:01 Kloot Status assigned => resolved
2009-05-29 16:01 Kloot Fixed in Version => 0.79.0.0
2009-05-29 16:01 Kloot Resolution open => fixed
+Issue History