Daviw Williams
c06bfa9c09
Initial work on exposing the wrap modes to the marching cubes surface extractor.
2012-12-14 15:13:18 +01:00
Daviw Williams
c69417a72b
Commented out failing volume tests - will have to come back to these.
2012-12-13 15:59:25 +01:00
Daviw Williams
2d7045ddd1
Compile fixes for Linux.
...
Removed use of qrand() until I can confirm results match between platforms.
2012-12-13 15:29:22 +01:00
David Williams
ab6ec9380d
Tweaking results so that the tests pass... I'll have to debug this properly on a faster computer.
2012-12-11 22:14:26 +00:00
David Williams
d8da6a7b7f
Refactoring the volume unit test code, trying to get some performance benchmarks. Unit tests are currently not passing.
2012-12-11 21:57:30 +00:00
David Williams
dac0e5449f
Refactoring volume unit test code.
2012-12-11 20:18:26 +00:00
David Williams
8a376fa396
Improving (making tougher) the volume unit tests.
2012-12-10 23:25:17 +00:00
David Williams
ec203c6954
Added QBENCHMARK macros to volume unit test.
2012-12-08 11:25:10 +01:00
Daviw Williams
eb0c7e7a9f
More work on volume unit test.
2012-12-07 14:01:42 +01:00
Daviw Williams
e7e1f80e74
Work on volume unit test.
2012-12-07 13:54:00 +01:00
Daviw Williams
d0c9b7ba3d
Added extra tests to move functions.
2012-12-07 13:38:39 +01:00
David Williams
fea429a79a
Compile fixes for GCC.
2012-12-07 10:57:26 +01:00
David Williams
ab6898c4c5
Removed the assignment operator from SimpleVolume::Sampler and LargeVolume::Sampler. I had forgotten to call the base class assignment operator and this was causing problems.
...
Also updated the volume unit tests... at least I know now that it's helping!
2012-12-06 23:53:51 +01:00
Daviw Williams
d19f16ef64
Added new accessors to volume. getVoxel() and getVoxelWithWrapping() will probably replace getVoxelAt, which will be deprecated.
2012-12-06 16:17:21 +01:00
David Williams
3f87fc780f
Fixed bug with SimpleVolume and negative positions.
2012-12-05 23:49:39 +01:00
David Williams
9a05f04f85
Merge branch 'develop' into feature/wrap-modes
...
Conflicts:
library/PolyVoxCore/include/PolyVoxCore/RawVolumeSampler.inl
2012-12-03 21:30:51 +01:00
Daviw Williams
57b78e148b
Extended volume unit test. This is mainly to test whether I can commit to the new Git repo on BitBucket.
2012-12-03 16:21:18 +01:00
David Williams
47e8f4a86d
Improved raycast unit test so that it exits early if the ray leaves the volume.
2012-12-02 17:33:59 +01:00
David Williams
c37997bfe2
Updated new volumes test.
2012-12-02 14:02:50 +01:00
David Williams
9e8e976bfe
Work on new unit test for volumes.
2012-12-02 09:43:00 +01:00
David Williams
a026546bb4
Making some functions in Vector use the new 'OperationType'.
2012-11-29 18:16:32 +01:00
Matt Williams
79cc521666
Remove Density and Material tyes from bindings
...
We now only have the bindings for (u)int{8,16,32}_t and float. This will
hopefully simplify things.
2012-11-26 13:58:51 +00:00
Matt Williams
6e296b010f
Fix path for test
2012-11-25 18:46:56 +00:00
Matt Williams
3ed3ac6998
Start Python bindings for Raycast
...
This is only beginning of the bindings here. It's starting to get more
complicated due to the use of callbacks. To be able to define a callback
function in Python which is then called by a C++ algorithm requires quite a
bit of wrapping boilerplate.
The class PyCallback here will wrap a Python callable and call it with the
density value of the voxel. It's not very generic and at present it can't
pass the sampler itself since it's not available in the Python bindings.
Regardless, the new test added here (TestRaycast.py) works as expected and
hopefully we will be able to build up from here.
2012-11-25 18:07:12 +00:00
Matt Williams
bb3d3c4b68
Add a EXTRACTORS macro to automate the generation of the extractors
...
Like with VOLUMETYPES it is centralising the definitions of the volume and
voxel types.
2012-11-24 15:37:46 +00:00
Matt Williams
3902e00a0f
Add a CompilerCapabilities.h.in file which is filled in by CMake
...
It will #define a each of the basic features detected by CMake which can
then be used by other headers (like TypeDef.h) to set things up for
PolyVox.
It is this file which you will have to manually edit and rename if you want
to skip using CMake.
2012-11-23 15:41:26 +00:00
Matt Williams
3e79e0bfaa
Fix LowPassFilter test
...
The implicit default kernel size for the non-SAT version was 3 but the SAT
version was using an explicit kernel of 5 which caused a discrepancy.
Now just use a kernel of 3.
2012-11-22 22:23:07 +00:00
Matt Williams
3577a56eb3
Rename some SWIG stuff to prepare for C# bindings
2012-11-21 17:03:17 +00:00
unknown
d4edc1047e
Renamed 'PolyVoxImpl' to just 'Impl'.
2012-11-05 17:00:09 +01:00
unknown
3c69bb651f
Moved PolyVoxImpl inside of PolyVoxCore. This is the first stage of some tidying to better hide implementation details from the user.
2012-11-05 16:40:02 +01:00
David Williams
f07fc46458
Verified AStar fix.
2012-11-02 11:45:31 +01:00
unknown
1e81403e62
Hopefully fixed difference in A* between windows.Linux.
2012-11-02 11:36:28 +01:00
Matt Williams
bb87e9e628
Fix Ambient Occlusion Calculator to accept functors, functions and lambdas
...
By changing the 'pass by value' to be a 'pass by const reference' (and
adding some const qualifiers) the calculator can take any of the three
types.
Performance could be improved further using C++11 perfect forwarding to
pass the function on without changing a thing. I added a comment to remind
us of this.
Also added a test for passing a function and a (commented out) test for
passing a lambda.
2012-10-28 15:41:53 +00:00
Matt Williams
d6640f64d0
Add benchmark annotations to the tests
...
This will affect total running times simce some tests will be run multiple
times but it allows precise becnhmarking.
2012-10-27 21:37:54 +01:00
Matt Williams
2e71019d8f
Don't fail if Qt isn't installed
...
If Qt isn't installed, set the reporting variables correctly but don't fail.
2012-10-25 20:10:37 +01:00
p265186
3c0f2ab4b2
Fixed all warnings with -Wall and -Wextra
2012-10-25 17:12:41 +02:00
David Williams
c8ba433b88
Replaced temporary use of MyClassname.
2012-10-05 16:53:08 +02:00
David Williams
b86a3552e6
Tidying up unclassed ambient occlusion calculator.
2012-10-05 15:57:41 +02:00
David Williams
3b61adefaa
Work unclassing ambientOcclusionCalculator
2012-10-05 15:42:16 +02:00
David Williams
419fa2e5d4
Work on unclassing the ambient occlusion calculation as it is currently making use of the old raycasts.
2012-10-02 21:05:09 +02:00
David Williams
191d04ec02
Split the raycast funtion into two versions.
2012-10-02 17:26:25 +02:00
David Williams
7af38d83a3
Added meaningful raycast return values and improved tests.
2012-10-02 16:52:43 +02:00
David Williams
23184e6924
Initial work on unclassing raycast.
2012-10-02 16:03:39 +02:00
David Williams
01e2a88b13
Improving the LowPassFilter to take advantage of the features made available by the voxel refactoring.
...
Also improved the test case.
2012-09-28 18:09:21 +02:00
David Williams
4b63c34305
Brought the manual and API docs together under the same heading in Visual Studio.
2012-09-28 13:54:27 +02:00
Matt Williams
480c159327
Add copyright headers to all the CMake files
2012-08-24 13:20:41 +01:00
Matt Williams
b96309f4a4
Use the CMake folder tool to help IDEs groupt targets.
...
This is done as seen in http://athile.net/library/blog/?p=288
Hopefully this works in Visual Studio as KDevelop doesn't use this feature.
2012-08-12 04:29:51 +01:00
unknown
301f93d896
Turned isQuadNeeded() (which was a stl::function) into a function object.
2012-08-09 16:06:10 +02:00
Matt Williams
1a3999335a
Change CMake variable name to our standard scheme
2012-07-19 19:57:19 +01:00
Matt Williams
f11b4e17c1
Build only one of static or shared libraries
...
As discussed on the forums, to simplify the CMake code and avoid having to
manually specify dependencies this removes the hack to allow both static
and shared libraries to be built at the same time.
It introduces the new variable LIBRARY_TYPE which can be either STATIC or
DYNAMIC.
See: http://www.volumesoffun.com/phpBB3/viewtopic.php?p=3203#p3203
2012-07-19 17:33:34 +01:00