hkpProcessCollisionData.inl
上传用户:yisoukefu
上传日期:2020-08-09
资源大小:39506k
文件大小:2k
源码类别:

其他游戏

开发平台:

Visual C++

  1. /* 
  2.  * 
  3.  * Confidential Information of Telekinesys Research Limited (t/a Havok). Not for disclosure or distribution without Havok's
  4.  * prior written consent. This software contains code, techniques and know-how which is confidential and proprietary to Havok.
  5.  * Level 2 and Level 3 source code contains trade secrets of Havok. Havok Software (C) Copyright 1999-2009 Telekinesys Research Limited t/a Havok. All Rights Reserved. Use of this software is subject to the terms of an end user license agreement.
  6.  * 
  7.  */
  8. inline int hkpProcessCollisionData::getNumContactPoints() const
  9. {
  10. return int(m_firstFreeContactPoint - &m_contactPoints[0]);
  11. }
  12. inline hkpProcessCdPoint* hkpProcessCollisionData::getFirstContactPoint()
  13. {
  14. return &m_contactPoints[0];
  15. }
  16. inline hkpProcessCdPoint* hkpProcessCollisionData::getEnd()
  17. {
  18. return m_firstFreeContactPoint;
  19. }
  20. inline hkpProcessCdPoint& hkpProcessCollisionData::getContactPoint( int i )
  21. {
  22. return m_contactPoints[i];
  23. }
  24. inline hkBool hkpProcessCollisionData::isEmpty() const
  25. {
  26. return m_firstFreeContactPoint == &m_contactPoints[0];
  27. }
  28. inline hkBool hkpProcessCollisionData::hasToi() const
  29. {
  30. return m_toi.m_time != HK_REAL_MAX;
  31. }
  32. inline hkContactPoint& hkpProcessCollisionData::getToiContactPoint()
  33. {
  34. return m_toi.m_contactPoint;
  35. }
  36. inline hkTime hkpProcessCollisionData::getToi() const
  37. {
  38. return m_toi.m_time;
  39. }
  40. inline hkpContactPointProperties& hkpProcessCollisionData::getToiProperties()
  41. {
  42. return m_toi.m_properties;
  43. }
  44. hkpProcessCollisionData::ToiInfo::ToiInfo() : m_time( HK_REAL_MAX ) 
  45. {
  46. }
  47. hkpProcessCollisionData::hkpProcessCollisionData( hkCollisionConstraintOwner* owner )
  48. {
  49. m_constraintOwner = owner;
  50. }
  51. void hkpProcessCollisionData::ToiInfo::flip()
  52. {
  53. hkVector4& norm = m_contactPoint.getSeparatingNormal();
  54. norm.setNeg3( norm );
  55. m_gskCache.flip();
  56. }
  57. /*
  58. * Havok SDK - NO SOURCE PC DOWNLOAD, BUILD(#20090216)
  59. * Confidential Information of Havok.  (C) Copyright 1999-2009
  60. * Telekinesys Research Limited t/a Havok. All Rights Reserved. The Havok
  61. * Logo, and the Havok buzzsaw logo are trademarks of Havok.  Title, ownership
  62. * rights, and intellectual property rights in the Havok software remain in
  63. * Havok and/or its suppliers.
  64. * Use of this software for evaluation purposes is subject to and indicates
  65. * acceptance of the End User licence Agreement for this product. A copy of
  66. * the license is included with this software and is also available at www.havok.com/tryhavok.
  67. */