Exemple #1
0
 public void PerformConvexCast(ITriangleCallback callback, ref IndexedVector3 boxSource, ref IndexedVector3 boxTarget, ref IndexedVector3 boxMin, ref IndexedVector3 boxMax)
 {
     if (m_bvh != null)
     {
         using (MyNodeOverlapCallback myNodeCallback = BulletGlobals.MyNodeOverlapCallbackPool.Get())
         {
             myNodeCallback.Initialize(callback, m_meshInterface);
             m_bvh.ReportBoxCastOverlappingNodex(myNodeCallback, ref boxSource, ref boxTarget, ref boxMin, ref boxMax);
         }
     }
 }
Exemple #2
0
 public void PerformRaycast(ITriangleCallback callback, ref IndexedVector3 raySource, ref IndexedVector3 rayTarget)
 {
     if (m_bvh != null)
     {
         using (MyNodeOverlapCallback myNodeCallback = BulletGlobals.MyNodeOverlapCallbackPool.Get())
         {
             myNodeCallback.Initialize(callback, m_meshInterface);
             m_bvh.ReportRayOverlappingNodex(myNodeCallback, ref raySource, ref rayTarget);
         }
     }
 }
Exemple #3
0
        //public override void processAllTriangles(ITriangleCallback callback, ref IndexedVector3 aabbMin, ref IndexedVector3 aabbMax)
        public override void ProcessAllTriangles(ITriangleCallback callback, ref IndexedVector3 aabbMin, ref IndexedVector3 aabbMax)
        {
#if DISABLE_BVH
            base.ProcessAllTriangles(callback, ref aabbMin, ref aabbMax);
#else
            if (m_bvh != null)
            {
                using (MyNodeOverlapCallback myNodeCallback = BulletGlobals.MyNodeOverlapCallbackPool.Get())
                {
                    myNodeCallback.Initialize(callback, m_meshInterface);
                    m_bvh.ReportAabbOverlappingNodex(myNodeCallback, ref aabbMin, ref aabbMax);
                }
            }
#endif
        }