updated version to 2.59, fixed 16 byte alignment for BVH serialization
This commit is contained in:
@@ -956,7 +956,7 @@ bool btOptimizedBvh::serialize(void *o_alignedDataBuffer, unsigned i_dataBufferS
|
||||
unsigned char *nodeData = (unsigned char *)targetBvh;
|
||||
nodeData += sizeof(btOptimizedBvh);
|
||||
|
||||
unsigned sizeToAdd = (unsigned)nodeData & BVH_ALIGNMENT_MASK;
|
||||
unsigned sizeToAdd = BVH_ALIGNMENT-((unsigned)nodeData & BVH_ALIGNMENT_MASK);
|
||||
nodeData += sizeToAdd;
|
||||
|
||||
int nodeCount = m_curNodeIndex;
|
||||
@@ -1031,7 +1031,7 @@ bool btOptimizedBvh::serialize(void *o_alignedDataBuffer, unsigned i_dataBufferS
|
||||
nodeData += sizeof(btOptimizedBvhNode) * nodeCount;
|
||||
}
|
||||
|
||||
sizeToAdd = (unsigned)nodeData & BVH_ALIGNMENT_MASK;
|
||||
sizeToAdd = BVH_ALIGNMENT-((unsigned)nodeData & BVH_ALIGNMENT_MASK);
|
||||
nodeData += sizeToAdd;
|
||||
|
||||
// Now serialize the subtree headers
|
||||
@@ -1106,7 +1106,7 @@ btOptimizedBvh *btOptimizedBvh::deSerializeInPlace(void *i_alignedDataBuffer, un
|
||||
unsigned char *nodeData = (unsigned char *)bvh;
|
||||
nodeData += sizeof(btOptimizedBvh);
|
||||
|
||||
unsigned sizeToAdd = (unsigned)nodeData & BVH_ALIGNMENT_MASK;
|
||||
unsigned sizeToAdd = BVH_ALIGNMENT-((unsigned)nodeData & BVH_ALIGNMENT_MASK);
|
||||
nodeData += sizeToAdd;
|
||||
|
||||
int nodeCount = bvh->m_curNodeIndex;
|
||||
@@ -1155,7 +1155,7 @@ btOptimizedBvh *btOptimizedBvh::deSerializeInPlace(void *i_alignedDataBuffer, un
|
||||
nodeData += sizeof(btOptimizedBvhNode) * nodeCount;
|
||||
}
|
||||
|
||||
sizeToAdd = (unsigned)nodeData & BVH_ALIGNMENT_MASK;
|
||||
sizeToAdd = BVH_ALIGNMENT-((unsigned)nodeData & BVH_ALIGNMENT_MASK);
|
||||
nodeData += sizeToAdd;
|
||||
|
||||
// Now serialize the subtree headers
|
||||
|
||||
Reference in New Issue
Block a user