Merge branch 'master' of git@gitorious.org:polyvox/polyvox.git
Conflicts: library/PolyVoxCore/include/PolyVoxCore/Raycast.inl
This commit is contained in:
commit
63d8c4c083
@ -30,6 +30,7 @@ freely, subject to the following restrictions:
|
|||||||
#include "PolyVoxCore/Array.h"
|
#include "PolyVoxCore/Array.h"
|
||||||
|
|
||||||
#include <list>
|
#include <list>
|
||||||
|
#include <stdexcept> //For runtime_error
|
||||||
|
|
||||||
namespace PolyVox
|
namespace PolyVox
|
||||||
{
|
{
|
||||||
|
@ -163,7 +163,7 @@ namespace PolyVox
|
|||||||
#if defined(_MSC_VER)
|
#if defined(_MSC_VER)
|
||||||
class Sampler : public Volume<VoxelType>::Sampler< LargeVolume<VoxelType> > //This line works on VS2010
|
class Sampler : public Volume<VoxelType>::Sampler< LargeVolume<VoxelType> > //This line works on VS2010
|
||||||
#else
|
#else
|
||||||
class Sampler : public Volume<VoxelType>::Sampler Nested< LargeVolume<VoxelType> > //This line works on GCC
|
class Sampler : public Volume<VoxelType>::template Sampler< LargeVolume<VoxelType> > //This line works on GCC
|
||||||
#endif
|
#endif
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
|
@ -103,6 +103,7 @@ namespace PolyVox
|
|||||||
LargeVolume<VoxelType>::~LargeVolume()
|
LargeVolume<VoxelType>::~LargeVolume()
|
||||||
{
|
{
|
||||||
flushAll();
|
flushAll();
|
||||||
|
delete[] m_pUncompressedBorderData;
|
||||||
}
|
}
|
||||||
|
|
||||||
////////////////////////////////////////////////////////////////////////////////
|
////////////////////////////////////////////////////////////////////////////////
|
||||||
|
@ -259,9 +259,9 @@ namespace PolyVox
|
|||||||
bool MeshDecimator<VertexType>::collapseChangesFaceNormals(uint32_t uSrc, uint32_t uDst, float fThreshold)
|
bool MeshDecimator<VertexType>::collapseChangesFaceNormals(uint32_t uSrc, uint32_t uDst, float fThreshold)
|
||||||
{
|
{
|
||||||
bool faceFlipped = false;
|
bool faceFlipped = false;
|
||||||
vector<uint32_t>& triangles = trianglesUsingVertex[uSrc];
|
std::vector<uint32_t>& triangles = trianglesUsingVertex[uSrc];
|
||||||
|
|
||||||
for(vector<uint32_t>::iterator triIter = triangles.begin(); triIter != triangles.end(); triIter++)
|
for(std::vector<uint32_t>::iterator triIter = triangles.begin(); triIter != triangles.end(); triIter++)
|
||||||
{
|
{
|
||||||
uint32_t tri = *triIter;
|
uint32_t tri = *triIter;
|
||||||
|
|
||||||
|
@ -52,7 +52,7 @@ namespace PolyVox
|
|||||||
#if defined(_MSC_VER)
|
#if defined(_MSC_VER)
|
||||||
class Sampler : public Volume<VoxelType>::Sampler< RawVolume<VoxelType> > //This line works on VS2010
|
class Sampler : public Volume<VoxelType>::Sampler< RawVolume<VoxelType> > //This line works on VS2010
|
||||||
#else
|
#else
|
||||||
class Sampler : public Volume<VoxelType>::Sampler Nested< RawVolume<VoxelType> > //This line works on GCC
|
class Sampler : public Volume<VoxelType>::template Sampler< RawVolume<VoxelType> > //This line works on GCC
|
||||||
#endif
|
#endif
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
|
@ -145,6 +145,7 @@ namespace PolyVox
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
m_result.previousVoxel = Vector3DInt32(i,j,k);
|
m_result.previousVoxel = Vector3DInt32(i,j,k);
|
||||||
|
|
||||||
if(tx <= ty && tx <= tz)
|
if(tx <= ty && tx <= tz)
|
||||||
{
|
{
|
||||||
if(i == iend) break;
|
if(i == iend) break;
|
||||||
|
@ -49,6 +49,7 @@ namespace PolyVox
|
|||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
Block(uint16_t uSideLength = 0);
|
Block(uint16_t uSideLength = 0);
|
||||||
|
~Block();
|
||||||
|
|
||||||
uint16_t getSideLength(void) const;
|
uint16_t getSideLength(void) const;
|
||||||
VoxelType getVoxelAt(uint16_t uXPos, uint16_t uYPos, uint16_t uZPos) const;
|
VoxelType getVoxelAt(uint16_t uXPos, uint16_t uYPos, uint16_t uZPos) const;
|
||||||
@ -77,7 +78,7 @@ namespace PolyVox
|
|||||||
#if defined(_MSC_VER)
|
#if defined(_MSC_VER)
|
||||||
class Sampler : public Volume<VoxelType>::Sampler< SimpleVolume<VoxelType> > //This line works on VS2010
|
class Sampler : public Volume<VoxelType>::Sampler< SimpleVolume<VoxelType> > //This line works on VS2010
|
||||||
#else
|
#else
|
||||||
class Sampler : public Volume<VoxelType>::Sampler Nested< SimpleVolume<VoxelType> > //This line works on GCC
|
class Sampler : public Volume<VoxelType>::template Sampler< SimpleVolume<VoxelType> > //This line works on GCC
|
||||||
#endif
|
#endif
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
|
@ -71,7 +71,7 @@ namespace PolyVox
|
|||||||
SimpleVolume<VoxelType>::~SimpleVolume()
|
SimpleVolume<VoxelType>::~SimpleVolume()
|
||||||
{
|
{
|
||||||
delete[] m_pBlocks;
|
delete[] m_pBlocks;
|
||||||
m_pBlocks = 0;
|
delete[] m_pUncompressedBorderData;
|
||||||
}
|
}
|
||||||
|
|
||||||
////////////////////////////////////////////////////////////////////////////////
|
////////////////////////////////////////////////////////////////////////////////
|
||||||
|
@ -35,6 +35,12 @@ namespace PolyVox
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
template <typename VoxelType>
|
||||||
|
SimpleVolume<VoxelType>::Block::~Block()
|
||||||
|
{
|
||||||
|
delete[] m_tUncompressedData;
|
||||||
|
}
|
||||||
|
|
||||||
template <typename VoxelType>
|
template <typename VoxelType>
|
||||||
uint16_t SimpleVolume<VoxelType>::Block::getSideLength(void) const
|
uint16_t SimpleVolume<VoxelType>::Block::getSideLength(void) const
|
||||||
{
|
{
|
||||||
|
@ -24,6 +24,8 @@ freely, subject to the following restrictions:
|
|||||||
#ifndef __PolyVox_VolumeResampler_H__
|
#ifndef __PolyVox_VolumeResampler_H__
|
||||||
#define __PolyVox_VolumeResampler_H__
|
#define __PolyVox_VolumeResampler_H__
|
||||||
|
|
||||||
|
#include <cmath>
|
||||||
|
|
||||||
namespace PolyVox
|
namespace PolyVox
|
||||||
{
|
{
|
||||||
template< template<typename> class SrcVolumeType, template<typename> class DestVolumeType, typename VoxelType>
|
template< template<typename> class SrcVolumeType, template<typename> class DestVolumeType, typename VoxelType>
|
||||||
|
@ -119,7 +119,8 @@ namespace PolyVox
|
|||||||
uint8_t voxel110Den = voxel110.getDensity();
|
uint8_t voxel110Den = voxel110.getDensity();
|
||||||
uint8_t voxel111Den = voxel111.getDensity();
|
uint8_t voxel111Den = voxel111.getDensity();
|
||||||
|
|
||||||
float dummy;
|
//FIXME - should accept all float parameters, but GCC complains?
|
||||||
|
double dummy;
|
||||||
sx = modf(sx, &dummy);
|
sx = modf(sx, &dummy);
|
||||||
sy = modf(sy, &dummy);
|
sy = modf(sy, &dummy);
|
||||||
sz = modf(sz, &dummy);
|
sz = modf(sz, &dummy);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user