David Williams
112b277452
Updated GLSL decoder for new normal packing scheme.
2014-07-24 22:38:21 +02:00
David Williams
2b7ef5b966
Reverted some changes which were just for testing the new normal encoding.
2014-07-24 22:21:53 +02:00
David Williams
f9ee5a10b4
Merge branch 'develop' into feature/better-normal-encoding
2014-07-24 22:15:43 +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
bfa14a32df
Split 'decode()' function into several variants so it's not so heavily overloaded.
2014-07-24 16:55:11 +02:00
David Williams
98e722271e
More restructuring code.
2014-07-24 15:40:03 +02:00
David Williams
972bc3a456
Restructuring some code.
2014-07-24 15:13:08 +02:00
David Williams
79c62be039
Oct-encoded normal now stored as uint again.
2014-07-23 23:50:04 +02:00
David Williams
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
David Williams
dd5e34bc92
Moved normal encoding logic.
2014-07-22 23:48:18 +02:00
David Williams
9b84c9d07d
Fixed compile error
2014-06-14 09:59:01 +02:00
David Williams
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
David Williams
b1c03c9f9c
Fix to mesh declaration.
2014-06-03 21:37:22 +02:00
David Williams
6bedd40694
Merge branch 'feature/vertex-and-example-refactor' into develop
2014-06-03 21:22:56 +02:00
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
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
Matt Williams
9b19ea656b
Fix commit on Linux
2014-06-03 10:37:11 +01: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
4f1863eccb
Removed apparently-incorrect use of logging statements (crashing under Visual Studio).
2014-05-30 16:36:24 +02:00
David Williams
224c27de50
Got normal decoding working in shader.
2014-05-29 23:31:36 +02:00
David Williams
2c916300ea
Work on encoded marching cubes normals.
2014-05-29 21:45:26 +02:00
David Williams
a6a1c4dbb7
Getting ready to decode normal.
2014-05-29 19:34:43 +02:00
David Williams
e40eb6d762
Work on GPU decoding.
2014-05-29 19:29:15 +02:00
David Williams
8604d1209e
Initial version of decoding shaders.
2014-05-29 14:23:22 +02:00
David Williams
f945fd4ce4
Work on example to decode vertices on the GPU.
2014-05-29 12:38:43 +02:00
David Williams
b635e9d29d
Copied BasicExample as base for new 'DecodeOnGPU' example.
2014-05-29 12:20:33 +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
Matt Williams
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
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
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
David Williams
764c9ac97c
Simplified vertex types to structs with public members.
...
Added (currently dummy) decode methods.
2014-05-27 17:05:15 +02:00
Matt Williams
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
David Williams
1d8fc25cb7
Compile fixes for GCC/Linux
2014-05-26 23:14:29 +02:00