Commit Graph

86 Commits

Author SHA1 Message Date
049a77cd0c Moved all headers from 'PolyVoxCore' to 'PolyVox', as we no longer have the core/util distinction. 2015-02-07 17:26:36 +01:00
86357d66b7 Normalized line endings 2014-09-25 22:38:01 +02:00
db2e62d2a8 Replaced LargeVolume and SimpleVolume with PagedVolume in tests and examples. 2014-09-21 17:57:42 +02:00
2b7ef5b966 Reverted some changes which were just for testing the new normal encoding. 2014-07-24 22:21:53 +02:00
bfa14a32df Split 'decode()' function into several variants so it's not so heavily overloaded. 2014-07-24 16:55:11 +02:00
4a42535f13 Added functions to perform 'octahedral' encoding and decoding of normals.
See http://jcgt.org/published/0003/02/01/paper-lowres.pdf
2014-07-23 23:35:46 +02:00
37ba9ab338 CubicVertex now uses a more memory efficient representation which can be decoded on the CPU or GPU. 2014-05-27 23:01:38 +02:00
d34fd6b3c8 Moved OpenGLWidget into common folder so it can be used by other examples. 2014-05-23 22:11:47 +02:00
4f7e1e6846 Each mesh now has it's own transform matrix applied, so that our example framework can support breaking a volume into regions. 2014-05-23 22:03:57 +02:00
9f5b2e1659 Better templatization of addMesh. 2014-05-23 17:02:46 +02:00
4aae00e4a8 Renamed SurfaceMesh to just Mesh 2014-05-23 15:17:07 +02:00
4cec89de38 Added ability to specify the visible region so that the example framework can support different volume sizes. 2014-05-23 14:32:46 +02:00
ab741583e4 Renamed extractXxxSurface() to extractXxxMesh() 2014-05-22 23:26:40 +02:00
16cbb94d90 Rotation is now applied by moving the camera rather than the meshes. 2014-05-22 16:51:41 +02:00
7d55e00f76 More work adding support for multiple meshes. 2014-05-22 16:38:02 +02:00
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
a51eaa4a02 Merge branch 'develop' of https://bitbucket.org/volumesoffun/polyvox into feature/extractor-refactor
Conflicts:
	examples/Basic/main.cpp
2014-05-11 16:21:37 +02:00
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
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
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
ac16dfd325 Update the BasicExample to use OpenGL 3
The example now uses OpenGL 3 features like Vertex Array Objects and uses
no immediate mode stuff. Qt5 is used for some features like matrices and
shaders.

There is now no dependency on GLEW either.
2014-03-19 21:26:04 +00:00
acbfb184b8 Wrapped MarchingCubesSurfaceExtractor with functions (part of unclassing). 2014-03-05 16:30:54 +01:00
529e97f71e Added use of auto for determining mesh type. 2014-03-05 15:58:33 +01:00
0755961750 Added support for default parameters. 2014-03-05 15:50:17 +01:00
67ec0d2db8 Initial function wrapper around CubicSurfaceExtractorWithNormals. 2014-03-05 15:41:16 +01:00
248a5c3e29 Removed old logging system. 2014-01-30 22:10:52 +01:00
9ad4c3fcf7 Initial checkin of Timer class. 2013-08-07 23:07:26 +02:00
f3ec94dd75 Reverted changes made for testing. 2013-06-27 16:43:49 +02:00
938eea7c8e Work on tidying LargeVolume... 2013-06-26 22:01:44 +02:00
44d525f591 Tidying up and refactoring LargeVolume. 2013-06-26 17:02:06 +02:00
8ab6d73f0a Work on LargeVolume refactoring - getting FilePager working. 2013-06-25 23:34:58 +02:00
59505d47e9 Tidying up Block and FilePager. 2013-06-23 23:17:40 +02:00
03cd1ada6d Small changes to basic example, mostly for clarity. 2012-11-17 16:38:46 +01:00
2566f3a7d2 Examples have had their loops backwards... fortunately all the volumes were cubic so it didn't matter. 2012-11-02 13:29:58 +01:00
309f270e67 Exposed 'VoxelType' in BaseVolume. 2012-04-16 16:50:41 +02:00
86b84339af Work on CubicSurfaceExtractorWithNormals. 2012-04-16 16:14:09 +02:00
7d1d81c732 Work making CubicSurfaceExtractorWithNormals use 'isQuadNeeded'. 2012-04-16 15:23:45 +02:00
3f56ee6f72 More refactoring of basic voxel types. Started replacing getDensity and getMaterial with free functions. 2012-02-18 12:12:38 +01:00
c483b44a41 Replaced constants with functions for type traits. 2012-02-06 17:51:37 +01:00
49b5fb3f67 Refactoring of basic voxel types. 2012-01-12 17:14:45 +01:00
462295cf8b Switched BasicExample back to 'advanced' API (not SimpleInterface). 2011-10-16 23:03:04 +01:00
db81e1bc3f Work on simple interface. 2011-10-15 00:01:17 +01:00
6f31898fd7 Renamed Volume base class to BaseVolume.
Added initial version of simple interface.
2011-10-14 23:57:10 +01:00
528cb73771 Moved headers into subdirectories. 2011-05-17 22:27:46 +01:00
3a171e698b Modified SurfaceExtractor to use template template parameters. 2011-04-30 23:51:04 +01:00
36a9be83db Added template template parameters to CubicSurfaceExtractorWithNormals. 2011-04-30 22:46:45 +01:00
afbf49f626 Added initial version of SimpleVolume by duplicating LargeVolume. 2011-04-29 22:02:40 +01:00
ea309ab15b Renamed Volume to LargeVolume. 2011-04-28 21:21:59 +01:00
03b690673a Reverted accidental commit. 2011-03-29 20:48:16 +00:00
aed8f79aa1 Documentation update.
Fixed crash in flushAll().
2011-03-28 19:55:45 +00:00