Commit Graph

26 Commits

Author SHA1 Message Date
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
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
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
f8ce3a5f3d Tidying camera code. 2014-05-22 17:03:06 +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
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
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
19387fd62e I believe the correct way to use the QOpenGLFunction_3_1 class is actually to use protected inheritance, so that it's members are pulled into class scope and we can avoid the 'gl->' prefix. At least, this is the recommended approach for QOpenGLFunctions (http://qt-project.org/doc/qt-5/qopenglfunctions.html#details) 2014-03-25 21:53:14 +01:00
1f1cc67fb7 Revert "Remove usage of QOpenGLFunctions and use GLEW instead."
This reverts commit 464d713c2a.
2014-03-25 21:44:01 +01:00
464d713c2a Remove usage of QOpenGLFunctions and use GLEW instead.
Qt's OpenGL interface was causing problems on Windows since it doesn't mix
well with ANGLE.

Relates to issue #50.
2014-03-23 12:16:02 +00:00
ac16dfd325 Update the BasicExample to use OpenGL 3
The example now uses OpenGL 3 features like Vertex Array Objects and uses
no immediate mode stuff. Qt5 is used for some features like matrices and
shaders.

There is now no dependency on GLEW either.
2014-03-19 21:26:04 +00:00
8e4135ad41 Add newlines to end of files to silence compiler warnings 2012-02-27 23:03:36 +00:00
528cb73771 Moved headers into subdirectories. 2011-05-17 22:27:46 +01:00
9e1de4ba72 Templatised SurfaceMesh class on vertex type.
Replaced 'SurfaceVertex' with PositionMaterial and PositionMaterialNormal classes.
Different surface extractors can now work with different vertex types.
2010-10-17 21:13:46 +00:00
248c5f72fd Tidying up and Linux fixes for basic example. 2010-07-10 07:30:32 +00:00
c90766edce Added missing files for basic example. 2010-07-09 22:05:37 +00:00