public virtual void RayTest(ref Vector3 rayFrom,ref Vector3 rayTo, BroadphaseRayCallback rayCallback, ref Vector3 aabbMin, ref Vector3 aabbMax) { if (m_raycastAccelerator != null) { m_raycastAccelerator.RayTest(ref rayFrom,ref rayTo,rayCallback,ref aabbMin,ref aabbMax); } else { //choose axis? ushort axis = 0; //for each proxy for (int i=1;i<m_numHandles*2+1;i++) { if (m_pEdges[axis,i].IsMax()) { rayCallback.Process(GetHandle(m_pEdges[axis,i].m_handle)); } } } }
//virtual void rayTest(const Vector3& rayFrom,const Vector3& rayTo, btBroadphaseRayCallback& rayCallback, const Vector3& aabbMin=Vector3(0,0,0), const Vector3& aabbMax = Vector3(0,0,0)); public virtual void RayTest(ref Vector3 rayFrom, ref Vector3 rayTo, BroadphaseRayCallback rayCallback) { Vector3 min = MathUtil.MIN_VECTOR; Vector3 max = MathUtil.MAX_VECTOR; RayTest(ref rayFrom, ref rayTo, rayCallback, ref min, ref max); }
public virtual void RayTest(ref Vector3 rayFrom, ref Vector3 rayTo, BroadphaseRayCallback rayCallback, ref Vector3 aabbMin, ref Vector3 aabbMax) { for (int i = 0; i < m_multiSapProxies.Count; i++) { rayCallback.Process(m_multiSapProxies[i]); } }
public virtual void RayTest(ref Vector3 rayFrom,ref Vector3 rayTo, BroadphaseRayCallback rayCallback, ref Vector3 aabbMin,ref Vector3 aabbMax) { for (int i = 0; i <= m_LastHandleIndex; i++) { SimpleBroadphaseProxy proxy = m_pHandles[i]; if (proxy.m_clientObject == null) { continue; } rayCallback.Process(proxy); } }
public virtual void RayTest(ref Vector3 rayFrom, ref Vector3 rayTo, BroadphaseRayCallback rayCallback, ref Vector3 aabbMin, ref Vector3 aabbMax) { BroadphaseRayTester callback = new BroadphaseRayTester(rayCallback); m_sets[0].RayTestInternal(m_sets[0].m_root, ref rayFrom, ref rayTo, ref rayCallback.m_rayDirectionInverse, rayCallback.m_signs, rayCallback.m_lambda_max, ref aabbMin, ref aabbMax, callback); m_sets[1].RayTestInternal(m_sets[1].m_root, ref rayFrom, ref rayTo, ref rayCallback.m_rayDirectionInverse, rayCallback.m_signs, rayCallback.m_lambda_max, ref aabbMin, ref aabbMax, callback); }