[Bf-blender-cvs] [d9d1faef01a] soc-2019-embree-gpu: deps: fix building embree on windows
Ray Molenkamp
noreply at git.blender.org
Fri Oct 11 05:07:19 CEST 2019
Commit: d9d1faef01a77af4982c25cdd19bcfed084940c6
Author: Ray Molenkamp
Date: Thu Oct 10 21:06:21 2019 -0600
Branches: soc-2019-embree-gpu
https://developer.blender.org/rBd9d1faef01a77af4982c25cdd19bcfed084940c6
deps: fix building embree on windows
===================================================================
M build_files/build_environment/patches/embree.diff
===================================================================
diff --git a/build_files/build_environment/patches/embree.diff b/build_files/build_environment/patches/embree.diff
index d4d9407e100..7055ec97dc5 100644
--- a/build_files/build_environment/patches/embree.diff
+++ b/build_files/build_environment/patches/embree.diff
@@ -254,7 +254,7 @@ index 56858294c..6a154881b 100644
+ size_t nb;
+ if(leafType == &Triangle4v::type) {
+ Triangle4v *prims = reinterpret_cast<Triangle4v *>(node.leaf(nb));
-+ BVHPrimitive primsArray[4*nb];
++ BVHPrimitive *primsArray = (BVHPrimitive *)alloca(4 * nb * sizeof(BVHPrimitive));
+ unsigned int realNum = 0;
+ for(int i = 0; i < nb; ++i) {
+ for(size_t j = 0; j < prims[i].size(); j++) {
@@ -267,7 +267,7 @@ index 56858294c..6a154881b 100644
+ return args.createLeaf(realNum, primsArray, userData);
+ } else if(leafType == &Triangle4i::type) {
+ Triangle4i *prims = reinterpret_cast<Triangle4i *>(node.leaf(nb));
-+ BVHPrimitive primsArray[4*nb];
++ BVHPrimitive *primsArray = (BVHPrimitive *)alloca(4 * nb * sizeof(BVHPrimitive));
+ unsigned int realNum = 0;
+ for(int i = 0; i < nb; ++i) {
+ for(size_t j = 0; j < prims[i].size(); j++) {
@@ -280,7 +280,7 @@ index 56858294c..6a154881b 100644
+ return args.createLeaf(realNum, primsArray, userData);
+ } else if(leafType == &InstancePrimitive::type) {
+ InstancePrimitive *prims = reinterpret_cast<InstancePrimitive *>(node.leaf(nb));
-+ uint geomIDs[nb];
++ unsigned int *geomIDs = (unsigned int *)alloca(sizeof(unsigned int)*nb);
+ for(int i = 0; i < nb; ++i)
+ geomIDs[i] = prims[i].instance->geomID;
+
@@ -418,8 +418,8 @@ index 56858294c..6a154881b 100644
- return alloc->malloc0(bytes,align);
- RTC_CATCH_END(alloc->alloc->getDevice());
- return nullptr;
-+ template <uint N>
-+ inline RTCAffineSpace affineSpaceToRTC(const AffineSpace3vf<N> affSpaces, uint i) {
++ template <unsigned int N>
++ inline RTCAffineSpace affineSpaceToRTC(const AffineSpace3vf<N> affSpaces, unsigned int i) {
+ RTCAffineSpace affSpace;
+
+ affSpace.affine[0] = affSpaces.p.x[i];
@@ -486,7 +486,7 @@ index 56858294c..6a154881b 100644
+
+ unsigned int nb = 0;
+ void *children[4];
-+ for(uint i = 0; i < 4; i++) {
++ for(unsigned int i = 0; i < 4; i++) {
+ void *child = recurse<N>(bnode->child(i), leafType, args, userData);
+ if(child == nullptr) continue;
+
More information about the Bf-blender-cvs
mailing list