David Williams
70b04a055e
Compile fioxes for GCC.
...
Turns out the leading underscore was required, as otherwise GCC complains the typedef is hiding the original.
2014-06-03 21:21:04 +02:00
David Williams
b7be2ff7ab
Added some error handling.
2014-06-03 16:59:09 +02:00
David Williams
06540d6c97
More work to make Mesh be templatized on IndexType.
...
This requires making the SurfaceExtractor classes be templatised on MeshType (at least for now - maybe there is a better approach when working with free functions). This has been partially done for CubicSurfaceExtractor.
2014-06-03 16:52:09 +02:00
David Williams
ffdf606ad6
Added IndexType template parameter to Mesh class.
2014-06-03 15:58:07 +02:00
David Williams
5701e7a6cc
It seems we don't need these leading underscores? Perhaps they were required in older versions of Visual Studio? Let's see what GCC/Clang says.
2014-06-03 15:51:42 +02:00
David Williams
78d750a0f2
Removed unused 'LodRecord'.
2014-06-03 15:50:30 +02:00
David Williams
31e5a6e346
Replaced 'm_region' with 'm_offset' and demonstrated its use.
2014-06-02 17:30:41 +02:00
David Williams
9fd52e3494
Removing more old stuff from the Mesh class.
2014-06-02 09:40:28 +02:00
David Williams
0bff22fbf5
Purged old/dead code from Mesh class.
2014-06-02 09:08:07 +02:00
David Williams
82f9d6ad6f
Renamed VertexTypes.h to Vertex.h.
2014-06-02 08:57:30 +02:00
David Williams
d7d1d99ca9
Renamed members to differentiate between encoded and decoded values.
2014-06-02 08:45:25 +02:00
David Williams
4fa2400ef2
Comments and tidying.
2014-06-02 08:25:18 +02:00
David Williams
80d9feb5ea
Made functions inline as they are defined in headers.
2014-06-01 21:54:31 +02:00
David Williams
b259b60de2
Tidying/commenting.
2014-06-01 17:35:00 +02:00
David Williams
392ccab703
Tidying decoding code.
2014-06-01 17:23:08 +02:00
David Williams
78ac1d12b5
The new, more compact vertex types are specific to their respective surface extractors, so they belong in the corresponding source files.
2014-06-01 17:01:36 +02:00
David Williams
2c916300ea
Work on encoded marching cubes normals.
2014-05-29 21:45:26 +02:00
David Williams
e40eb6d762
Work on GPU decoding.
2014-05-29 19:29:15 +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
85c5686ff9
Work on more compact version of MarchingCubesVertex.
2014-05-29 09:53:16 +02:00
David Williams
e9ba998f2f
Changes to the folder organization of some files in Visual Studio (via CMake's source_group).
2014-05-28 14:03:26 +02:00
David Williams
35049b7a53
Throw exception if extracted region is too large.
2014-05-27 23:23:24 +02:00
David Williams
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
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
f65edddd81
Tidying up.
2014-05-24 08:38:18 +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
Matt Williams
7fc954a6bf
Fix SWIG include paths for C# bindings
2014-05-20 14:43:18 +01: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
d69e840055
Merge branch 'develop' into feature/vertex-refactor
...
Conflicts:
library/PolyVoxCore/include/PolyVoxCore/DefaultIsQuadNeeded.h
library/PolyVoxCore/include/PolyVoxCore/MarchingCubesSurfaceExtractor.inl
library/PolyVoxCore/source/VertexTypes.cpp
2014-05-11 20:45:31 +02:00
David Williams
5191c3c068
Merge branch 'develop' into feature/extractor-refactor
2014-05-11 20:35:44 +02:00
David Williams
a34c106382
I accidentally merged the 'cubiquity-version' feature back into develop. It seems I can't simply reverse this commit (at least through SourceTree ) because it was a merge, so I'm having to simply revert the contents of the commit (i.e. the files). Bit of a mess!
2014-05-11 20:34:41 +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
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
David Williams
12246d1633
The PositionMaterial class can now be removed as we're not using it.
2014-05-05 20:58:35 +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
f05d54b985
Merge branch 'develop' into feature/extractor-refactor
2014-03-17 16:07:29 +01:00
David Williams
d06650172a
Added missing header which was causing problems when compiling Cubiquity on Linux.
2014-03-16 21:13:15 +01:00
David Williams
0bbb648925
Added functions around CubicSurfaceExtractor.
2014-03-07 16:08:20 +01:00
David Williams
d50b910a45
Merge branch 'develop' into feature/cubiquity-version
...
Conflicts:
library/PolyVoxCore/include/PolyVoxCore/MarchingCubesSurfaceExtractor.inl
2014-03-06 16:54:38 +01:00
David Williams
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
David Williams
d8bcd09d9b
Compile fixes for GCC.
2014-03-05 16:47:51 +01:00
David Williams
acbfb184b8
Wrapped MarchingCubesSurfaceExtractor with functions (part of unclassing).
2014-03-05 16:30:54 +01:00
David Williams
0755961750
Added support for default parameters.
2014-03-05 15:50:17 +01:00
David Williams
67ec0d2db8
Initial function wrapper around CubicSurfaceExtractorWithNormals.
2014-03-05 15:41:16 +01:00
Daviw Williams
b416dc933f
Merge branch 'develop' into feature/cubiquity-version
...
Conflicts:
library/PolyVoxCore/include/PolyVoxCore/MarchingCubesSurfaceExtractor.inl
2014-02-27 15:40:01 +01:00
Daviw Williams
1cf5f4c899
Added comment.
2014-02-26 17:00:40 +01:00
Daviw Williams
c5780dd8e2
Brought improved blending changes across from Cubiquity branch.
2014-02-26 16:55:09 +01:00
Daviw Williams
60396a2699
Merge branch 'develop' into feature/cubiquity-version
...
Conflicts:
library/PolyVoxCore/source/Impl/Utility.cpp
2014-02-25 16:55:52 +01:00