Commit Graph

  • 5b84c5a9a5 Removed unneeded call to setPosition(). David Williams 2015-05-23 17:23:59 +02:00
  • 762c9a5090 Switched 3D array back to two 2D arrays to reduce memory usage. David Williams 2015-05-22 16:48:42 +02:00
  • 50cf939e8a Reorganizing code. David Williams 2015-05-22 16:15:53 +02:00
  • 50a8bebfa9 Removed unneeded logic. David Williams 2015-05-21 23:31:19 +02:00
  • 711c262004 Skip outputting some indices. David Williams 2015-05-21 23:17:49 +02:00
  • 2a7eb51653 Refactoring multiple loops into one big loop. David Williams 2015-05-21 23:12:38 +02:00
  • b19de819e2 Fixed compile error due to logging code changing scope. David Williams 2015-05-14 11:27:19 +02:00
  • 797689acea Trying to re-apply some previous optimizations to get old speed back. David Williams 2015-05-20 23:45:22 +02:00
  • f178dc084b Updated unit tests. It seems we had a bug which was causing an excessive number of vertices to be generated. Not sure exactly what was wrong by the refactoring has fixed this. However, it still needs testing in Cubiquity to verify. David Williams 2015-05-19 23:14:31 +02:00
  • 9a68582530 Added bounds checks David Williams 2015-05-17 11:47:52 +02:00
  • ccb76bc6d7 More work refactoring code. Examples appear to work now but tests still fail. David Williams 2015-05-17 09:52:13 +02:00
  • a39b7f6a9f More refactoring. David Williams 2015-05-16 20:48:15 +02:00
  • 1a1ae75766 More refactoring. David Williams 2015-05-16 15:36:39 +02:00
  • 0e8c90c6ee More refactoring... David Williams 2015-05-16 09:00:04 +02:00
  • 227b11a764 Cleared array. David Williams 2015-05-15 10:03:29 +02:00
  • b4267b11f5 More refactoring code. David Williams 2015-05-15 09:57:32 +02:00
  • 71adc7292c Restructuring code. David Williams 2015-05-14 22:10:37 +02:00
  • 89508f8b2b Restructuring code. David Williams 2015-05-14 11:48:28 +02:00
  • f53efa1d64 Restructuring code. David Williams 2015-05-14 11:41:16 +02:00
  • e912950317 Restructuring code... David Williams 2015-05-14 11:35:04 +02:00
  • 49683b4b48 Fixed compile error due to logging code changing scope. David Williams 2015-05-14 11:27:19 +02:00
  • 54f235e09a Restructuring computeBitmask code. David Williams 2015-05-14 11:14:39 +02:00
  • 5974a1de9b Restructuring loops... David Williams 2015-05-14 10:52:07 +02:00
  • 13fc8c5ba9 Removed unneeded variable. David Williams 2015-05-14 07:42:04 +02:00
  • c4ce66dec5 Replaced 2D pPreviousBitmask and pCurrentBitmask with 3D pBitmask. David Williams 2015-05-14 07:15:36 +02:00
  • 2b22213bec Replaced 2D arrays with single 3D array when tracking existing vertices. David Williams 2015-05-13 23:05:58 +02:00
  • 5ce0d9c3e0 Cutting down and simplifying Marching Cubes code (also now slower...). David Williams 2015-05-10 19:43:09 +02:00
  • 3937dc3c61 Applying test to a larger region so we can more easily benchmark the performance (otherwise the VS profiler can fail if the test runs too quickly). David Williams 2015-05-10 11:40:58 +02:00
  • 16fca2529b Moved Config.h out of the 'Impl' folder. It should probably be considered part of the public API as users may want to adjust it for their purposes. David Williams 2015-05-09 08:58:14 +02:00
  • 65b0d1c3c5 Moved parts of the logging code into the public API (so users can redirect logs). David Williams 2015-05-09 08:52:30 +02:00
  • 040dc37057 Changed header guards. David Williams 2015-05-08 21:19:39 +02:00
  • c2bb64d055 Renamed Logging.h to LoggingImpl.h Added missing files to CMakeLists.txt David Williams 2015-05-08 21:18:10 +02:00
  • 09253a7bcc Removed a few uses of '#ifdef SWIG', mainly from areas where they would no longer work. e.g where the code has been templatized since the #ifdef was added so we can see that the SWIG version of the code is out of date and won't build anyway. David Williams 2015-05-08 21:08:43 +02:00
  • 3c31643e4f Exceptions are now part of the PolyVox public API (client code may need to catch them) but the utility macros we use to throw them are still private implementation details. David Williams 2015-05-08 16:15:11 +02:00
  • 4887fc2701 For work splitting error handling code into separate files for asserts vs. exceptions. David Williams 2015-05-08 15:59:17 +02:00
  • a61d4556c1 Moved assertion code to separate file. David Williams 2015-05-08 15:31:17 +02:00
  • e9bde59fbc Moved more code into PlatformDefinitions.h David Williams 2015-05-08 15:20:29 +02:00
  • 64fa004102 Comments and tidying of PlatformDefinitions.h David Williams 2015-05-08 15:16:26 +02:00
  • ed64106237 More removing of API import/export macros. David Williams 2015-05-08 15:09:44 +02:00
  • d8a422955d Now that PolyVox is header only we have no further use for the POLYVOX_API/LOCAL/SHARED macros which wrap API import/export. David Williams 2015-05-08 15:04:17 +02:00
  • b36548ff20 Missed a couple of files during header renaming process. David Williams 2015-05-08 15:02:48 +02:00
  • 2a8e0a5f7b Renamed 'Typedef.h' to 'PlatformDefinitions.h'. David Williams 2015-05-08 14:57:12 +02:00
  • 64c30044b0 Moving some macros. David Williams 2015-05-08 14:50:10 +02:00
  • f16a247934 Changed implementation of logging macros. David Williams 2015-05-07 22:58:00 +02:00
  • 4dadbbffd1 Added comment about performance for the future. David Williams 2015-04-26 09:25:57 +02:00
  • 1d925a59a1 Fixed crash. David Williams 2015-04-16 16:47:12 +02:00
  • 9947425169 Fix for code which determines which old chunk to delete. David Williams 2015-04-15 16:58:24 +02:00
  • cd752b4459 Merge branch 'feature/custom-chunk-hash-table' into develop David Williams 2015-04-14 23:43:41 +02:00
  • 6ff7b46e26 Merge branch 'develop' into feature/custom-chunk-hash-table David Williams 2015-04-14 23:30:29 +02:00
  • 32c30471a6 Make m_uChunkSideLengthMinusOne const Matt Williams 2015-04-14 15:01:10 +01:00
  • 12fdeb8e52 Removed old chunk map. Removed flush(Region) function as it's a bit trickier to implement with the new hash table, and it's not clear that we need it. David Williams 2015-04-13 23:51:18 +02:00
  • 1e0e8a8c16 Fixed calculation of volume size in bytes. David Williams 2015-04-13 23:48:33 +02:00
  • f7c1962773 Removed commented-out code. David Williams 2015-04-13 23:32:23 +02:00
  • 143c9fd08d Made test 10x longer. David Williams 2015-04-13 21:34:59 +02:00
  • 37c35a08db Added code to ensure the number of chunks doesn't go over our target limit. David Williams 2015-04-13 21:30:59 +02:00
  • 8757f1e53e Removed unneeded assert. David Williams 2015-04-13 21:17:19 +02:00
  • 5dd46c4bcf Merge branch 'develop' into feature/custom-chunk-hash-table David Williams 2015-04-13 21:07:48 +02:00
  • 64be18cd14 Tidied up loop for inserting chunk into array. David Williams 2015-04-12 20:55:49 +02:00
  • af70096fcc Tidying and adding comments. David Williams 2015-04-12 16:46:43 +02:00
  • 99390580dd Replaced number with constant. David Williams 2015-04-12 10:35:12 +02:00
  • c4cccf9043 Replaced double for loop with cleaner do-while loop. David Williams 2015-04-12 09:55:30 +02:00
  • f35581506c Minor optimization - only creating vector if we are going to use it. David Williams 2015-04-12 09:42:15 +02:00
  • 54903150e9 Merge branch 'develop' into feature/custom-chunk-hash-table David Williams 2015-04-12 09:19:14 +02:00
  • c562341db0 Added a second PagedVolume to the tests with much higher allowed memory usage. This makes more sense when testing random access, as low permitted memory usage causes disk IO to become the bottleneck. David Williams 2015-04-10 16:56:19 +02:00
  • b90f0d4e15 Made the FilePager a little more robust regarding filename conflicts. David Williams 2015-04-10 16:47:50 +02:00
  • 8bd013f28e Added RawVolume version of test as well. David Williams 2015-04-10 16:14:29 +02:00
  • 887ecc1aaa Adding test to measure voxel access times when sampling the volume randomly. David Williams 2015-04-10 16:09:35 +02:00
  • a2fe1944af Initial work on replacing std::unordered_map with a specialized hash table for looking up chunks based on their 3D position. David Williams 2015-04-09 23:44:25 +02:00
  • 27a59f34bc Merge branch 'feature/morton-encoding' into develop David Williams 2015-04-05 17:44:27 +02:00
  • 4c24d61408 Added another function for backwards compatibility. David Williams 2015-04-05 12:03:12 +02:00
  • c887d1444f Added utility function for people who already have data in linear order, to convert it to Morton order. David Williams 2015-04-05 10:14:25 +02:00
  • d521b08cf9 Added comment. David Williams 2015-04-04 09:57:31 +02:00
  • dec06bcfe4 Added caching of variable. David Williams 2015-04-04 09:49:12 +02:00
  • 77db90ac30 Removed unneeded variable. David Williams 2015-04-04 09:42:46 +02:00
  • 0d36c416f2 Tidied up macros. David Williams 2015-04-04 09:18:51 +02:00
  • 3ca0222b19 Applied simplified test when going in the negative direction as well. David Williams 2015-04-04 00:08:20 +02:00
  • d1bcaec2c5 This commit knocks about 30% off the run time of the sampler tests by using a more efficient check for whether we are near the edge of the chunk. David Williams 2015-04-02 23:11:19 +02:00
  • d41a7d2747 Removed redundant samplers. David Williams 2015-04-02 21:35:50 +02:00
  • 135aa96bdf Further fixes for move...() functions. David Williams 2015-04-01 23:34:57 +02:00
  • 056cae39b5 Fixed sampler move...() functions to work with Morton ordering. David Williams 2015-04-01 22:57:22 +02:00
  • b518978cd6 Enlarged lookup tables to 256 elements. David Williams 2015-04-01 22:34:42 +02:00
  • 65f39e7b57 Made the values signed ints, as otherwise the casting was doing something strange on 64-bit systems. David Williams 2015-04-01 16:29:19 +02:00
  • 5d220c5d57 Added extra lookup tables to avoid the need to multiply y/z deltas by 2/4 each time. David Williams 2015-03-31 23:58:01 +02:00
  • 60612c5583 Implemented use of delta for the rest of the peek functions. David Williams 2015-03-31 19:55:22 +02:00
  • afd0650230 Implemented peeking in positive x and negative x directions using Matt's delta lookup table. David Williams 2015-03-31 16:33:56 +02:00
  • 120b8e84cc Added position in chunk and pointer to current chunk data to sampler. David Williams 2015-03-30 23:33:51 +02:00
  • d34c1d227c Merge branch 'develop' into feature/morton-encoding David Williams 2015-03-30 15:38:34 +02:00
  • 5847219331 Fixed bug with chunk timestamp not being updated. David Williams 2015-03-30 15:36:28 +02:00
  • b415e5c5f3 calculateAmbientOcclusion() now works with both RawVolume and PagedVolume. David Williams 2015-03-30 11:44:25 +02:00
  • d000616d3e Revert "Ambient occlusion test now uses RawVolume, as it need a fixed size volume to create a temporary array." David Williams 2015-03-30 11:24:48 +02:00
  • 413bb95b1a Passing parameter as const ref. David Williams 2015-03-30 11:01:08 +02:00
  • 7f96005985 Commented out optimized path in sampler as it doesn't work now that we are using Morton ordering for the data in chunks. However, we can probably reinstate such a fast path if we give some thought as to how it should be done. David Williams 2015-03-29 09:58:28 +02:00
  • d3b2dab1ac Switched to using lookup tables for Morton encoding. David Williams 2015-03-29 00:17:27 +01:00
  • d99ed5e624 Implemented morton encoding using standard bit-twidling approach. David Williams 2015-03-28 09:46:05 +01:00
  • 1c17a7147b Made test do 10 times more iterations. David Williams 2015-03-28 08:42:06 +01:00
  • 9256f3deb5 Fixed compile warning. David Williams 2015-03-27 21:23:31 +01:00
  • 322bedc009 Improved test for PagedVolume::Chunk performance. David Williams 2015-03-26 23:45:01 +01:00
  • 1d24b189ca Refactoed test code. David Williams 2015-03-25 17:12:11 +01:00
  • 931c6cd3ec Added tests for chunk performance. David Williams 2015-03-25 16:40:05 +01:00
  • 6516c00e62 Merge branch 'feature/optimize-paged-volume' into develop David Williams 2015-03-21 16:30:07 +01:00