David Williams
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
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
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
f8ce3a5f3d
Tidying camera code.
2014-05-22 17:03:06 +02:00
David Williams
16cbb94d90
Rotation is now applied by moving the camera rather than the meshes.
2014-05-22 16:51:41 +02:00
David Williams
7d55e00f76
More work adding support for multiple meshes.
2014-05-22 16:38:02 +02:00
David Williams
51e93fdabc
Modifying the OpenGLWidget so that it can render multiple meshes.
2014-05-22 16:25:36 +02:00
David Williams
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
David Williams
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
David Williams
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
David Williams
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
David Williams
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
David Williams
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
David Williams
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
David Williams
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
David Williams
1f1cc67fb7
Revert "Remove usage of QOpenGLFunctions and use GLEW instead."
...
This reverts commit 464d713c2affcf7d8acb3403c9bd33bca673fb56.
2014-03-25 21:44:01 +01:00
Matt Williams
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
Matt Williams
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
Matt Williams
8e4135ad41
Add newlines to end of files to silence compiler warnings
2012-02-27 23:03:36 +00:00
David Williams
55df6324fa
Slightly more sensible mouse handling.
2011-05-09 23:02:13 +01:00
Matt Williams
f93c25acaf
Improved OpenGL error handling for basic example.
2011-04-25 01:18:40 +02:00
David Williams
db13224bba
Reverted some accidental commits from testing the MeshDecimator.
2011-01-06 21:54:07 +00:00
David Williams
773cfc4887
Work on MeshDecimator.
2011-01-03 21:46:40 +00:00
David Williams
090e002ff1
Reverted accidental commit.
2011-01-02 17:50:54 +00:00
David Williams
68ac0f0056
Work on MeshDecimator.
2011-01-02 17:43:41 +00:00
David Williams
fd2070bd90
OpenGL examples fix for Linux.
2010-12-27 10:34:51 +00:00
David Williams
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
David Williams
6d58348297
Updated basic example and associated documentation.
2010-08-21 11:55:15 +00:00
David Williams
c90766edce
Added missing files for basic example.
2010-07-09 22:05:37 +00:00