magnum-examples
magnum-examples copied to clipboard
[WIP] Octree View Frustum Culling Example
Hi @mosra !
Finally! The octree implementation, @ACapo and I started working on last year, is working! There is merely some cleanup left, especially on the MagnumExtras side, but I'm putting this out there anyway, just in case someone is in desperate need of Octree View Frustum Culling.
Basically, this should give you an idea what the API looks like at the moment.
This is in no way urgent, I know you're insanely busy for the next two weeks.
Regards, Jonathan.
TODOs:
- [ ] Change License according to new license
- [ ] Screenshot and Readme
- [ ] Explanatory comments
- [ ] General code cleanup
Oh, and also enabling the example in all CIs, please :)
@Squareys I'd say this is all obsoleted by #86?
@mosra I guess the difference is that this demos the "Official Octress" that's beeing PRd in magnum-extras. (https://github.com/mosra/magnum-extras/pull/1). Also frustum culling vs general octree is still a difference, so I think this could still have it's own viability should the octree ever make it in. I think the state of that was that I did some crazy refactor to a. make it dimension-independent and b. faster.
I commented because #86 has additional features the implementation in extras doesn't seem to have (loose octree, node allocation etc.) -- but OTOH the implementation in extras has tests, so neither of them is really a winner.
The real question is if the implementation in extras will ever get finished, I guess :) Judging from our priorities lately, I'm not very optimistic :D
in extras will ever get finished
Probably not too soon, no... but on here there are still some unmined gems like getting Frustum corners, intersecting three planes etc. We should save those somehow. (I have some refinements through the Clustered Forward+ stuff, though)