Commit Graph

1010 Commits

Author SHA1 Message Date
b0a8ca8a64 This commit templatizes the vertex classes on voxel types. This was the main change which was made for Cubiquity and it's very messy at the moment. However, this will improve when we make more use of 'auto' to hide the template madness. 2014-05-07 23:47:18 +02:00
4c2aea3db1 Removed CubicSurfaceExtractorWithNornals. Going forward users will be expected to compute flat normals in the fragment shader. 2014-05-06 22:00:24 +02:00
12246d1633 The PositionMaterial class can now be removed as we're not using it. 2014-05-05 20:58:35 +02:00
5dfa7e2562 The CubicSurfaceExtractor now generates vertices of type PositionMaterialNormal rather than PositionMaterial. The normal property is just a dummy and is not filled in, though conceptually we could put something in there in the future (average normal of surrounding faces?)
The point of this change is to move towards having a single vertex class with known properties (including normal). This makes it simpler to write code which uses the vertices because we always know which properties are present. This will probably be useful when working with vertex buffer objects.
2014-05-05 20:53:47 +02:00
163e520e9f Changed he way that materials are blended by default, such that the material of the voxel with the highest density is used. 2014-03-06 16:38:57 +01:00
1cf5f4c899 Added comment. 2014-02-26 17:00:40 +01:00
c5780dd8e2 Brought improved blending changes across from Cubiquity branch. 2014-02-26 16:55:09 +01:00
2458f94feb Eliminating some differences from the cubiquity-version branch. 2014-02-25 16:51:26 +01:00
0e8973e722 Fixed minor compile errors:
- Lack of <functional> in AStarPathfinder.h
 - Lack of <cstdint> in several files (why did this compile on GCC?)
2014-02-17 15:23:44 +01:00
bc17c802bb Assume C++11 support
Remove all CMake checks for C++11 support since we now assume that we have it.
Replace all polyvox_* macros with standard C++ names.

See #48
2014-02-14 15:03:26 +00:00
74be82e8cf Disabled trace stream by default.
Updated docs.
2014-01-30 23:40:50 +01:00
f2dd852bd2 More stripping down of logging macros. 2014-01-30 23:18:41 +01:00
906d685f5f Stripped down the 'removed' version of the logging macros to minimize the chance that they have any effect on the code. 2014-01-30 23:04:37 +01:00
248a5c3e29 Removed old logging system. 2014-01-30 22:10:52 +01:00
af9eacef37 Changed new logging system to work on strings rather than streams. 2014-01-30 16:27:33 +01:00
f4e03cc537 Macros now call new logging system instead of the old one. 2014-01-29 21:29:00 +01:00
84921f4d0b The existing logging code is rather large and overwhelming. I'm starting to replace it with a simpler system that should also be easier to maintain. 2014-01-29 16:53:11 +01:00
2ae5667986 Replaced some more logging commands with macros which can be compiled out. 2014-01-28 23:15:24 +01:00
e0e860c45c Added <algorithm> 2014-01-28 20:59:55 +01:00
a9238051fa Changed some logging statements to macros which can be #defined out. 2014-01-26 23:53:10 +01:00
f58161c748 Added logging macros which can be disabled at compile time. 2014-01-24 16:35:58 +01:00
c177891e5d Separated logging code into different .cpp/.h files. 2014-01-24 15:21:59 +01:00
8d5f6af7cd Compile fix for VS2012, which now builds successfully. 2014-01-24 13:53:44 +01:00
3db5e1b2f6 Added microsecond precision to timers. 2013-11-14 15:35:41 +01:00
5294efc473 Clear the 'last accessed block' flag before flushing the volume. 2013-11-12 16:57:11 +01:00
85d8bdb30c Rearranged some code to try and improve the robustness of block paging and compression. 2013-11-12 16:47:57 +01:00
1c5a3f7ef5 Reverted attempts to suppress GCC warnings and just removed the offending asserts instead.
Revert "Added asserts to catch invalid material/density values."

This reverts commit 8943822046.
2013-10-25 12:44:40 +02:00
afddb59d69 Reverted attempt to avoid warnings. Just suppressed them instead.
Revert "Attempting to work around a GCC warning."

This reverts commit 3fe92086f1.
2013-10-24 14:37:18 +02:00
3fe92086f1 Attempting to work around a GCC warning. 2013-10-23 16:33:42 +02:00
8943822046 Added asserts to catch invalid material/density values. 2013-10-20 09:12:37 +02:00
29bded222f Removed unnecessary error handling. 2013-10-04 13:56:31 +02:00
21001d6862 Removed wrapper for class which was removed. 2013-10-04 13:35:31 +02:00
1531e1cd00 Switched some code to size_t for compatibility with Miniz. 2013-10-04 13:30:30 +02:00
4d683627da Added some comments. 2013-10-03 16:56:14 +02:00
d17c1b404b Bit more tidying of Miniz code. 2013-10-03 16:45:46 +02:00
ef615cc838 Added missing file. 2013-10-03 16:26:43 +02:00
498f21f63f Replaced arrays with std::vector. 2013-10-02 16:48:30 +02:00
a4e09c2481 Small fixes (including crash fix). 2013-10-02 15:36:21 +02:00
29ca1e763f Renamed functions to avoid confusion. 2013-10-02 15:09:55 +02:00
513c3a90b0 Rearranging some miniz code to simplify it a bit. 2013-10-01 16:33:39 +02:00
319a0ce352 Removed old compression classes. 2013-10-01 15:58:32 +02:00
f63bb510b3 Merged some code from MinizCompressor into MinizBlockCompressor. We don't really need two separate classes for this stuff. 2013-10-01 15:51:23 +02:00
4ee2a61a15 Added a siply wrapper .h/cpp pair to abstract away the fact that miniz in provided as a single .c file which we include directly, and to avoid linker problems. 2013-10-01 15:33:40 +02:00
f81b42747b Implement Timer for C++11
This uses std::chrono::system_clock
2013-08-22 20:40:45 +01:00
55dc066a3f Fixed bug with MinizBlockCompressor always saving out 10,000 bytes of data. 2013-08-19 16:27:52 +02:00
07f1ca42d2 Uncompressed blocks are now flushed before compressed blocks. 2013-08-12 21:04:55 +02:00
6fb30a40f5 Bringing across Region enhancements from Cubiquity branch. 2013-08-09 20:39:17 +02:00
b9546ddcfa Extra checks in during marching cubes to try and catch corrupt data. 2013-08-09 14:09:59 +02:00
7c74e1faff Move Timer.h to correct location
Also add a missing semi-colon.
2013-08-08 10:42:57 +01:00
2f99964606 Tidying timer. 2013-08-07 23:24:20 +02:00