js网站计数器代码,网站建站的技术解决方案,iis做的网站模板,技成培训网碰撞器由来
1.系统默认会给每个对象(GameObject)添加一个碰撞组件(ColliderComponent)#xff0c;一些背景对象则可以取消该组件。
2.在unity3d中#xff0c;能检测碰撞发生的方式有两种#xff0c;一种是利用碰撞器#xff0c;另一种则是利用触发器。这两种方式的应用非…碰撞器由来
1.系统默认会给每个对象(GameObject)添加一个碰撞组件(ColliderComponent)一些背景对象则可以取消该组件。
2.在unity3d中能检测碰撞发生的方式有两种一种是利用碰撞器另一种则是利用触发器。这两种方式的应用非常广泛。为了完整的了解这两种方式我们必须理解以下概念
一碰撞器是一群组件它包含了很多种类比如Box ColliderCapsule Collider等这些碰撞器应用的场合不同但都必须加到GameObjecet身上。主要有以下接口函数
碰撞信息检测
MonoBehaviour.OnCollisionEnter( Collision collisionInfo ) 碰撞发生MonoBehaviour.OnCollisionExit( Collision collisionInfo ) 碰撞结束MonoBehaviour.OnCollisionStay( Collision collisionInfo ) 碰撞期间 private void OnCollisionEnter(Collision collision){Debug.Log(碰撞发生);Debug.Log(碰撞到的物体 collision.gameObject.name);}private void OnCollisionExit(Collision collision){Debug.Log(碰撞结束);}private void OnCollisionStay(Collision collision){Debug.Log(碰撞中);}二触发器只需要在检视面板中的 碰撞器 组件中勾选 IsTrigger 属性选择框勾选之后物体之间就不会碰撞。主要有以下接口函数 触发信息检测 5. MonoBehaviour.OnTriggerEnter( Collider other ) 触发发生 6. MonoBehaviour.OnTriggerExit( Collider other ) 触发结束 7. MonoBehaviour.OnTriggerStay( Collider other ) 接触期间 private void OnTriggerEnter(Collider other){Debug.Log(触发发生);Debug.Log(触碰到的物体other.gameObject.name);}private void OnTriggerExit(Collider other){Debug.Log(触发结束);}private void OnTriggerStay(Collider other){Debug.Log(接触中);}总结有碰撞无触发相反有触发无碰撞
组件参数说明
1、Rigidbody 组件 Mass
对象的质量默认为千克
Drag
根据力移动对象时影响对象的空气阻力大小。0 表示没有空气阻力无穷大使对象立即停止移动
Angular Drag
根据扭矩旋转对象时影响对象的空气阻力大小。0 表示没有空气阻力。请注意如果直接将对象的 Angular Drag 属性设置为无穷大无法使对象停止旋转。
Use Gravity
如果启用此属性则对象将受重力影响。
Is Kinematic
如果启用此选项则对象将不会被物理引擎驱动只能通过 (Transform) 对其进行操作。对于移动平台或者如果要动画化附加了 HingeJoint 的刚体此属性将非常有用。 Interpolate 仅当在刚体运动中看到急动时才尝试使用提供的选项之一。有以下三个参数 None 不应用插值。 Interpolate 根据前一帧的变换来平滑变换。 Extrapolate 根据下一帧的估计变换来平滑变换。 Collision Detection 用于防止快速移动的对象穿过其他对象而不检测碰撞。有以下四个参数 Discrete 对场景中的所有其他碰撞体使用离散碰撞检测。其他碰撞体在测试碰撞时会使用离散碰撞检测。用正常碰撞这是默认值。 Continuous 对动态碰撞体具有刚体使用离散碰撞检测并对静态碰撞体没有刚体使用基于扫掠的连续碰撞检测。设置为_连续动态 (Continuous Dynamic) 的刚体将在测试与该刚体的碰撞时使用连续碰撞检测。其他刚体将使用离散碰撞检测。用于连续动态 (Continuous Dynamic) 检测需要碰撞的对象。此属性对物理性能有很大影响如果没有快速对象的碰撞问题请将其保留为 Discrete 设置 Continuous Dynamic 对设置为连续 (Continuous)和连续动态 (Continuous Dynamic)碰撞的游戏对象使用基于扫掠的连续碰撞检测。还将对静态碰撞体没有刚体使用连续碰撞检测。对于所有其他碰撞体使用离散碰撞检测。用于快速移动的对象。 Continuous Speculative 对刚体和碰撞体使用推测性连续碰撞检测。这也是可以设置运动物体的唯一 CCD 模式。该方法通常比基于扫掠的连续碰撞检测的成本更低。 Constraints 对刚体运动的限制。 Freeze Position 有选择地停止刚体沿世界 X、Y 和 Z 轴的移动。 Freeze Rotation 有选择地停止刚体围绕局部 X、Y 和 Z 轴旋转。
更多信息看点击查看