Commit Graph

147 Commits

Author SHA1 Message Date
e89a55d154 Applied default Visual Studio formatting to most files. This is a quick fix for the tabs vs spaces issue that messes up the formatting in any editor (esp. Linux) which handles tabs/spaces differently to Visual Studio. Some parts of the formatting look a bit worse but overall it should be better (or at least more consistent).
I didn't apply the changes to a few macro-heavy files as Visual Studio removes all indentation from macros, whereas the indentation can be handy to see nesting.
2015-12-26 23:11:27 +00:00
b3ca051878 Changed 'embedded' licenses from zlib to MIT. 2015-12-26 21:45:41 +00:00
bfc7dfdc1b Removed the ability to specify a region in the PagedVolume's constructor, and updated the tests and examples where required. 2015-02-28 23:31:23 +01:00
64d010527b Removed old getVoxelAt()/setVoxelAt() functions. they've been flagged as deprecated for a while now, and are replaced by just getVoxel()/setVoxel(). 2015-02-27 11:07:15 +01:00
e985dce075 Templatized OpenGLWidget so users can specify the version of OpenGL to support. 2015-02-24 22:17:46 +01:00
7262ca313e More work splitting example framework into two pieces. 2015-02-20 16:56:03 +01:00
838407ba4f Started splitting example framework into to two classes. One will be general purpose (for use in Cubiquity, etc), and the other will have PolyVox specific stuff. 2015-02-20 16:20:09 +01:00
9c93c5fc36 Switched examples to use FPS-style first person perspective camera. 2015-02-20 15:28:54 +01:00
565aa21799 Refactoring example code. 2015-02-20 11:23:17 +01:00
3f849e19a4 Started refactoring examples and got DecodeOnGPUExample working. 2015-02-15 12:03:31 +01:00
ec80bfe740 Switched to using Qt for loading extensions, instead of GLEW. 2015-02-09 23:17:33 +01:00
f042584ed5 Removed old OpengGL widget. 2015-02-09 22:15:03 +01:00
c62bde0066 Work on getting the OpenGL/Qt5 support working with new header-only library. 2015-02-09 22:11:06 +01:00
d9da93b6c0 Merge branch 'develop' into feature/opengl
Conflicts:
	examples/Basic/CMakeLists.txt
	examples/Basic/OpenGLWidget.cpp
	examples/Basic/OpenGLWidget.h
	include/PolyVox/Impl/Timer.h
2015-02-08 20:49:25 +01:00
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
16a75d0606 Reoranising header structure. 2015-02-07 17:16:54 +01:00
a296807ed9 Removed PolyVoxUtil. 2015-02-07 14:59:08 +01:00
c3f2e5217e Removed CMake code which tries to build/use PolyVoxCore as a library. 2015-02-06 23:29:35 +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
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
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
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
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
37bdf8e3ac Templatised code for example mesh conversion. 2014-05-23 16:26:56 +02:00
79acf814db Revert "Compile fixes for VS2012"
This reverts commit e8313a683b.
2014-05-23 16:11:53 +02:00
e8313a683b Compile fixes for VS2012 2014-05-23 15:32:28 +02:00
4aae00e4a8 Renamed SurfaceMesh to just Mesh 2014-05-23 15:17:07 +02:00
da8f294847 Comments 2014-05-23 14:37:35 +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
f8ce3a5f3d Tidying camera code. 2014-05-22 17:03:06 +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
51e93fdabc Modifying the OpenGLWidget so that it can render multiple meshes. 2014-05-22 16:25:36 +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
2da902d5f9 This change reverts PolyVox back to using Qt 4.8. This is expected to be a temporary change, required because moving to Qt 5 caused various complications on Windows which we are not yet ready to address.
For more details see here: https://bitbucket.org/volumesoffun/polyvox/issue/41/upgrade-to-qt-5
2014-05-05 20:29:52 +02:00
d79ac03fb6 VS2012 doesn't accept these curly brackets (C++11 initializer lists?). The code seems to work without them though. 2014-03-25 23:03:18 +01:00
7b5e1cd1d5 Unfortunately VS2012 doesn't support 'R' raw string literals . Maybe the shader code should be moved into separate files anyway. 2014-03-25 23:00:29 +01:00
a78508a79f Switched from QOpenGLFunctions_3_1 to QOpenGLFunctions. This seems to require not using vertex arrays, which needs further investigation. 2014-03-25 22:49:59 +01:00