Physics:用于处理物理仿真和碰撞检测。它提供了一组功能强大的工具和算法,用于模拟真实世界中的物理行为,使游戏或应用程序更加真实和可信。
主要用途包括:
碰撞检测:Unity Physics 提供了高效的碰撞检测算法,可以检测物体之间的交叉和碰撞,以及处理碰撞事件。这使游戏开发者能够实现准确的物体交互和碰撞效果。
刚体模拟:Unity Physics 支持刚体物理模拟,可以模拟物体的受力和运动行为。通过添加刚体组件,开发者可以使物体受重力影响而下落、施加力来推动物体或模拟物体之间的碰撞和反弹等。
关节和约束:Unity Physics 提供了对关节和约束的支持。开发者可以使用关节和约束来模拟物体之间的连接、约束以及物体的复杂运动。这使得开发者可以创建更逼真的动画和物理效果。
物理材质:Unity Physics 允许开发者为物体定义各种物理材质属性,如摩擦系数、弹性系数等。这样可以更准确地模拟不同材质之间的物理交互,如摩擦、反弹等。
一、Box Collider:用于在游戏中实现碰撞检测的组件,它可以与其他碰撞器(如球体碰撞器、胶囊体碰撞器等)一起使用。
1.Edit Collider(编辑碰撞体):当这个属性被勾选时,可以在场景视图中直接调整碰撞器的形状和尺寸。勾选该属性后,场景视图中将显示一个可拖拽的控制柄(小点形状),方便进行实时调整。
2.Is Trigger(是否为触发器):当该属性被勾选时,碰撞器将被视为触发器,不参与物体之间的物理碰撞响应。相反,它将调用 OnTriggeEnter、OnTriggerStay 和 OnTriggerExit 等触发器事件回调方法。如果该属性未勾选,则碰撞器将参与物理碰撞响应。
3.Material(物理材质):使用该属性可以指定用于物理模拟的材质。材质可以定义摩擦力、弹性系数等物理属性,影响碰撞的行为。
4.Center(中心点):这是碰撞器的中心点在局部坐标系中的位置。默认情况下,Box Collider 组件的中心点与其所附加的游戏对象的中心点对齐。
5.Size(尺寸):尺寸属性定义了碰撞器的宽度、高度和深度。它决定了 Box Collider 的包围盒的大小。你可以根据需求调整碰撞器的尺寸。
二、Capsule Collider:用于在游戏中实现碰撞检测的组件,它可以与其他碰撞器(如球体碰撞器、盒子碰撞器等)一起使用。
1.Radius(半径):半径属性定义了胶囊体碰撞器的球体部分的半径大小。它决定了胶囊体碰撞器的包围盒的大小。
2.Height(高度):高度属性定义了胶囊体碰撞器的胶囊体部分的高度大小。高度是指靠近胶囊体顶部和底部的中间那部分,而不是整个胶囊体的高度。
3.Direction(方向):方向属性定义了胶囊体碰撞器的主轴方向,可选的方向有 X、Y 和 Z。它决定了胶囊体碰撞器在三维空间中的朝向。
4.其它属性参考Box Collider组件
三、Character Controller:是一种用于控制角色移动和碰撞检测的组件,它通常用于处理玩家角色或非物理驱动的角色移动。
1.Slope Limit(坡度限制):指定角色能够行走的最大坡度角度。超过该角度的斜坡将被视为无法行走的地形。
2.Step Offset(踏步偏移):定义了角色在爬越台阶或不平地形时所需的垂直位移量。较大的值将允许角色更容易爬过台阶和阶梯。
3.Skin Width:定义了角色控制器与其他碰撞器之间的最小间隙。这可以用来避免角色控制器受到过于紧密的物体表面的影响。
4.Min Move Distance:用于控制角色控制器在执行移动时的最小移动距离。当角色控制器的移动距离小于 Min Move Distance 时,移动操作会被忽略,这可以防止角色在移动时触发不必要的碰撞。较小的值将使角色更敏感于细微的移动,而较大的值将减少角色对细微移动的响应。通过不断调整该属性,你可以找到最适合你游戏角色的值
5.其他属性参考Capsule Collider组件
四、Character Joint:用于模拟角色骨骼的物理连接和运动的组件。它可以被添加到角色的关节上,用于模拟关节的运动和约束。(添加Character Joint组件时,会自动添加Rigidbody组件)
1.Edit Angular Limits(编辑角度限制):这个属性允许你设置关节的旋转角度限制。你可以通过设置最小角度和最大角度来限制角度的范围。
2.Connected Body(连接刚体):这个属性允许你将一个刚体对象连接到角色关节上。连接的刚体可以是同一个角色模型中的其他部分,也可以是场景中的其他对象。通过连接刚体,你可以实现物理交互和约束。
3.Connected Articulation Body(连接关节体):这个属性用于将关节连接到Articulation Body(关节体)。Articulation Body是Unity中的一种高级刚体类型,用于模拟复杂的物理约束和动力学效果。
4.Anchor(锚点):这个属性定义了关节连接的位置。默认情况下,锚点位于角色模型的中心位置。你可以通过调整该属性的值来改变连接位置。
5.Axis(轴):该属性定义了关节旋转的轴向。默认情况下,轴向是角色模型的局部坐标系的X轴。你可以通过调整该属性来指定其他轴向。
6.Auto Configure Connected Anchor(自动配置连接锚点):当勾选这个属性时,Unity会自动计算连接刚体的锚点位置,使其与当前关节的锚点位置对应。取消勾选时,你可以手动指定连接刚体的锚点位置。
7.Connected Anchor(连接锚点):这个属性定义了连接刚体的锚点位置。如果勾选了"Auto Configure Connected Anchor",则该值会被自动计算。
8.Swing Axis:指定角色关节的摆动轴。摆动轴用于模拟关节的摆动(弯曲)运动。
9.Twist Limit Spring(扭转限制弹簧):该属性控制绕 X 轴的扭转限制的弹簧强度和衰减。弹簧强度影响物体在扭转之间的回弹力,衰减控制回弹力的减弱速度。
10.Low Twist Limit(低扭转限制):这是绕 X 轴的最小扭转角度限制。当达到或超出这个角度时,限制器会施加力或约束来保持物体在低扭转限制范围内。
11.High Twist Limit(高扭转限制):这是绕 X 轴的最大扭转角度限制。当达到或超出这个角度时,限制器会施加力或约束来保持物体在高扭转限制范围内。
12.High Twist Limit(高扭转限制):这是绕 X 轴的最大扭转角度限制。当达到或超出这个角度时,限制器会施加力或约束来保持物体在高扭转限制范围内。
13.Swing Limit Spring(摆动限制弹簧&