Re: Version Roadmap
Posted: Sat Mar 26, 2011 1:17 am
Roadmap updated for the upcoming release of v0.15.2.
Former forum of queegs; use github discussions now!
https://forum.bepuentertainment.com/
These weren't extremely rigorous tests, and there's a few oddities because of that, but the change in construction time was pretty clear: well over 10 times faster for all meshes.Query time (0.02 width bounding box test) in seconds:
57600 plane: Top down: 1.09615283506682E-06, Incremental: 7.73907116686678E-07
9600 plane: Top down: 9.27916697513137E-07, Incremental: 6.72088205344699E-07
524288: Top down: 1.08654171130693E-06, Incremental: 1.05035737782346E-06
131072: Top down: 9.58148926748981E-07, Incremental: 1.07283297877257E-06 (odd)
~20000 playground: Top down: 2.98690601738417E-07, Incremental: 2.98551799181223E-07
~400 barrel: Top down: 3.80763686446153E-07, Incremental: 1.11425376688931E-07
464 guy: Top down: 5.13696859517222E-07, Incremental: 3.90569094675448E-07
264 skydome: Top down: 4.20863203284534E-07, Incremental: 2.46000874412493E-07
286 castle: Top down: 7.20143998748244E-07, Incremental: 4.25560860388578E-07
20000 smoothterrain9: Top down: 3.71393277637253E-07, Incremental: 4.83340850583045E-07
176 tube: Top down: 4.32899453701612E-07, Incremental: 3.78065508325744E-07
Query time (2 width bounding box test) in seconds:
57600 plane: Top down: 1.09595027440628E-06, Incremental: 7.83046623244081E-07
9600 plane: Top down: 9.316270852858E-07, Incremental: 6.85202043835307E-07
524288: Top down: 6.50355800108664E-06, Incremental: 7.94576133279515E-06
131072: Top down: 2.93307701816848E-06, Incremental: 3.48725192726997E-06
~20000 playground: Top down: 3.28575265851032E-07, Incremental: 3.39419681830987E-07
~400 barrel: Top down: 1.51991114792509E-06, Incremental: 1.34446219421734E-06
464 guy:Top down: 2.9580759307398E-05, Incremental: 2.83375771292162E-05
264 skydome: Top down: 2.21250921555657E-06, Incremental: 2.15128452079807E-06
286 castle: Top down: 1.79017156789479E-05, Incremental: 1.66266383297319E-05
20000 smoothterrain9: Top down: 8.44311001817186E-07, Incremental: 1.13883701001105E-06
176 tube: Top down: 1.09051330546208E-06, Incremental: 1.03909288051946E-06
Infinite raycast in seconds:
57600 plane: Top down: 3.78044541973941E-06, Incremental: 3.45649405161839E-06
9600 plane: Top down: 3.22963009265095E-06, Incremental: 3.01824764041248E-06
524288: Top down: 2.12324101247486E-06, Incremental: 4.50765676922583E-06
131072: Top down: 1.9441570786239E-06, Incremental: 4.17734726061553E-06
~20000 playground: Top down: 4.26932633896195E-06, Incremental: 6.05891125827475E-06
~400 barrel: Top down: 3.15690855960747E-06, Incremental: 2.62637157795234E-06
464 guy: Top down: 3.50194927008852E-06, Incremental: 3.71777488479711E-06
264 skydome: Top down: 3.08106854362813E-06, Incremental: 3.00108812712278E-06
286 castle: Top down: 3.56723005298136E-06, Incremental: 3.16443570342017E-06
20000 smoothterrain9: Top down: 4.24406279289633E-06, Incremental: 7.90154467956199E-06
176 tube: Top down: 3.10337654645991E-06, Incremental: 3.53320848040767E-06
Construction in seconds:
57600 plane: Top down: 2.40410052115476, Incremental: 0.172780269556824
9600 plane:Top down: 0.30460721963027, Incremental: 0.0231030061077036
524288: Top down: 29.2150019066648, Incremental: 2.65379950524584
131072: Top down: 6.03215911519146, Incremental: 0.481443661137746
~20000 playground: Top down: 0.883071451818978, Incremental: 0.0629440333905222
~400 barrel: Top down: 0.00732548620006128, Incremental: 0.000663890941468708
464 guy: Top down: 0.0103335675344351, Incremental: 0.000750466190547741
264 skydome: Top down: 0.00453150679764803, Incremental: 0.000396452621789649
286 castle: Top down: 0.00547576228262187, Incremental: 0.000485755172776408
20000 smoothterrain9: Top down: 0.857996419237643, Incremental: 0.0676871012936317
176 tube: Top down: 0.00292724214948976, Incremental: 0.000283512289970531
Memory cost in bytes
57600 plane: Top down: 3670064, Incremental: 4377576
9600 plane: Top down: 917552, Incremental: 729576
524288: Top down: 29360176, Incremental: 39845864
131072: Top down: 7340200, Incremental: 9961448
~20000 playground: Top down: 1835176, Incremental: 1575456
~400 barrel: Top down: 28720, Incremental: 27944
464 guy: Top down: 28720, Incremental: 35240
264 skydome: Top down: 28720, Incremental: 20040
286 castle: Top down: 28720, Incremental: 21712
20000 smoothterrain9: Top down: 1835176, Incremental: 1519976
176 tube: Top down: 14504, Incremental: 13352
This is brillient, we were very much bottlenecked by this as we are constantly rebuilding lots of static tri meshes.Norbo wrote:so level loading should go a lot faster in the new version if you were bottlenecked by hierarchy construction
It won't change substantially. However, it's already beating the old system in some cases (in both memory size and speed). It just depends on the mesh layout.Once all the optimizations are in and the BoundingBoxTrees are done do you expect raycasts and querys etc... to become as fast as the old system (or any faster that these benchmarks?) or is this about as fast as the BoundingBoxTree system will get?
The overall numbers aren't too interesting. I performed a few tests from the list above on the Xbox360 and they came out similarly, except multiplied by a constant factor across the board. I expect similar on the phone.Also I would be very interested to know what the performance story is for Xbox and WP7 as bepu for the most part is already fast enough to match the Xbox on even a 5 year old low end pc.
You can try the new version out if you'd like; it's in the development fork (http://bepuphysics.codeplex.com/SourceC ... evelopment).However we are also already memory bottlenecked on the xbox and wp7... So that could be a problem.
Looking forward to this! Will it replace the very old ComplexCharacterController class? I.e. Use a convex shape instead for character representation.-More robust character controller.
It's good to hear that an improvement is on the way. I look forward to seeing it, when it is readyThat will take a bit longer to implement, but the new approach is conceptually more solid than any of the existing characters. I'd like to get the whole character done in less than a week, but we'll see