windows compilation bugfixes, removed many warnings
parent
35adc5aca8
commit
768bacccdc
|
@ -13,8 +13,9 @@ OEXRINCLUDE = ['#tools/windows/include/OpenEXR']
|
|||
OEXRFLAGS = ['/D', 'OPENEXR_DLL']
|
||||
OEXRLIB = ['IlmImf', 'IlmThread', 'Iex', 'zlib1', 'Half']
|
||||
BOOSTINCLUDE = ['#tools/boost']
|
||||
BOOSTLIB = ['libboost_system', 'libboost_filesystem']
|
||||
COLLADAINCLUDE = ['#tools/windows/include/colladadom', '#tools/windows/include/colladadom/1.4']
|
||||
COLLADALIB = ['libcollada14dom21', 'libboost_system', 'libboost_filesystem']
|
||||
COLLADALIB = ['libcollada14dom21']
|
||||
XERCESLIB = ['xerces-c_3']
|
||||
PNGLIB = ['libpng13']
|
||||
JPEGLIB = ['jpeg62']
|
||||
|
|
|
@ -13,8 +13,9 @@ OEXRINCLUDE = ['#tools/windows/include/OpenEXR']
|
|||
OEXRFLAGS = ['/D', 'OPENEXR_DLL']
|
||||
OEXRLIB = ['IlmImf', 'IlmThread', 'Iex', 'zlib1', 'Half']
|
||||
BOOSTINCLUDE = ['#tools/boost']
|
||||
BOOSTLIB = ['libboost_system', 'libboost_filesystem']
|
||||
COLLADAINCLUDE = ['#tools/windows/include/colladadom', '#tools/windows/include/colladadom/1.4']
|
||||
COLLADALIB = ['libcollada14dom21', 'libboost_system', 'libboost_filesystem']
|
||||
COLLADALIB = ['libcollada14dom21']
|
||||
XERCESLIB = ['xerces-c_3']
|
||||
PNGLIB = ['libpng13']
|
||||
JPEGLIB = ['jpeg62']
|
||||
|
|
|
@ -27,7 +27,7 @@ MTS_NAMESPACE_BEGIN
|
|||
* This class can be used to transform uniformly distributed samples
|
||||
* so that they match the stored distribution.
|
||||
*/
|
||||
class DiscretePDF {
|
||||
struct DiscretePDF {
|
||||
public:
|
||||
/// Allocate a PDF with the given number of entries
|
||||
explicit inline DiscretePDF(int nEntries = 0) : m_ready(false) {
|
||||
|
|
|
@ -90,6 +90,8 @@
|
|||
#endif
|
||||
|
||||
#define SIZE_T_FMT "%Iu"
|
||||
#define BOOST_FILESYSTEM_NO_LIB
|
||||
#define BOOST_SYSTEM_NO_LIB
|
||||
#else
|
||||
#define MTS_EXPORT
|
||||
#define MTS_EXPORT_CORE
|
||||
|
|
|
@ -44,8 +44,13 @@ template <typename T> struct TPoint2 {
|
|||
/// Initialize the point with the specified X, Y and Z components
|
||||
TPoint2(T x, T y) : x(x), y(y) { }
|
||||
|
||||
/// Initialize the point from a point data structure
|
||||
TPoint2(const TVector2<T> &vec) : x(vec.x), y(vec.y) { }
|
||||
/// Initialize the point with the components of another point
|
||||
template <typename T2> explicit TPoint2(const TPoint2<T2> &p)
|
||||
: x((T) p.x), y((T) p.y) { }
|
||||
|
||||
/// Initialize the point with the components of a vector data structure
|
||||
template <typename T2> explicit TPoint2(const TVector2<T2> &v)
|
||||
: x((T) v.x), y((T) v.y) { }
|
||||
|
||||
/// Initialize all components of the the point with the specified value
|
||||
explicit TPoint2(T val) : x(val), y(val) { }
|
||||
|
@ -110,7 +115,7 @@ template <typename T> struct TPoint2 {
|
|||
return TPoint2(-x, -y);
|
||||
}
|
||||
|
||||
/// Divide the point's coordinates by the given scalar
|
||||
/// Divide the point's coordinates by the given scalar and return the result
|
||||
TPoint2 operator/(T f) const {
|
||||
#ifdef MTS_DEBUG
|
||||
if (f == 0)
|
||||
|
@ -120,6 +125,7 @@ template <typename T> struct TPoint2 {
|
|||
return TPoint2(x * recip, y * recip);
|
||||
}
|
||||
|
||||
/// Divide the point's coordinates by the given scalar
|
||||
TPoint2 &operator/=(T f) {
|
||||
#ifdef MTS_DEBUG
|
||||
if (f == 0)
|
||||
|
@ -173,10 +179,6 @@ template <typename T> inline TPoint2<T> operator*(T f, const TPoint2<T> &v) {
|
|||
return v*f;
|
||||
}
|
||||
|
||||
template <typename T> inline TVector2<T>::TVector2(const TPoint2<T> &p)
|
||||
: x(p.x), y(p.y) { }
|
||||
|
||||
|
||||
template <typename T> inline T distance(const TPoint2<T> &p1, const TPoint2<T> &p2) {
|
||||
return (p1-p2).length();
|
||||
}
|
||||
|
@ -224,8 +226,13 @@ template <typename T> struct TPoint3 {
|
|||
/// Initialize the point with the specified X, Y and Z components
|
||||
TPoint3(T x, T y, T z) : x(x), y(y), z(z) { }
|
||||
|
||||
/// Initialize the point from a point data structure
|
||||
TPoint3(const TVector3<T> &vec) : x(vec.x), y(vec.y), z(vec.z) { }
|
||||
/// Initialize the point with the components of another point
|
||||
template <typename T2> explicit TPoint3(const TPoint3<T2> &p)
|
||||
: x((T) p.x), y((T) p.y), z((T) p.z) { }
|
||||
|
||||
/// Initialize the point with the components of a vector data structure
|
||||
template <typename T2> explicit TPoint3(const TVector3<T2> &v)
|
||||
: x((T) v.x), y((T) v.y), z((T) v.z) { }
|
||||
|
||||
/// Initialize all components of the the point with the specified value
|
||||
explicit TPoint3(T val) : x(val), y(val), z(val) { }
|
||||
|
@ -291,7 +298,7 @@ template <typename T> struct TPoint3 {
|
|||
return TPoint3(-x, -y, -z);
|
||||
}
|
||||
|
||||
/// Divide the point's coordinates by the given scalar
|
||||
/// Divide the point's coordinates by the given scalar and return the result
|
||||
TPoint3 operator/(T f) const {
|
||||
#ifdef MTS_DEBUG
|
||||
if (f == 0)
|
||||
|
@ -301,6 +308,7 @@ template <typename T> struct TPoint3 {
|
|||
return TPoint3(x * recip, y * recip, z * recip);
|
||||
}
|
||||
|
||||
/// Divide the point's coordinates by the given scalar
|
||||
TPoint3 &operator/=(T f) {
|
||||
#ifdef MTS_DEBUG
|
||||
if (f == 0)
|
||||
|
@ -355,10 +363,6 @@ template <typename T> inline TPoint3<T> operator*(T f, const TPoint3<T> &v) {
|
|||
return v*f;
|
||||
}
|
||||
|
||||
template <typename T> inline TVector3<T>::TVector3(const TPoint3<T> &p)
|
||||
: x(p.x), y(p.y), z(p.z) { }
|
||||
|
||||
|
||||
template <typename T> inline T distance(const TPoint3<T> &p1, const TPoint3<T> &p2) {
|
||||
return (p1-p2).length();
|
||||
}
|
||||
|
@ -406,9 +410,14 @@ template <typename T> struct TPoint4 {
|
|||
|
||||
/// Initialize the point with the specified X, Y and Z components
|
||||
TPoint4(T x, T y, T z, T w) : x(x), y(y), z(z), w(w) { }
|
||||
|
||||
/// Initialize the point from a point data structure
|
||||
TPoint4(const TVector4<T> &vec) : x(vec.x), y(vec.y), z(vec.z), w(vec.w) { }
|
||||
|
||||
/// Initialize the point with the components of another point
|
||||
template <typename T2> explicit TPoint4(const TPoint4<T2> &p)
|
||||
: x((T) p.x), y((T) p.y), z((T) p.z), w((T) p.w) { }
|
||||
|
||||
/// Initialize the point with the components of a vector data structure
|
||||
template <typename T2> explicit TPoint4(const TVector4<T2> &v)
|
||||
: x((T) v.x), y((T) v.y), z((T) v.z), w((T) v.w) { }
|
||||
|
||||
/// Initialize all components of the the point with the specified value
|
||||
explicit TPoint4(T val) : x(val), y(val), z(val), w(val) { }
|
||||
|
@ -475,7 +484,7 @@ template <typename T> struct TPoint4 {
|
|||
return TPoint4(-x, -y, -z, -w);
|
||||
}
|
||||
|
||||
/// Divide the point's coordinates by the given scalar
|
||||
/// Divide the point's coordinates by the given scalar and return the result
|
||||
TPoint4 operator/(T f) const {
|
||||
#ifdef MTS_DEBUG
|
||||
if (f == 0)
|
||||
|
@ -485,6 +494,7 @@ template <typename T> struct TPoint4 {
|
|||
return TPoint4(x * recip, y * recip, z * recip, w * recip);
|
||||
}
|
||||
|
||||
/// Divide the point's coordinates by the given scalar
|
||||
TPoint4 &operator/=(T f) {
|
||||
#ifdef MTS_DEBUG
|
||||
if (f == 0)
|
||||
|
@ -540,10 +550,6 @@ template <typename T> inline TPoint4<T> operator*(T f, const TPoint4<T> &v) {
|
|||
return v*f;
|
||||
}
|
||||
|
||||
template <typename T> inline TVector4<T>::TVector4(const TPoint4<T> &p)
|
||||
: x(p.x), y(p.y), z(p.z), w(p.w) { }
|
||||
|
||||
|
||||
template <typename T> inline T distance(const TPoint4<T> &p1, const TPoint4<T> &p2) {
|
||||
return (p1-p2).length();
|
||||
}
|
||||
|
|
|
@ -101,7 +101,7 @@ private:
|
|||
* When SPECTRUM_SAMPLES is set to 3 (the default), this class
|
||||
* falls back to linear RGB as its internal representation.
|
||||
*/
|
||||
class MTS_EXPORT_CORE Spectrum {
|
||||
struct MTS_EXPORT_CORE Spectrum {
|
||||
public:
|
||||
/// Create a new spectral power distribution, but don't initialize the contents
|
||||
inline Spectrum() { }
|
||||
|
@ -446,7 +446,9 @@ protected:
|
|||
static const int CIE_end = 830;
|
||||
static const int CIE_count = CIE_end - CIE_start + 1;
|
||||
static const Float CIE_normalization;
|
||||
static const Float CIE_X[CIE_count], CIE_Y[CIE_count], CIE_Z[CIE_count];
|
||||
static const Float CIE_X[CIE_count];
|
||||
static const Float CIE_Y[CIE_count];
|
||||
static const Float CIE_Z[CIE_count];
|
||||
/// @}
|
||||
};
|
||||
|
||||
|
|
|
@ -62,8 +62,6 @@ namespace std {
|
|||
/// @endcond
|
||||
|
||||
#if defined(_MSC_VER)
|
||||
#define _USE_MATH_DEFINES
|
||||
#include <math.h>
|
||||
#include <float.h>
|
||||
|
||||
#define snprintf _snprintf
|
||||
|
|
|
@ -76,12 +76,10 @@ protected:
|
|||
virtual ~Matrix4x4() { }
|
||||
};
|
||||
|
||||
struct Frame;
|
||||
|
||||
/**
|
||||
* \brief Encapsulates a 4x4 linear transformation and its inverse
|
||||
*/
|
||||
class MTS_EXPORT_CORE Transform {
|
||||
struct MTS_EXPORT_CORE Transform {
|
||||
public:
|
||||
/// Create an identity transformation
|
||||
Transform();
|
||||
|
|
|
@ -164,12 +164,12 @@ extern MTS_EXPORT_CORE Point2 squareToTriangle(const Point2 &sample);
|
|||
|
||||
/// Convert radians to degrees
|
||||
inline Float radToDeg(Float rad) {
|
||||
return 180.0f*rad/M_PI;
|
||||
return 180.0f * rad / M_PI;
|
||||
}
|
||||
|
||||
/// Convert degrees to radians
|
||||
inline Float degToRad(Float deg) {
|
||||
return deg*M_PI/180.0f;
|
||||
return deg * M_PI / 180.0f;
|
||||
}
|
||||
|
||||
/// Simple floating point clamping function
|
||||
|
|
|
@ -48,8 +48,13 @@ public:
|
|||
/// Initialize all components of the the vector with the specified value
|
||||
explicit TVector2(T val) : x(val), y(val) { }
|
||||
|
||||
/// Initialize a vector with the components of a point data structure
|
||||
explicit TVector2(const TPoint2<T> &point);
|
||||
/// Initialize the vector with the components of a point data structure
|
||||
template <typename T2> explicit TVector2(const TVector2<T2> &v)
|
||||
: x((T) v.x), y((T) v.y) { }
|
||||
|
||||
/// Initialize the vector with the components of another vector data structure
|
||||
template <typename T2> explicit TVector2(const TPoint2<T2> &p)
|
||||
: x((T) p.x), y((T) p.y) { }
|
||||
|
||||
/// Unserialize a vector from a binary data stream
|
||||
TVector2(Stream *stream) {
|
||||
|
@ -95,7 +100,7 @@ public:
|
|||
return TVector2(-x, -y);
|
||||
}
|
||||
|
||||
/// Divide the vector by the given scalar
|
||||
/// Divide the vector by the given scalar and return the result
|
||||
TVector2 operator/(T f) const {
|
||||
#ifdef MTS_DEBUG
|
||||
if (f == 0)
|
||||
|
@ -105,6 +110,7 @@ public:
|
|||
return TVector2(x * recip, y * recip);
|
||||
}
|
||||
|
||||
/// Divide the vector by the given scalar
|
||||
TVector2 &operator/=(T f) {
|
||||
#ifdef MTS_DEBUG
|
||||
if (f == 0)
|
||||
|
@ -224,8 +230,13 @@ public:
|
|||
/// Initialize all components of the the vector with the specified value
|
||||
explicit TVector3(T val) : x(val), y(val), z(val) { }
|
||||
|
||||
/// Initialize a vector with the components of a point data structure
|
||||
explicit TVector3(const TPoint3<T> &point);
|
||||
/// Initialize the vector with the components of a point data structure
|
||||
template <typename T2> explicit TVector3(const TVector3<T2> &v)
|
||||
: x((T) v.x), y((T) v.y), z((T) v.z) { }
|
||||
|
||||
/// Initialize the vector with the components of another vector data structure
|
||||
template <typename T2> explicit TVector3(const TPoint3<T2> &p)
|
||||
: x((T) p.x), y((T) p.y), z((T) p.z) { }
|
||||
|
||||
/// Unserialize a vector from a binary data stream
|
||||
TVector3(Stream *stream) {
|
||||
|
@ -272,7 +283,7 @@ public:
|
|||
return TVector3(-x, -y, -z);
|
||||
}
|
||||
|
||||
/// Divide the vector by the given scalar
|
||||
/// Divide the vector by the given scalar and return the result
|
||||
TVector3 operator/(T f) const {
|
||||
#ifdef MTS_DEBUG
|
||||
if (f == 0)
|
||||
|
@ -282,6 +293,7 @@ public:
|
|||
return TVector3(x * recip, y * recip, z * recip);
|
||||
}
|
||||
|
||||
/// Divide the vector by the given scalar
|
||||
TVector3 &operator/=(T f) {
|
||||
#ifdef MTS_DEBUG
|
||||
if (f == 0)
|
||||
|
@ -413,8 +425,13 @@ public:
|
|||
/// Initialize all components of the the vector with the specified value
|
||||
explicit TVector4(T val) : x(val), y(val), z(val), w(val) { }
|
||||
|
||||
/// Initialize a vector with the components of a point data structure
|
||||
explicit TVector4(const TPoint4<T> &point);
|
||||
/// Initialize the vector with the components of a point data structure
|
||||
template <typename T2> explicit TVector4(const TVector4<T2> &v)
|
||||
: x((T) v.x), y((T) v.y), z((T) v.z), w((T) v.w) { }
|
||||
|
||||
/// Initialize the vector with the components of another vector data structure
|
||||
template <typename T2> explicit TVector4(const TPoint4<T2> &p)
|
||||
: x((T) p.x), y((T) p.y), z((T) p.z), w((T) p.w) { }
|
||||
|
||||
/// Unserialize a vector from a binary data stream
|
||||
TVector4(Stream *stream) {
|
||||
|
@ -462,7 +479,7 @@ public:
|
|||
return TVector4(-x, -y, -z, -w);
|
||||
}
|
||||
|
||||
/// Divide the vector by the given scalar
|
||||
/// Divide the vector by the given scalar and return the result
|
||||
TVector4 operator/(T f) const {
|
||||
#ifdef MTS_DEBUG
|
||||
if (f == 0)
|
||||
|
@ -472,6 +489,7 @@ public:
|
|||
return TVector4(x * recip, y * recip, z * recip, w * recip);
|
||||
}
|
||||
|
||||
/// Divide the vector by the given scalar
|
||||
TVector4 &operator/=(T f) {
|
||||
#ifdef MTS_DEBUG
|
||||
if (f == 0)
|
||||
|
|
|
@ -51,7 +51,7 @@ class PhaseFunction;
|
|||
class PhotonMap;
|
||||
class PreviewWorker;
|
||||
class ProjectiveCamera;
|
||||
class RadianceQueryRecord;
|
||||
struct RadianceQueryRecord;
|
||||
class Random;
|
||||
class RangeWorkUnit;
|
||||
class ReconstructionFilter;
|
||||
|
@ -65,7 +65,7 @@ class Scene;
|
|||
class SceneHandler;
|
||||
class Shader;
|
||||
class Shape;
|
||||
class ShapeSamplingRecord;
|
||||
struct ShapeSamplingRecord;
|
||||
class SparseMipmap3D;
|
||||
class Spiral;
|
||||
class Subsurface;
|
||||
|
|
|
@ -53,6 +53,8 @@
|
|||
#define MTS_USE_MT 1
|
||||
#endif
|
||||
|
||||
#include <mitsuba/render/triaccel.h>
|
||||
|
||||
/**
|
||||
* Pre-defined max. stack size for the ray traversal algorithm
|
||||
*/
|
||||
|
|
|
@ -16,9 +16,6 @@
|
|||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#define BOOST_FILESYSTEM_NO_LIB
|
||||
#define BOOST_SYSTEM_NO_LIB
|
||||
|
||||
#include <mitsuba/mitsuba.h>
|
||||
#include <mitsuba/render/trimesh.h>
|
||||
#include <mitsuba/core/fresolver.h>
|
||||
|
@ -154,9 +151,9 @@ VertexData *fetchVertexData(Transform transform, std::ostream &os,
|
|||
domAccessor *accessor = techniqueCommon->getAccessor();
|
||||
if (!accessor)
|
||||
SLog(EError, "Data source does not have a <accessor> tag!");
|
||||
unsigned int nParams = accessor->getParam_array().getCount(),
|
||||
stride = accessor->getStride();
|
||||
size_t size = accessor->getCount();
|
||||
unsigned int nParams = (unsigned int) accessor->getParam_array().getCount(),
|
||||
stride = (unsigned int) accessor->getStride();
|
||||
size_t size = (size_t) accessor->getCount();
|
||||
SAssert(nParams <= 4);
|
||||
|
||||
Vec4 *target = new Vec4[size];
|
||||
|
|
|
@ -100,7 +100,7 @@ int colladaMain(int argc, char **argv) {
|
|||
logLevel = EDebug;
|
||||
break;
|
||||
case 'f':
|
||||
fov = strtod(optarg, &end_ptr);
|
||||
fov = (Float) strtod(optarg, &end_ptr);
|
||||
if (*end_ptr != '\0')
|
||||
SLog(EError, "Invalid field of view value!");
|
||||
break;
|
||||
|
|
|
@ -21,7 +21,7 @@
|
|||
|
||||
#if defined(WIN32)
|
||||
#undef _CRT_SECURE_NO_WARNINGS
|
||||
#define _USE_MATH_DEFINES
|
||||
#define _MATH_DEFINES_DEFINED
|
||||
#endif
|
||||
|
||||
#include <ImfRgba.h>
|
||||
|
|
|
@ -90,7 +90,7 @@ void FileStream::open(const fs::path &path, EFileMode mode) {
|
|||
break;
|
||||
}
|
||||
|
||||
m_file = CreateFile(filename.c_str(), dwDesiredAccess,
|
||||
m_file = CreateFile(path.file_string().c_str(), dwDesiredAccess,
|
||||
FILE_SHARE_WRITE | FILE_SHARE_READ, 0,
|
||||
dwCreationDisposition, FILE_ATTRIBUTE_NORMAL, 0);
|
||||
|
||||
|
|
|
@ -65,7 +65,7 @@ Plugin::Plugin(const std::string &shortName, const fs::path &path)
|
|||
|
||||
try {
|
||||
m_createInstance = (CreateInstanceFunc) getSymbol("CreateInstance");
|
||||
} catch (const std::exception &ex) {
|
||||
} catch (const std::exception &) {
|
||||
m_createUtility = (CreateUtilityFunc) getSymbol("CreateUtility");
|
||||
m_isUtility = true;
|
||||
}
|
||||
|
|
|
@ -73,7 +73,7 @@ Float SHVector::eval(Float theta, Float phi) const {
|
|||
}
|
||||
|
||||
Float SHVector::findMinimum(int res = 32) const {
|
||||
Float hExt = M_PI / res, hInt = (2*M_PI)/(res*2);
|
||||
Float hExt = (Float) M_PI / res, hInt = (2 * (Float) M_PI)/(res*2);
|
||||
Float minimum = std::numeric_limits<Float>::infinity();
|
||||
|
||||
for (int i=0; i<=res; ++i) {
|
||||
|
@ -88,7 +88,7 @@ Float SHVector::findMinimum(int res = 32) const {
|
|||
}
|
||||
|
||||
void SHVector::offset(Float value) {
|
||||
operator()(0, 0) += 2 * value * std::sqrt(M_PI);
|
||||
operator()(0, 0) += 2 * value * (Float) std::sqrt(M_PI);
|
||||
}
|
||||
|
||||
Float SHVector::eval(const Vector &v) const {
|
||||
|
@ -160,7 +160,7 @@ Float SHVector::legendre(int l, int m, Float x) {
|
|||
}
|
||||
|
||||
void SHVector::normalize() {
|
||||
Float correction = 1/(2*std::sqrt(M_PI)*operator()(0,0));
|
||||
Float correction = 1/(2 * (Float) std::sqrt(M_PI)*operator()(0,0));
|
||||
|
||||
for (size_t i=0; i<m_coeffs.size(); ++i)
|
||||
m_coeffs[i] *= correction;
|
||||
|
@ -170,7 +170,7 @@ void SHVector::convolve(const SHVector &kernel) {
|
|||
SAssert(kernel.getBands() == m_bands);
|
||||
|
||||
for (int l=0; l<m_bands; ++l) {
|
||||
Float alpha = std::sqrt(4*M_PI / (2*l + 1));
|
||||
Float alpha = std::sqrt(4 * (Float) M_PI / (2*l + 1));
|
||||
for (int m=-l; m<=l; ++m)
|
||||
operator()(l, m) *= alpha * kernel(l, 0);
|
||||
}
|
||||
|
@ -199,7 +199,7 @@ ublas::matrix<Float> SHVector::mu2() const {
|
|||
result(2, 2) += 2*sqrto3*operator()(2,0);
|
||||
}
|
||||
|
||||
return result * (2*std::sqrt(M_PI/15));
|
||||
return result * (2*std::sqrt((Float) M_PI / 15));
|
||||
}
|
||||
|
||||
std::string SHVector::toString() const {
|
||||
|
@ -225,7 +225,7 @@ Float SHVector::computeNormalization(int l, int m) {
|
|||
SAssert(m>=0);
|
||||
return std::sqrt(
|
||||
((2*l+1) * boost::math::factorial<Float>(l-m))
|
||||
/ (4*M_PI * boost::math::factorial<Float>(l+m)));
|
||||
/ (4 * (Float) M_PI * boost::math::factorial<Float>(l+m)));
|
||||
}
|
||||
|
||||
void SHVector::staticInitialization() {
|
||||
|
@ -392,7 +392,7 @@ SHSampler::SHSampler(int bands, int depth) : m_bands(bands), m_depth(depth) {
|
|||
for (int i=0; i<=depth; ++i) {
|
||||
int res = 1 << i;
|
||||
Float zStep = -2 / (Float) res;
|
||||
Float phiStep = 2*M_PI / (Float) res;
|
||||
Float phiStep = 2 * (Float) M_PI / (Float) res;
|
||||
m_phiMap[i] = new Float*[res];
|
||||
m_legendreMap[i] = new Float*[res];
|
||||
|
||||
|
@ -406,7 +406,7 @@ SHSampler::SHSampler(int bands, int depth) : m_bands(bands), m_depth(depth) {
|
|||
for (int m=0; m<=l; ++m) {
|
||||
Float normFactor = boost::math::tgamma_delta_ratio(
|
||||
(Float) (l - m + 1), (Float) (2 * m), boost::math::policies::policy<>());
|
||||
normFactor = std::sqrt(normFactor * (2 * l + 1) / (4 * M_PI));
|
||||
normFactor = std::sqrt(normFactor * (2 * l + 1) / (4 * (Float) M_PI));
|
||||
if (m != 0)
|
||||
normFactor *= SQRT_TWO;
|
||||
m_normalization[I(l, m)] = normFactor;
|
||||
|
@ -461,7 +461,7 @@ Float SHSampler::warp(const SHVector &f, Point2 &sample) const {
|
|||
}
|
||||
|
||||
Float zStep = -2 / (Float) (1 << m_depth);
|
||||
Float phiStep = 2 * M_PI / (Float) (1 << m_depth);
|
||||
Float phiStep = 2 * (Float) M_PI / (Float) (1 << m_depth);
|
||||
i >>= 1; j >>= 1;
|
||||
|
||||
Float z = 1 + zStep * i + zStep * sample.x;
|
||||
|
|
|
@ -583,13 +583,13 @@ Point2 squareToDiskConcentric(const Point2 &sample) {
|
|||
}
|
||||
|
||||
Float squareToConePdf(Float cosCutoff) {
|
||||
return 1 / (2 * (Float) M_PI * (1 - cosCutoff));
|
||||
return 1 / (2 * M_PI * (1 - cosCutoff));
|
||||
}
|
||||
|
||||
Vector squareToCone(Float cosCutoff, const Point2 &sample) {
|
||||
Float cosTheta = (1-sample.x) + sample.x * cosCutoff;
|
||||
Float sinTheta = std::sqrt(1 - cosTheta * cosTheta);
|
||||
Float phi = sample.y * (2 * (Float) M_PI);
|
||||
Float phi = sample.y * (2 * M_PI);
|
||||
return Vector(std::cos(phi) * sinTheta,
|
||||
std::sin(phi) * sinTheta, cosTheta);
|
||||
}
|
||||
|
|
|
@ -38,7 +38,7 @@ Device::Device(Session *name) {
|
|||
m_fullscreen = false;
|
||||
m_fsaa = 1;
|
||||
m_dimension = Vector2i(640, 480);
|
||||
m_position = Vector2i(0, 0);
|
||||
m_position = Point2i(0, 0);
|
||||
m_center = true;
|
||||
m_session = name;
|
||||
m_showFPS = true;
|
||||
|
|
|
@ -385,7 +385,7 @@ void GLRenderer::blitTexture(const GPUTexture *tex, bool flipVertically,
|
|||
if (flipVertically)
|
||||
std::swap(upperLeft.y, lowerRight.y);
|
||||
|
||||
const Float zDepth = -1.0f; // just before the far plane
|
||||
const float zDepth = -1.0f; // just before the far plane
|
||||
glTexCoord2f(0.0f, 0.0f);
|
||||
glVertex3f(upperLeft.x, upperLeft.y, zDepth);
|
||||
glTexCoord2f(1.0f, 0.0f);
|
||||
|
|
|
@ -409,7 +409,7 @@ void VPLShaderManager::configure(const VPL &vpl, const BSDF *bsdf, const Luminai
|
|||
program->setSource(GPUProgram::EFragmentProgram, oss.str());
|
||||
try {
|
||||
program->init();
|
||||
} catch (const std::exception &ex) {
|
||||
} catch (const std::exception &) {
|
||||
Log(EWarn, "Unable to compile the following VPL program:\n%s", oss.str().c_str());
|
||||
throw;
|
||||
}
|
||||
|
|
|
@ -66,7 +66,7 @@ LONG WINAPI WGLDevice::WndProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lPara
|
|||
device->initPixelFormat(hWnd);
|
||||
break;
|
||||
case WM_SIZE:
|
||||
device->m_dimension = Point2i(LOWORD(lParam), HIWORD(lParam));
|
||||
device->m_dimension = Vector2i(LOWORD(lParam), HIWORD(lParam));
|
||||
break;
|
||||
case WM_PAINT:
|
||||
BeginPaint(hWnd, &ps);
|
||||
|
@ -424,7 +424,7 @@ bool WGLDevice::translateMouse(UINT uMsg, WPARAM wParam, DeviceEvent &event) {
|
|||
if (m_mouse != Point2i(-1, -1)) {
|
||||
event.setMouseRelative(event.getMousePosition() - m_mouse);
|
||||
} else {
|
||||
event.setMouseRelative(Point2i(0, 0));
|
||||
event.setMouseRelative(Vector2i(0, 0));
|
||||
}
|
||||
|
||||
m_mouse = event.getMousePosition();
|
||||
|
|
|
@ -18,7 +18,6 @@
|
|||
|
||||
#include <mitsuba/render/kdtree.h>
|
||||
#include <mitsuba/render/trimesh.h>
|
||||
#include <mitsuba/render/triaccel.h>
|
||||
|
||||
MTS_NAMESPACE_BEGIN
|
||||
|
||||
|
|
|
@ -19,7 +19,6 @@
|
|||
#include <mitsuba/core/triangle.h>
|
||||
#include <mitsuba/core/statistics.h>
|
||||
#include <mitsuba/render/kdtree.h>
|
||||
#include <mitsuba/render/triaccel.h>
|
||||
|
||||
MTS_NAMESPACE_BEGIN
|
||||
|
||||
|
|
|
@ -17,7 +17,6 @@
|
|||
*/
|
||||
|
||||
#include <mitsuba/render/kdtree.h>
|
||||
#include <mitsuba/render/triaccel.h>
|
||||
#include <mitsuba/core/timer.h>
|
||||
|
||||
MTS_NAMESPACE_BEGIN
|
||||
|
|
|
@ -19,7 +19,6 @@
|
|||
#include <mitsuba/core/triangle.h>
|
||||
#include <mitsuba/core/statistics.h>
|
||||
#include <mitsuba/render/kdtree.h>
|
||||
#include <mitsuba/render/triaccel.h>
|
||||
|
||||
MTS_NAMESPACE_BEGIN
|
||||
|
||||
|
|
|
@ -28,7 +28,7 @@
|
|||
|
||||
using namespace mitsuba;
|
||||
|
||||
class SceneContext;
|
||||
struct SceneContext;
|
||||
|
||||
/**
|
||||
* Asynchronous preview rendering thread
|
||||
|
|
|
@ -22,7 +22,7 @@
|
|||
#include <QtGui>
|
||||
#include <mitsuba/mitsuba.h>
|
||||
|
||||
class SceneContext;
|
||||
struct SceneContext;
|
||||
|
||||
using namespace mitsuba;
|
||||
|
||||
|
|
|
@ -187,7 +187,7 @@ public:
|
|||
m_res.x, m_res.y, m_res.z, m_channels, nEntries*sizeof(float)/1024,
|
||||
m_originalAABB.toString().c_str());
|
||||
stream->close();
|
||||
m_file = CreateFile(resolved.c_str(), GENERIC_READ,
|
||||
m_file = CreateFile(resolved.file_string().c_str(), GENERIC_READ,
|
||||
FILE_SHARE_READ, NULL, OPEN_EXISTING,
|
||||
FILE_ATTRIBUTE_NORMAL, NULL);
|
||||
if (m_file == INVALID_HANDLE_VALUE)
|
||||
|
@ -213,9 +213,9 @@ public:
|
|||
}
|
||||
|
||||
/**
|
||||
* This is needed since Mitsuba might be
|
||||
* compiled with either single/double precision
|
||||
*/
|
||||
* This is needed since Mitsuba might be
|
||||
* compiled with either single/double precision
|
||||
*/
|
||||
struct float3 {
|
||||
float value[3];
|
||||
|
||||
|
|
Loading…
Reference in New Issue