voxelinc/voxellancer — pull request #448 by mrzzzrm (2014-02-28 17:33:51+00:00)
Title: Particles save lastNode

This makes the WorldTreeQuery remember the last Node it visited which is then used by the ParticleIntersectionTest as a hint where to start the next query. For this PR I have taken the lifetime of the eningeTrails * 5 and get a nice drop from 38% to 28% for VoxelParticleEngine::update()

One downside though: As WorldTreeNodes can be arbitrarily referenced (and these references change in other threads) they are not cleaned up dynamically anymore and will stack up memory for bigger scenes.
Also, formerly crowded spaces will have a high density of WorldTreeNodes making the performance for general objects there potentially bad.

TL;DR; nice improvement, no ultimate solution.