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
David Williams
321d3eb7d4
Removed initializer which isn't supported in VS 2012.
2014-05-26 22:51:55 +02:00
David Williams
ba58cff815
Removed use of 'R' raw string literals as CS 2012 doesn't support them.
2014-05-26 22:51:09 +02:00
David Williams
5a23299634
More tidying shader code.
2014-05-26 21:14:54 +02:00
David Williams
fd3879faeb
Tidying OpenGLExample shader code.
2014-05-26 21:10:07 +02:00
David Williams
40e528d782
Added lighting to OpenGL example.
2014-05-26 17:00:26 +02:00
David Williams
4ae25d6b1e
More commenting.
2014-05-26 16:50:13 +02:00
David Williams
e9c8daa9cb
Add comments and tidying.
2014-05-26 16:31:12 +02:00
David Williams
2a072f9347
Rearranged some functions.
2014-05-25 23:44:37 +02:00
David Williams
9e835a1110
Shader now passed by shared pointer.
2014-05-25 23:40:55 +02:00
David Williams
b97bf52214
Tidying up.
2014-05-25 23:34:12 +02:00
David Williams
ec08b28002
Turned off back-face culling in examples, as this makes it easier to view certain shapes such as heightmaps.
2014-05-25 21:45:28 +02:00
David Williams
499db6a185
Changed default shader to use normal as RGB (more useful for debugging).
2014-05-25 21:43:37 +02:00
David Williams
22869e4861
More tweaks to scaling and translation.
2014-05-25 21:36:41 +02:00
David Williams
b63a09cab3
Changing the way the examples handle translation and scaling.
2014-05-25 21:29:44 +02:00
David Williams
6738c4fc9e
Smooth example now also uses new example OpenGLWidget.
2014-05-25 21:15:20 +02:00
David Williams
349dc2b0e6
Centered volume in viewport.
2014-05-25 21:06:44 +02:00
David Williams
e80c88a5ec
Paging example now uses the new example OpenGLWidget.
2014-05-25 21:03:52 +02:00
David Williams
eb39f0bb4c
OpenGLExample is once again rendered as multiple separate mehses (but using the example framework this time).
2014-05-25 12:28:45 +02:00
David Williams
f78aad8abd
Fixed colors to match previous version of the example.
2014-05-24 22:58:31 +02:00
David Williams
99cf75e902
Material now passed to shader as integer rather than float.
2014-05-24 22:53:10 +02:00
David Williams
07b9cf05fa
Changed OpenGLExample to use MaterialDensityPair88 instead of MaterialDensityPair44.
...
Added material to shaders.
2014-05-24 21:09:26 +02:00
David Williams
aace1f2e36
Exposing normals to example framework.
2014-05-24 09:38:01 +02:00
David Williams
f65edddd81
Tidying up.
2014-05-24 08:38:18 +02:00
David Williams
6cbb2d44bf
Work on making OpenGLExample work with common example framework.
2014-05-23 22:44:58 +02:00
David Williams
34f57911a7
Converting OpenGLExample to use common OpenGLWidget.
2014-05-23 22:18:17 +02:00
David Williams
d34fd6b3c8
Moved OpenGLWidget into common folder so it can be used by other examples.
2014-05-23 22:11:47 +02:00
David Williams
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
David Williams
9f5b2e1659
Better templatization of addMesh.
2014-05-23 17:02:46 +02:00
David Williams
37bdf8e3ac
Templatised code for example mesh conversion.
2014-05-23 16:26:56 +02:00
David Williams
79acf814db
Revert "Compile fixes for VS2012"
...
This reverts commit e8313a683bd748ab36b2aff42ebdd16d28bd5320.
2014-05-23 16:11:53 +02:00
David Williams
e8313a683b
Compile fixes for VS2012
2014-05-23 15:32:28 +02:00
David Williams
4aae00e4a8
Renamed SurfaceMesh to just Mesh
2014-05-23 15:17:07 +02:00
David Williams
da8f294847
Comments
2014-05-23 14:37:35 +02:00
David Williams
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
David Williams
ab741583e4
Renamed extractXxxSurface() to extractXxxMesh()
2014-05-22 23:26:40 +02:00
David Williams
f8ce3a5f3d
Tidying camera code.
2014-05-22 17:03:06 +02:00