aboutsummaryrefslogtreecommitdiff
path: root/NvCloth/src/SwInterCollision.h
diff options
context:
space:
mode:
authorMarijn Tamis <[email protected]>2017-04-28 14:19:07 +0200
committerMarijn Tamis <[email protected]>2017-04-28 14:19:07 +0200
commitb350eb5f4d44e8448115796144375d79438d74ae (patch)
tree8e102e8c28f45a1b87bd335ceee4f33c3d4ee7c2 /NvCloth/src/SwInterCollision.h
parentAdd visual samples. (diff)
downloadnvcloth-b350eb5f4d44e8448115796144375d79438d74ae.tar.xz
nvcloth-b350eb5f4d44e8448115796144375d79438d74ae.zip
NvCloth 1.1.0 Release. (22041545)
Diffstat (limited to 'NvCloth/src/SwInterCollision.h')
-rw-r--r--NvCloth/src/SwInterCollision.h23
1 files changed, 16 insertions, 7 deletions
diff --git a/NvCloth/src/SwInterCollision.h b/NvCloth/src/SwInterCollision.h
index 656fbbc..f57fe6c 100644
--- a/NvCloth/src/SwInterCollision.h
+++ b/NvCloth/src/SwInterCollision.h
@@ -78,7 +78,7 @@ struct SwInterCollisionData
void* mUserData;
};
-template <typename Simd4f>
+template <typename T4f>
class SwInterCollision
{
@@ -100,17 +100,17 @@ class SwInterCollision
void collideParticles(const uint32_t* keys, uint32_t firstColumnSize, const uint32_t* sortedIndices,
uint32_t numParticles, uint32_t collisionDistance);
- Simd4f& getParticle(uint32_t index);
+ T4f& getParticle(uint32_t index);
// better wrap these in a struct
void collideParticle(uint32_t index);
- Simd4f mParticle;
- Simd4f mImpulse;
+ T4f mParticle;
+ T4f mImpulse;
- Simd4f mCollisionDistance;
- Simd4f mCollisionSquareDistance;
- Simd4f mStiffness;
+ T4f mCollisionDistance;
+ T4f mCollisionSquareDistance;
+ T4f mStiffness;
uint16_t mClothIndex;
uint32_t mClothMask;
@@ -137,6 +137,15 @@ class SwInterCollision
mutable uint32_t mNumCollisions;
};
+
+//explicit template instantiation declaration
+#if NV_SIMD_SIMD
+extern template class SwInterCollision<Simd4f>;
+#endif
+#if NV_SIMD_SCALAR
+extern template class SwInterCollision<Scalar4f>;
+#endif
+
} // namespace cloth
} // namespace nv