295 Commits

Author SHA1 Message Date
David Williams
d2bbd6beba Some renaming. 2014-09-18 14:58:17 +02:00
David Williams
8dd026e095 Work on limiting maximum memory usage. 2014-09-18 14:51:43 +02:00
David Williams
c0a22de2df Removed a lot of compression-related code. 2014-09-13 12:20:56 +02:00
David Williams
302c6e688b More work eliminating compression from inside LargeVolume. 2014-09-13 11:59:51 +02:00
David Williams
4781ca5c42 Work on removing compression from LargeVolume. 2014-09-12 15:36:28 +02:00
David Williams
882798ccb8 Modifying surface extractor test to work with LargeVolume. 2014-09-12 00:02:06 +02:00
David Williams
a9f1a29868 Adding Vector performance test. 2014-09-05 16:06:40 +02:00
David Williams
25860122b0 Fixed incorrect array indexing. 2014-08-25 23:07:29 +02:00
David Williams
d06dbdf054 Bit renaming. Old Array class is gone, and is replaced by the Array2D class which has also been renamed to Array. 2014-08-24 22:30:50 +02:00
David Williams
d49db280d5 TestVolumeSubclass now uses Array2D instead of Array. 2014-08-24 21:55:44 +02:00
David Williams
528873bcd3 Extended 'Array2D class to be multidimensional (will rename it shortly). 2014-08-24 21:54:59 +02:00
David Williams
20815b6083 Moved Array2D to it's own file. 2014-08-21 21:38:19 +02:00
David Williams
46358adfbc New array class is 50(!) times faster than the old one on raw read-write performance. It's also significantly simply. 2014-08-21 21:31:09 +02:00
David Williams
d9f328cadb It seems the PolyVox Array class is really slow compared to raw C arrays. I've added a test ready for some experimentation. 2014-08-21 16:57:23 +02:00
David Williams
4482538f9e Added header for testing RawVolume as well as SimpleVolume. 2014-08-20 17:16:45 +02:00
David Williams
33c5fe7526 More cubic surface extractor tests. 2014-08-19 21:36:08 +02:00
David Williams
349009c67e Removed template aliases as they push GCC version up to 4.7, and we don't really *need* them. 2014-08-19 21:02:06 +02:00
David Williams
72f696652a Added marching cubes performance tests. 2014-08-18 22:10:35 +02:00
David Williams
e2051ed713 Tweaks to cubic surface tests. 2014-08-18 21:25:29 +02:00
David Williams
c0added385 Work on cubic extractor tests. 2014-08-18 16:48:32 +02:00
David Williams
ec9b06ef0f Work on cubic surface extractor tests. 2014-08-18 16:40:36 +02:00
David Williams
4b3b940b91 Removed old testing code. 2014-08-18 16:29:08 +02:00
David Williams
5e7c4fbc12 Added handy type aliases for meshes. 2014-08-18 16:01:31 +02:00
David Williams
be47aec7f7 Work on cubic extractor tests. 2014-08-18 15:47:00 +02:00
David Williams
3c82652f46 Removed the use of clever SFINAE tricks to resolve ambiguous functions. It was proving complex with the cubic surface extractor, so we remove it from the marching cubes version as well.
For now, we just rename the ambiguous functions differently to avoid the ambiguity but could come back to this in the future.
2014-08-18 15:38:18 +02:00
David Williams
ba6685289d Work on cubic extractor interface. 2014-08-17 23:43:59 +02:00
David Williams
5c30aa20f9 Working on new tests for extractCubicSurface(). 2014-08-17 15:45:23 +02:00
David Williams
0ccc268b16 Avoided ambiguous functions through the (possibly too clever) use of SFINAE. 2014-08-16 09:55:08 +02:00
David Williams
93fdd36f8f Work on interface to 'extractMarchingCubesMesh' and tests. 2014-08-14 15:57:10 +02:00
David Williams
d4118a2052 More work on tests. 2014-08-12 16:53:47 +02:00
David Williams
ed4bdf08c4 Added extraction test for MaterialDensityPair. 2014-08-12 16:09:56 +02:00
David Williams
0b5e7071ae Added double test. 2014-08-12 15:57:52 +02:00
David Williams
ccc9a3c158 More work on surface extraction tests. 2014-08-12 15:53:30 +02:00
David Williams
e2f43ebc5d More work on tests and surface extraction functions. 2014-08-11 23:46:01 +02:00
David Williams
64ba3f20f8 Work on extractor tests. 2014-08-11 16:20:11 +02:00
David Williams
11845c1d31 Work on tests. 2014-08-11 15:53:25 +02:00
David Williams
4b3c8a1648 Committing half-finished work on test so that I can work on it from elsewhere. 2014-08-11 08:46:06 +02:00
David Williams
eaea74b7f8 Templatizing marching cubes extractor on mesh type. 2014-08-10 09:18:27 +02:00
David Williams
8326aa8668 Updated test (not really a useful fix but should probably think want we want from this test anyway). 2014-07-24 22:12:02 +02:00
David Williams
2090b0087c Vertices now carry general purpose 'data' rather than a 'material', though the data will be treated as a material in many cases. This is part of making the architecture more generic and involves some renaming. 2014-05-29 11:39:29 +02:00
David Williams
764c9ac97c Simplified vertex types to structs with public members.
Added (currently dummy) decode methods.
2014-05-27 17:05:15 +02:00
David Williams
4aae00e4a8 Renamed SurfaceMesh to just Mesh 2014-05-23 15:17:07 +02:00
David Williams
ab741583e4 Renamed extractXxxSurface() to extractXxxMesh() 2014-05-22 23:26:40 +02:00
David Williams
f2ba500c4c Merge branch 'develop' into feature/vertex-refactor
Conflicts:
	examples/Basic/main.cpp
	examples/Paging/main.cpp
	examples/SmoothLOD/main.cpp
	library/PolyVoxCore/include/PolyVoxCore/CubicSurfaceExtractorWithNormals.h
	tests/TestCubicSurfaceExtractor.cpp
	tests/TestSurfaceExtractor.cpp
	tests/TestVolumeSubclass.cpp
2014-05-12 23:04:19 +02:00
David Williams
217aa93720 Test now uses free-function surface extractor. 2014-05-11 16:41:52 +02:00
David Williams
573c36db87 Renamed vertex classes to the far more meaningful 'CubicVertex' and 'MarchingCubesVertex'. The old names didn't make much sense, even less so now they are templatized. 2014-05-11 15:17:59 +02:00
David Williams
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
David Williams
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
David Williams
2da902d5f9 This change reverts PolyVox back to using Qt 4.8. This is expected to be a temporary change, required because moving to Qt 5 caused various complications on Windows which we are not yet ready to address.
For more details see here: https://bitbucket.org/volumesoffun/polyvox/issue/41/upgrade-to-qt-5
2014-05-05 20:29:52 +02:00
Matt Williams
868fbb84a0 Update to use Qt5
The examples and tests now use Qt5. This allows some nice tidying of the
CMake files, some of which will come in future.

Closes issue #41
2014-03-09 18:02:24 +00:00