db2e62d2a8
Replaced LargeVolume and SimpleVolume with PagedVolume in tests and examples.
2014-09-21 17:57:42 +02:00
d6a7b83698
Moved Pager to be a nested class of PagedVolume.
2014-09-21 11:42:12 +02:00
db9a74fdb4
Moving Chunk to be a nested class of PagedVolume.
2014-09-21 10:27:55 +02:00
71035029d1
More renaming blocks to chunks.
2014-09-20 23:27:28 +02:00
0ab7f27f0f
More renaming of block to chunk.
2014-09-20 21:27:26 +02:00
8d7d88a7df
Renamed a bunch of stuff from using 'block' to 'chunk'
2014-09-20 17:39:12 +02:00
ede35435a0
Renamed UncompressedBlock to Chunk.
2014-09-20 17:26:57 +02:00
b08974c197
Work on limiting memory usage.
2014-09-18 16:26:47 +02:00
d2bbd6beba
Some renaming.
2014-09-18 14:58:17 +02:00
8dd026e095
Work on limiting maximum memory usage.
2014-09-18 14:51:43 +02:00
5b59bc2d8c
Moved paging code into block constructor/destructor.
2014-09-17 13:35:43 +02:00
47ace554cc
Making use of shared_ptr to track blocks.
2014-09-14 11:47:17 +02:00
c0a22de2df
Removed a lot of compression-related code.
2014-09-13 12:20:56 +02:00
302c6e688b
More work eliminating compression from inside LargeVolume.
2014-09-13 11:59:51 +02:00
4781ca5c42
Work on removing compression from LargeVolume.
2014-09-12 15:36:28 +02:00
bfa14a32df
Split 'decode()' function into several variants so it's not so heavily overloaded.
2014-07-24 16:55:11 +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
35049b7a53
Throw exception if extracted region is too large.
2014-05-27 23:23:24 +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
349dc2b0e6
Centered volume in viewport.
2014-05-25 21:06:44 +02:00
e80c88a5ec
Paging example now uses the new example OpenGLWidget.
2014-05-25 21:03:52 +02:00
4aae00e4a8
Renamed SurfaceMesh to just Mesh
2014-05-23 15:17:07 +02:00
ab741583e4
Renamed extractXxxSurface() to extractXxxMesh()
2014-05-22 23:26:40 +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
347028199c
Paging example now also uses free-function surface extractor.
2014-05-11 16:27:38 +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
4c2aea3db1
Removed CubicSurfaceExtractorWithNornals. Going forward users will be expected to compute flat normals in the fragment shader.
2014-05-06 22:00:24 +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
868fbb84a0
Update to use Qt5
...
The examples and tests now use Qt5. This allows some nice tidying of the
CMake files, some of which will come in future.
Closes issue #41
2014-03-09 18:02:24 +00:00
e35b58ba18
Fixed paging example.
2013-07-31 15:49:00 +02:00
4478e365c9
Removed RLECompressor as the code is now in RLEBlockCompressor.
...
Things are starting to get back under control. All tests pass, and all examples except PagingExample work.
2013-07-30 17:01:27 +02:00
7146b5ecdb
The idea of a 'setTargetMemoryLimitInBytes' function was not really working out. It was too comp-lex and not really clear what the ideal size would be. I think user code needs to call setMaxNumberOfBlocksInMemory() and setMaxNumberOfUncompressedBlocks() directly, if they see from profiling toat too much camressing or paging is taking place.
2013-07-23 13:15:01 +02:00
a00574351f
Renamed Block to CompressedBlock
2013-07-11 16:38:28 +02:00
0d92bc6c8c
Starting to split Block class into CompressedBlock and UncompressedBlock.
2013-07-11 16:17:48 +02:00
bd60f34bd7
Removing explicit functions to control the number of compressed and uncompressed blocks in memory, and letting the user set a memory limit instead.
2013-07-04 16:23:58 +02:00
26f512eba7
Fixed compile warning.
2013-07-02 16:08:52 +02:00
839f366174
Compile fixes for Linux.
...
Added SWIG files to make bindings build.
2013-06-28 15:07:19 +02:00
72b3cd5154
Tidying up and comments.
2013-06-26 23:39:21 +02:00
1064ea1c47
Stripped out unused code.
2013-06-26 22:14:01 +02:00
acb43d54d9
Fixed paging example.
2013-06-26 22:08:49 +02:00
44d525f591
Tidying up and refactoring LargeVolume.
2013-06-26 17:02:06 +02:00
785ac611b9
Work on file paging.
2013-06-22 11:20:05 +02:00
5664e2f681
Restored Paging Example back to previous values.
2013-06-22 07:30:06 +02:00
a14de4a72e
Replaced std::functions with Pager class for paging.
2013-06-16 19:48:14 +02:00
414a012230
Creating a Perlin noise generator as a 'pager'.
2013-06-16 19:12:37 +02:00
60d6658e1a
Changed a couple of 'getVoxelAt()' to 'getVoxel()'.
2013-06-12 13:38:36 +02:00
b7eeda3370
Find and replace all instance of getLowerCorner().getX(), etc with getLowerX(), etc has resulted in all tests now running in 120 seconds instead of 144 seconds because it avoids creating temporary objects.
2013-02-08 16:15:53 +01:00
f5ea8878c2
Add a default CompilerCapabilities.h
...
This file assumes that the compiler doesn't support anything. If building
without CMake, it will be used and if you want to enable things, the file
can be edited.
When using CMake, a proper CompilerCapabilites.h will be generated and
CMake will set the include path order correctly in order to source the
correct file.
2012-12-26 12:54:52 +00:00