Commit Graph

1734 Commits

Author SHA1 Message Date
972bc3a456 Restructuring some code. 2014-07-24 15:13:08 +02:00
79c62be039 Oct-encoded normal now stored as uint again. 2014-07-23 23:50:04 +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
dd5e34bc92 Moved normal encoding logic. 2014-07-22 23:48:18 +02:00
9b84c9d07d Fixed compile error 2014-06-14 09:59:01 +02:00
c68a48df6b Merge remote-tracking branch 'origin/feature/vertex-and-example-refactor' into develop
Conflicts:
	library/PolyVoxCore/include/PolyVoxCore/Mesh.h
2014-06-04 23:12:27 +02:00
b1c03c9f9c Fix to mesh declaration. 2014-06-03 21:37:22 +02:00
6bedd40694 Merge branch 'feature/vertex-and-example-refactor' into develop 2014-06-03 21:22:56 +02:00
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
b7be2ff7ab Added some error handling. 2014-06-03 16:59:09 +02:00
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
ffdf606ad6 Added IndexType template parameter to Mesh class. 2014-06-03 15:58:07 +02:00
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
78d750a0f2 Removed unused 'LodRecord'. 2014-06-03 15:50:30 +02:00
e6dc0716cd Merge branch 'feature/vertex-and-example-refactor' of https://bitbucket.org/volumesoffun/polyvox into feature/vertex-and-example-refactor 2014-06-03 15:36:45 +02:00
9b19ea656b Fix commit on Linux 2014-06-03 10:37:11 +01:00
31e5a6e346 Replaced 'm_region' with 'm_offset' and demonstrated its use. 2014-06-02 17:30:41 +02:00
9fd52e3494 Removing more old stuff from the Mesh class. 2014-06-02 09:40:28 +02:00
0bff22fbf5 Purged old/dead code from Mesh class. 2014-06-02 09:08:07 +02:00
82f9d6ad6f Renamed VertexTypes.h to Vertex.h. 2014-06-02 08:57:30 +02:00
d7d1d99ca9 Renamed members to differentiate between encoded and decoded values. 2014-06-02 08:45:25 +02:00
4fa2400ef2 Comments and tidying. 2014-06-02 08:25:18 +02:00
80d9feb5ea Made functions inline as they are defined in headers. 2014-06-01 21:54:31 +02:00
b259b60de2 Tidying/commenting. 2014-06-01 17:35:00 +02:00
392ccab703 Tidying decoding code. 2014-06-01 17:23:08 +02:00
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
4f1863eccb Removed apparently-incorrect use of logging statements (crashing under Visual Studio). 2014-05-30 16:36:24 +02:00
224c27de50 Got normal decoding working in shader. 2014-05-29 23:31:36 +02:00
2c916300ea Work on encoded marching cubes normals. 2014-05-29 21:45:26 +02:00
a6a1c4dbb7 Getting ready to decode normal. 2014-05-29 19:34:43 +02:00
e40eb6d762 Work on GPU decoding. 2014-05-29 19:29:15 +02:00
8604d1209e Initial version of decoding shaders. 2014-05-29 14:23:22 +02:00
f945fd4ce4 Work on example to decode vertices on the GPU. 2014-05-29 12:38:43 +02:00
b635e9d29d Copied BasicExample as base for new 'DecodeOnGPU' example. 2014-05-29 12:20:33 +02:00
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
85c5686ff9 Work on more compact version of MarchingCubesVertex. 2014-05-29 09:53:16 +02:00
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
c26686476d Use Qt's resource system to store the shader source
The shader source is included inside each comipled binary file. The
OpenGL example also provides its own shader files which overrides
the default. Common shader code is in the 'common' directory and
each example's custom shader is alongside the example's C++ code.
2014-05-28 10:29:05 +01:00
35049b7a53 Throw exception if extracted region is too large. 2014-05-27 23:23:24 +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
1790d8338f Merge branch 'feature/vertex-and-example-refactor' of https://bitbucket.org/volumesoffun/polyvox into feature/vertex-and-example-refactor 2014-05-27 17:05:46 +02:00
764c9ac97c Simplified vertex types to structs with public members.
Added (currently dummy) decode methods.
2014-05-27 17:05:15 +02:00
140cbc0fc7 Move shader code to external files rather than embedded
A bit of CMake code in each example copies the files to the
correct location and Qt loads them from the application's binary
directory.
2014-05-27 15:08:20 +01:00
1d8fc25cb7 Compile fixes for GCC/Linux 2014-05-26 23:14:29 +02:00
321d3eb7d4 Removed initializer which isn't supported in VS 2012. 2014-05-26 22:51:55 +02:00
ba58cff815 Removed use of 'R' raw string literals as CS 2012 doesn't support them. 2014-05-26 22:51:09 +02:00
5a23299634 More tidying shader code. 2014-05-26 21:14:54 +02:00
fd3879faeb Tidying OpenGLExample shader code. 2014-05-26 21:10:07 +02:00
40e528d782 Added lighting to OpenGL example. 2014-05-26 17:00:26 +02:00
4ae25d6b1e More commenting. 2014-05-26 16:50:13 +02:00