kariem2k wrote:
First I want to thank you for this great library.
Thanks!
kariem2k wrote:
I have exceptions disabled in my project. I saw the POLYVOX_THROW_ENABLED in your develop branch. and I have a couple of questions.
It's interesting that people still want this option. I added it about 3-4 years ago as Android didn't seem to support exceptions, but I wasn't sure if it was still useful. Can I ask why you are still not using exceptions? Is it compiler/environment constraints or just personal preference?
kariem2k wrote:
- Is there a reason it is in Config.h along with other error handling defs and not controlled by CMake?
CMake is only used for the examples and tests - the library itself is header-only and can simply be copied into another project without any building required (this is true of develop, not of master).
kariem2k wrote:
- I don't think documentation and bindings are controlled by a CMake property. Is there a reason for this?
I think in principle they should be, at least there is
relevant code here and there are CMakeLists.txt files in the Documentation and Bindings folders. I think they may be dependant on certain tools (Doxygen/Sphinx/SWIG) being found though. Be aware that the bindings don't work (header-only and heavy template usage add some challenges here) and I'm not sure what the future of them will be. Documentation generation is also not tested often, but in principle it should be fixed if broken. It might only have worked on Linux though.
kariem2k wrote:
- I got an error that getLoggerInstance does not belong to PolyVox::Impl but it belongs to PolyVox directly.
This has been fixed on another branch which I was expecting to merge into develop soon. But I've cherry-picked the relevant commit for you so develop should build now.
kariem2k wrote:
Can I submit a PR to solve these small issues?
Yes, but try to avoid refactoring the CMake system too much. I'm not really an expert with CMake so it needs to be kept simple so that I can maintain it.
kariem2k wrote:
Also what bleedingedge branch do you recommend to work with in my game. I see there progress in the optimization and develop branches...
I recommend you use develop. Master is too old (we should really do a release soon...) and develop does compile/work most of the time. If it breaks then just use the last working version of develop.
kariem2k wrote:
What about Dual Contouring branch that would be interesting.
Matt is the best person to ask as he did the work there. I believe the surface extraction algorithm is indeed working. However, this is just one part of a Dual Contouring voxel engine - you will also need to know how to generate and manipulate Hermite data as PolyVox only handles storage.