From a419c4f4e65ef0e3878e806e2b1d041480efac95 Mon Sep 17 00:00:00 2001 From: Matt Williams Date: Wed, 26 Dec 2012 15:07:15 +0000 Subject: [PATCH 01/14] Mark Vector::operator< as deprecated in the Python bindings --- library/bindings/Vector.i | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/library/bindings/Vector.i b/library/bindings/Vector.i index 555b7d15..37d0b3ab 100644 --- a/library/bindings/Vector.i +++ b/library/bindings/Vector.i @@ -34,6 +34,13 @@ PROPERTY(PolyVox::Vector, z, getZ, setZ) STR() }; +%feature("pythonprepend") PolyVox::Vector::operator< %{ + import warnings + warnings.warn("deprecated", DeprecationWarning) +%} + +//%csattributes PolyVox::Vector::operator< "[System.Obsolete(\"deprecated\")]" + %define VECTOR3(StorageType,OperationType,ReducedStorageType) %ignore PolyVox::Vector<3,StorageType,OperationType>::Vector(ReducedStorageType,ReducedStorageType,ReducedStorageType,ReducedStorageType); %ignore PolyVox::Vector<3,StorageType,OperationType>::Vector(ReducedStorageType,ReducedStorageType); From bc8240fe63324ec80a81475c420c209bdf43aaad Mon Sep 17 00:00:00 2001 From: Matt Williams Date: Wed, 26 Dec 2012 15:09:54 +0000 Subject: [PATCH 02/14] These checks are no longer needed since it's checked in the top level file --- library/PolyVoxCore/CMakeLists.txt | 2 -- library/PolyVoxUtil/CMakeLists.txt | 2 -- 2 files changed, 4 deletions(-) diff --git a/library/PolyVoxCore/CMakeLists.txt b/library/PolyVoxCore/CMakeLists.txt index 48bae99e..f6f9753f 100644 --- a/library/PolyVoxCore/CMakeLists.txt +++ b/library/PolyVoxCore/CMakeLists.txt @@ -20,8 +20,6 @@ # 3. This notice may not be removed or altered from any source # distribution. -CMAKE_MINIMUM_REQUIRED(VERSION 2.6) - PROJECT(PolyVoxCore) #Set up the C++11 feature header file based on the CheckCXX11Features script diff --git a/library/PolyVoxUtil/CMakeLists.txt b/library/PolyVoxUtil/CMakeLists.txt index a52006c9..7fbdb43e 100644 --- a/library/PolyVoxUtil/CMakeLists.txt +++ b/library/PolyVoxUtil/CMakeLists.txt @@ -20,8 +20,6 @@ # 3. This notice may not be removed or altered from any source # distribution. -CMAKE_MINIMUM_REQUIRED(VERSION 2.6) - PROJECT(PolyVoxUtil) #Projects source files From 03de39b8dd26f6142bc288292cd39dd3de1cf6bf Mon Sep 17 00:00:00 2001 From: Matt Williams Date: Wed, 26 Dec 2012 15:37:16 +0000 Subject: [PATCH 03/14] Add some documentation to the CompilerCapabilities.h files --- .../include/PolyVoxCore/Impl/CompilerCapabilities.h | 8 ++++++++ .../include/PolyVoxCore/Impl/CompilerCapabilities.h.in | 5 +++++ 2 files changed, 13 insertions(+) diff --git a/library/PolyVoxCore/include/PolyVoxCore/Impl/CompilerCapabilities.h b/library/PolyVoxCore/include/PolyVoxCore/Impl/CompilerCapabilities.h index d7cebe0c..325b5ed1 100644 --- a/library/PolyVoxCore/include/PolyVoxCore/Impl/CompilerCapabilities.h +++ b/library/PolyVoxCore/include/PolyVoxCore/Impl/CompilerCapabilities.h @@ -1,3 +1,11 @@ +/* + * This file provides the default compiler capabilities for for Visual Studio. + * On other compilers CMake will detect which features are available and create + * a file like this. + * + * To Enable these features in Visual Studio, define the variables in this file. +*/ + #ifndef __PolyVox_CompilerCapabilities_H__ #define __PolyVox_CompilerCapabilities_H__ diff --git a/library/PolyVoxCore/include/PolyVoxCore/Impl/CompilerCapabilities.h.in b/library/PolyVoxCore/include/PolyVoxCore/Impl/CompilerCapabilities.h.in index 5518dfb2..31f1ba80 100644 --- a/library/PolyVoxCore/include/PolyVoxCore/Impl/CompilerCapabilities.h.in +++ b/library/PolyVoxCore/include/PolyVoxCore/Impl/CompilerCapabilities.h.in @@ -1,3 +1,8 @@ +/* + * This file is an input file for the CMake build system. It is processed and + * placed in the build directory by CMake. +*/ + #ifndef __PolyVox_CompilerCapabilities_H__ #define __PolyVox_CompilerCapabilities_H__ From 9e7bb756871b0a3ddeeec1971e88c46319847aae Mon Sep 17 00:00:00 2001 From: Matt Williams Date: Wed, 26 Dec 2012 15:40:59 +0000 Subject: [PATCH 04/14] Disable the C++11 feature detection on Visual Studio There seems to be a bug in the interaction between CMake and Visual Studio which floods the 'recent projects' list with the TRY_COMPILE projects. If in the future this is fixed then it can re-enabled. --- CMakeLists.txt | 4 +++- library/PolyVoxCore/CMakeLists.txt | 6 ++++-- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 2fd957d9..1f42f886 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -69,7 +69,9 @@ if(CMAKE_CXX_COMPILER MATCHES "clang") ADD_DEFINITIONS(-std=c++0x) #Enable C++0x mode endif() -INCLUDE(cmake/Modules/CheckCXX11Features.cmake) +if(NOT MSVC) #This is causing problems in Visual Studio so disable it for now + INCLUDE(cmake/Modules/CheckCXX11Features.cmake) +endif() ADD_SUBDIRECTORY(library) diff --git a/library/PolyVoxCore/CMakeLists.txt b/library/PolyVoxCore/CMakeLists.txt index f6f9753f..69c66052 100644 --- a/library/PolyVoxCore/CMakeLists.txt +++ b/library/PolyVoxCore/CMakeLists.txt @@ -22,8 +22,10 @@ PROJECT(PolyVoxCore) -#Set up the C++11 feature header file based on the CheckCXX11Features script -CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/include/PolyVoxCore/Impl/CompilerCapabilities.h.in ${CMAKE_CURRENT_BINARY_DIR}/include/PolyVoxCore/Impl/CompilerCapabilities.h) +if(NOT MSVC) + #Set up the C++11 feature header file based on the CheckCXX11Features script + CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/include/PolyVoxCore/Impl/CompilerCapabilities.h.in ${CMAKE_CURRENT_BINARY_DIR}/include/PolyVoxCore/Impl/CompilerCapabilities.h) +endif() #Projects source files SET(CORE_SRC_FILES From 59d415e305c31b45b02125c479a81f27f1ebc0ca Mon Sep 17 00:00:00 2001 From: Matt Williams Date: Wed, 26 Dec 2012 17:11:08 +0000 Subject: [PATCH 05/14] Pave way for C# bindings This callback implementation is Python-specific and so should be disabled --- library/bindings/Raycast.i | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/library/bindings/Raycast.i b/library/bindings/Raycast.i index ed1869ca..8ae2c297 100644 --- a/library/bindings/Raycast.i +++ b/library/bindings/Raycast.i @@ -2,6 +2,8 @@ %{ #include "Raycast.h" +#ifdef SWIGPYTHON + template class PyCallback { @@ -43,11 +45,17 @@ PolyVox::RaycastResult raycastWithEndpointsPython(VolumeType* volData, const Pol return PolyVox::raycastWithEndpoints(volData, v3dStart, v3dEnd, newCallback); } +#endif + %} %include "Raycast.h" +#ifdef SWIGPYTHON + template PolyVox::RaycastResult raycastWithEndpointsPython(VolumeType* volData, const PolyVox::Vector3DFloat& v3dStart, const PolyVox::Vector3DFloat& v3dEnd, PyObject *callback); %template(raycastWithEndpointsSimpleVolumeuint8) raycastWithEndpointsPython, PyCallback > >; + +#endif From 81a4294a7dd63f8d9ba60c98f206ad3618658a47 Mon Sep 17 00:00:00 2001 From: Matt Williams Date: Wed, 26 Dec 2012 20:53:44 +0000 Subject: [PATCH 06/14] Enable SWIG generation of C# bindings --- library/bindings/CMakeLists.txt | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/library/bindings/CMakeLists.txt b/library/bindings/CMakeLists.txt index d807a118..040d0afe 100644 --- a/library/bindings/CMakeLists.txt +++ b/library/bindings/CMakeLists.txt @@ -48,6 +48,11 @@ if(ENABLE_BINDINGS) set_target_properties(${SWIG_MODULE_PolyVoxCorePython_REAL_NAME} PROPERTIES OUTPUT_NAME _PolyVoxCore) #set_target_properties(${SWIG_MODULE_PolyVoxCore_REAL_NAME} PROPERTIES SUFFIX ".pyd") SET_PROPERTY(TARGET ${SWIG_MODULE_PolyVoxCorePython_REAL_NAME} PROPERTY FOLDER "Bindings") + + swig_add_module(PolyVoxCoreCSharp csharp PolyVoxCore.i) + set(SWIG_MODULE_PolyVoxCoreCSharp_EXTRA_FLAGS "-dllimport;PolyVoxCoreCSharp") #This _should_ be inside UseSWIG.cmake - http://www.cmake.org/Bug/view.php?id=13814 + swig_link_libraries(PolyVoxCoreCSharp PolyVoxCore) + SET_PROPERTY(TARGET ${SWIG_MODULE_PolyVoxCoreCSharp_REAL_NAME} PROPERTY FOLDER "Bindings") else() set(BUILD_BINDINGS OFF CACHE BOOL "Will the bindings be built" FORCE) endif() From f87b19bd58208cc741c141dab7a1951a1e78660b Mon Sep 17 00:00:00 2001 From: David Williams Date: Sun, 2 Dec 2012 14:15:34 +0100 Subject: [PATCH 07/14] Fixed build error on VS2008 --- library/PolyVoxCore/include/PolyVoxCore/DefaultIsQuadNeeded.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/library/PolyVoxCore/include/PolyVoxCore/DefaultIsQuadNeeded.h b/library/PolyVoxCore/include/PolyVoxCore/DefaultIsQuadNeeded.h index 5775c4ba..81ddb9e5 100644 --- a/library/PolyVoxCore/include/PolyVoxCore/DefaultIsQuadNeeded.h +++ b/library/PolyVoxCore/include/PolyVoxCore/DefaultIsQuadNeeded.h @@ -24,7 +24,7 @@ freely, subject to the following restrictions: #ifndef __PolyVox_DefaultIsQuadNeeded_H__ #define __PolyVox_DefaultIsQuadNeeded_H__ -#include +#include "PolyVoxCore/Impl/TypeDef.h" namespace PolyVox { From 9a30fa54a532bfdc34291a1dfcad61c484ff0156 Mon Sep 17 00:00:00 2001 From: David Williams Date: Sun, 2 Dec 2012 14:17:41 +0100 Subject: [PATCH 08/14] Fixed bug with peek function checking in wrong direction. --- library/PolyVoxCore/include/PolyVoxCore/RawVolumeSampler.inl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/library/PolyVoxCore/include/PolyVoxCore/RawVolumeSampler.inl b/library/PolyVoxCore/include/PolyVoxCore/RawVolumeSampler.inl index 758e578d..39f51f3e 100644 --- a/library/PolyVoxCore/include/PolyVoxCore/RawVolumeSampler.inl +++ b/library/PolyVoxCore/include/PolyVoxCore/RawVolumeSampler.inl @@ -238,7 +238,7 @@ namespace PolyVox template VoxelType RawVolume::Sampler::peekVoxel0px1ny1nz(void) const { - if( BORDER_LOWX(this->mYPosInVolume) && BORDER_LOWZ(this->mZPosInVolume) ) + if( BORDER_LOWY(this->mYPosInVolume) && BORDER_LOWZ(this->mZPosInVolume) ) { return *(mCurrentVoxel - this->mVolume->getWidth() - this->mVolume->getWidth() * this->mVolume->getHeight()); } From 3b46aaa5d3431c185eefc78dec912f9e19ebb63d Mon Sep 17 00:00:00 2001 From: Matt Williams Date: Thu, 22 Nov 2012 22:23:07 +0000 Subject: [PATCH 09/14] 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. --- tests/TestLowPassFilter.cpp | 21 +++++++++++---------- 1 file changed, 11 insertions(+), 10 deletions(-) diff --git a/tests/TestLowPassFilter.cpp b/tests/TestLowPassFilter.cpp index 4ace36eb..902c26d6 100644 --- a/tests/TestLowPassFilter.cpp +++ b/tests/TestLowPassFilter.cpp @@ -58,7 +58,7 @@ void TestLowPassFilter::testExecute() RawVolume resultVolume(reg); - LowPassFilter< RawVolume, RawVolume, Density16 > lowPassfilter(&volData, reg, &resultVolume, reg, 5); + LowPassFilter< RawVolume, RawVolume, Density16 > lowPassfilter(&volData, reg, &resultVolume, reg, 3); //Test the normal implementation QBENCHMARK { @@ -74,16 +74,17 @@ void TestLowPassFilter::testExecute() QCOMPARE(resultVolume.getVoxelAt(7,7,7), Density8(4)); //Test the SAT implmentation - //FIXME - Shouldn't the results be the same as the normal case? - lowPassfilter.executeSAT(); + QBENCHMARK { + lowPassfilter.executeSAT(); + } QCOMPARE(resultVolume.getVoxelAt(0,0,0), Density8(4)); - QCOMPARE(resultVolume.getVoxelAt(1,1,1), Density8(8)); - QCOMPARE(resultVolume.getVoxelAt(2,2,2), Density8(19)); - QCOMPARE(resultVolume.getVoxelAt(3,3,3), Density8(12)); - QCOMPARE(resultVolume.getVoxelAt(4,4,4), Density8(19)); - QCOMPARE(resultVolume.getVoxelAt(5,5,5), Density8(12)); - QCOMPARE(resultVolume.getVoxelAt(6,6,6), Density8(8)); - QCOMPARE(resultVolume.getVoxelAt(7,7,7), Density8(2)); + QCOMPARE(resultVolume.getVoxelAt(1,1,1), Density8(21)); + QCOMPARE(resultVolume.getVoxelAt(2,2,2), Density8(10)); + QCOMPARE(resultVolume.getVoxelAt(3,3,3), Density8(21)); + QCOMPARE(resultVolume.getVoxelAt(4,4,4), Density8(10)); + QCOMPARE(resultVolume.getVoxelAt(5,5,5), Density8(21)); + QCOMPARE(resultVolume.getVoxelAt(6,6,6), Density8(10)); + QCOMPARE(resultVolume.getVoxelAt(7,7,7), Density8(4)); } QTEST_MAIN(TestLowPassFilter) From da77fa8432f7a3b1e18e4dd396216b4541877ba2 Mon Sep 17 00:00:00 2001 From: David Williams Date: Tue, 4 Dec 2012 21:57:54 +0100 Subject: [PATCH 10/14] Updated readme with some real information for BitBucket. --- README.rst | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/README.rst b/README.rst index 9081fcb5..6c88db24 100644 --- a/README.rst +++ b/README.rst @@ -1,4 +1,5 @@ PolyVox - The voxel management and manipulation library ======================================================= +PolyVox is the core technology which lies behind our games. It is a fast, lightweight C++ library for the storage and processing of volumetric (voxel-based) environments. It has applications in both games and medical/scientific visualisation, and is released under the terms of the `zlib license `_. -For installation instructions, please see INSTALL.txt +PolyVox is a relatively low-level library, and you will need experience in C++ and computer graphics/shaders to use it effectively. It is designed to be easily integrated into existing applications and is independent of your chosen graphics API. For more details please see 'this page '_ on our website. \ No newline at end of file From 7f4be2929e773021d8e6db8de12683bc3d5865b9 Mon Sep 17 00:00:00 2001 From: David Williams Date: Tue, 4 Dec 2012 22:26:39 +0100 Subject: [PATCH 11/14] Changed type of single quotes used for link. I'm not sure if this makes a difference but it's for consistency. --- README.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.rst b/README.rst index 6c88db24..9bf85940 100644 --- a/README.rst +++ b/README.rst @@ -2,4 +2,4 @@ PolyVox - The voxel management and manipulation library ======================================================= PolyVox is the core technology which lies behind our games. It is a fast, lightweight C++ library for the storage and processing of volumetric (voxel-based) environments. It has applications in both games and medical/scientific visualisation, and is released under the terms of the `zlib license `_. -PolyVox is a relatively low-level library, and you will need experience in C++ and computer graphics/shaders to use it effectively. It is designed to be easily integrated into existing applications and is independent of your chosen graphics API. For more details please see 'this page '_ on our website. \ No newline at end of file +PolyVox is a relatively low-level library, and you will need experience in C++ and computer graphics/shaders to use it effectively. It is designed to be easily integrated into existing applications and is independent of your chosen graphics API. For more details please see `this page `_ on our website. \ No newline at end of file From c10e992bf2b408863483408e9be373c47d13c688 Mon Sep 17 00:00:00 2001 From: Matt Williams Date: Wed, 26 Dec 2012 23:24:09 +0000 Subject: [PATCH 12/14] Fixed bug with SimpleVolume and negative positions. See commit 3f87fc780f6b60f6bf574833921bfca6 --- .../include/PolyVoxCore/SimpleVolume.inl | 18 ++++++++++++++---- 1 file changed, 14 insertions(+), 4 deletions(-) diff --git a/library/PolyVoxCore/include/PolyVoxCore/SimpleVolume.inl b/library/PolyVoxCore/include/PolyVoxCore/SimpleVolume.inl index 12cee40f..f811f456 100644 --- a/library/PolyVoxCore/include/PolyVoxCore/SimpleVolume.inl +++ b/library/PolyVoxCore/include/PolyVoxCore/SimpleVolume.inl @@ -197,18 +197,28 @@ namespace PolyVox throw std::invalid_argument("Block side length must be a power of two."); } - m_uBlockSideLength = uBlockSideLength; - m_uNoOfVoxelsPerBlock = m_uBlockSideLength * m_uBlockSideLength * m_uBlockSideLength; + //m_uBlockSideLength = uBlockSideLength; + //m_uNoOfVoxelsPerBlock = m_uBlockSideLength * m_uBlockSideLength * m_uBlockSideLength; m_pUncompressedBorderData = 0; this->m_regValidRegion = regValidRegion; - m_regValidRegionInBlocks.setLowerCorner(this->m_regValidRegion.getLowerCorner() / static_cast(uBlockSideLength)); - m_regValidRegionInBlocks.setUpperCorner(this->m_regValidRegion.getUpperCorner() / static_cast(uBlockSideLength)); + //m_regValidRegionInBlocks.setLowerCorner(this->m_regValidRegion.getLowerCorner() / static_cast(uBlockSideLength)); + //m_regValidRegionInBlocks.setUpperCorner(this->m_regValidRegion.getUpperCorner() / static_cast(uBlockSideLength)); //Compute the block side length m_uBlockSideLength = uBlockSideLength; m_uBlockSideLengthPower = logBase2(m_uBlockSideLength); + m_uNoOfVoxelsPerBlock = m_uBlockSideLength * m_uBlockSideLength * m_uBlockSideLength; + + //m_regValidRegionInBlocks.setLowerX(this->m_regValidRegion.getLowerX() >> m_uBlockSideLengthPower); + //m_regValidRegionInBlocks.setLowerY(this->m_regValidRegion.getLowerY() >> m_uBlockSideLengthPower); + //m_regValidRegionInBlocks.setLowerZ(this->m_regValidRegion.getLowerZ() >> m_uBlockSideLengthPower); + m_regValidRegionInBlocks.setLowerCorner(Vector3DInt32(this->m_regValidRegion.getLowerCorner().getX() >> m_uBlockSideLengthPower, this->m_regValidRegion.getLowerCorner().getY() >> m_uBlockSideLengthPower, this->m_regValidRegion.getLowerCorner().getZ() >> m_uBlockSideLengthPower)); + //m_regValidRegionInBlocks.setUpperX(this->m_regValidRegion.getUpperX() >> m_uBlockSideLengthPower); + //m_regValidRegionInBlocks.setUpperY(this->m_regValidRegion.getUpperY() >> m_uBlockSideLengthPower); + //m_regValidRegionInBlocks.setUpperZ(this->m_regValidRegion.getUpperZ() >> m_uBlockSideLengthPower); + m_regValidRegionInBlocks.setUpperCorner(Vector3DInt32(this->m_regValidRegion.getUpperCorner().getX() >> m_uBlockSideLengthPower, this->m_regValidRegion.getUpperCorner().getY() >> m_uBlockSideLengthPower, this->m_regValidRegion.getUpperCorner().getZ() >> m_uBlockSideLengthPower)); //Compute the size of the volume in blocks (and note +1 at the end) m_uWidthInBlocks = m_regValidRegionInBlocks.getUpperCorner().getX() - m_regValidRegionInBlocks.getLowerCorner().getX() + 1; From f0e2924c42ea5260fd453eed93e25423cf0ef98b Mon Sep 17 00:00:00 2001 From: Matt Williams Date: Wed, 26 Dec 2012 23:39:06 +0000 Subject: [PATCH 13/14] Fixed potential bug with negative voxel positions in large volume. See commit 1f9264a --- .../include/PolyVoxCore/LargeVolume.inl | 19 +++++++++++++------ 1 file changed, 13 insertions(+), 6 deletions(-) diff --git a/library/PolyVoxCore/include/PolyVoxCore/LargeVolume.inl b/library/PolyVoxCore/include/PolyVoxCore/LargeVolume.inl index 4e679477..8a6634f7 100644 --- a/library/PolyVoxCore/include/PolyVoxCore/LargeVolume.inl +++ b/library/PolyVoxCore/include/PolyVoxCore/LargeVolume.inl @@ -422,18 +422,25 @@ namespace PolyVox this->m_regValidRegion = regValidRegion; - m_regValidRegionInBlocks.setLowerCorner(this->m_regValidRegion.getLowerCorner() / static_cast(uBlockSideLength)); - m_regValidRegionInBlocks.setUpperCorner(this->m_regValidRegion.getUpperCorner() / static_cast(uBlockSideLength)); + //m_regValidRegionInBlocks.setLowerCorner(this->m_regValidRegion.getLowerCorner() / static_cast(uBlockSideLength)); + //m_regValidRegionInBlocks.setUpperCorner(this->m_regValidRegion.getUpperCorner() / static_cast(uBlockSideLength)); + //Compute the block side length + m_uBlockSideLength = uBlockSideLength; + m_uBlockSideLengthPower = logBase2(m_uBlockSideLength); + //m_regValidRegionInBlocks.setLowerX(this->m_regValidRegion.getLowerX() >> m_uBlockSideLengthPower); + //m_regValidRegionInBlocks.setLowerY(this->m_regValidRegion.getLowerY() >> m_uBlockSideLengthPower); + //m_regValidRegionInBlocks.setLowerZ(this->m_regValidRegion.getLowerZ() >> m_uBlockSideLengthPower); + m_regValidRegionInBlocks.setLowerCorner(Vector3DInt32(this->m_regValidRegion.getLowerCorner().getX() >> m_uBlockSideLengthPower, this->m_regValidRegion.getLowerCorner().getY() >> m_uBlockSideLengthPower, this->m_regValidRegion.getLowerCorner().getZ() >> m_uBlockSideLengthPower)); + //m_regValidRegionInBlocks.setUpperX(this->m_regValidRegion.getUpperX() >> m_uBlockSideLengthPower); + //m_regValidRegionInBlocks.setUpperY(this->m_regValidRegion.getUpperY() >> m_uBlockSideLengthPower); + //m_regValidRegionInBlocks.setUpperZ(this->m_regValidRegion.getUpperZ() >> m_uBlockSideLengthPower); + m_regValidRegionInBlocks.setUpperCorner(Vector3DInt32(this->m_regValidRegion.getUpperCorner().getX() >> m_uBlockSideLengthPower, this->m_regValidRegion.getUpperCorner().getY() >> m_uBlockSideLengthPower, this->m_regValidRegion.getUpperCorner().getZ() >> m_uBlockSideLengthPower)); setMaxNumberOfUncompressedBlocks(m_uMaxNumberOfUncompressedBlocks); //Clear the previous data m_pBlocks.clear(); - //Compute the block side length - m_uBlockSideLength = uBlockSideLength; - m_uBlockSideLengthPower = logBase2(m_uBlockSideLength); - //Clear the previous data m_pBlocks.clear(); From 8747c05be9694ee27898d753de1453edd27d2695 Mon Sep 17 00:00:00 2001 From: Matt Williams Date: Thu, 27 Dec 2012 00:04:40 +0000 Subject: [PATCH 14/14] Bump version number to 0.2.1 --- CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 6e8bbf35..1b587ab0 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -26,7 +26,7 @@ PROJECT(PolyVox) SET(POLYVOX_VERSION_MAJOR "0") SET(POLYVOX_VERSION_MINOR "2") -SET(POLYVOX_VERSION_PATCH "0") +SET(POLYVOX_VERSION_PATCH "1") SET(POLYVOX_VERSION "${POLYVOX_VERSION_MAJOR}.${POLYVOX_VERSION_MINOR}.${POLYVOX_VERSION_PATCH}" CACHE STRING "PolyVox version") MARK_AS_ADVANCED(FORCE POLYVOX_VERSION)