了解Unity编辑器之组件篇Physics(四)

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(摆动限制弹簧):该属性控制绕 Y 和 Z 轴的摆动限制的弹簧强度和衰减。弹簧强度影响物体在摆动之间的回弹力,衰减控制回弹力的减弱速度。

14.Swing 1 Limit 和 Swing 2 Limit:定义两个摆动角度限制,用于限制关节的摆动范围。Swing 1 Limit 定义了关节在 swing axis 上的摆动范围,而 Swing 2 Limit 定义了关节在 swing 1 axis 上的摆动范围。

15.Enable Projection 和 Projection Distance:启用关节的投影功能,并设置投影的距离。当启用投影时,如果物理模拟引擎预测到关节可能会脱离预期位置,它将进行投影修正,将关节移回到预定的运动轨迹。

16.Projection Angle(投射角度):该属性定义了当约束被打破时所采取的投射角度。当关节在动力学模拟中被迫超出约束角度时,引擎会尝试将其投射回约束范围内。该属性确定投射所采用的最大角度。

17.Break Torque(断裂扭矩):该属性定义了当约束受到过大力量作用时断裂的扭矩阈值。如果受到的力矩超过该阈值,约束将被打破并分离。这是一种防止关节受到过大力矩影响的机制。

18.Enable Collision(启用碰撞):该属性确定是否启用关节碰撞。当该属性被启用时,关节将与其他物体进行碰撞检测,这可以用于模拟更真实的物理交互。如果禁用该属性,关节将不会发生碰撞。

19.Enable Preprocessing:启用预处理功能,用于优化关节运动的稳定性和准确性。启用预处理可以提高关节的稳定性并减少震荡。

20.Mass Scale(质量缩放):该属性定义了连接到该关节的物体的质量与其实际质量之间的比例关系。通过调整 Mass Scale 的值,可以增加或减少连接的物体对于此关节的旋转和移动的影响。如果将 Mass Scale 设置为 0,则表示该关节无视连接物体的质量。

21.Connected Mass Scale(连接质量缩放):该属性定义了此关节连接的物体的质量与其实际质量之间的比例关系。通过调整 Connected Mass Scale 的值,可以增加或减少连接的物体对于此关节的旋转和移动的影响。如果将 Connected Mass Scale 设置为 0,则表示该关节无视被连接物体的质量。

五、Cloth:用于模拟布料和软体效果的组件,可以用于创建逼真的布料和物理效果。(添加Cloth组件时,会自动添加Skinned Mesh Renderer组件)

 

1.Stretching Stiffness(拉伸刚度):调整布料在拉伸时的刚度。较高的值将使布料更加不容易被拉伸。

2.Bending Stiffness(弯曲刚度):调整布料在弯曲时的刚度。较高的值将使布料更加僵硬。

3.Use Tethers(使用绳索):控制是否使用绳索约束来保持布料的形状。
当启用此属性时,布料的顶点将通过绳索连接在一起,以防止过度伸展或断开。
通过调整绳索的长度和硬度,可以模拟不同材质和物体上的绳索效果。

4.Use Gravity(使用重力):启用布料受到场景重力的影响。控制布料在垂直方向上的下降速度。

5.Damping(阻尼):控制布料的阻尼参数,影响其对外部力和速度的响应。

6.External Acceleration(外部加速度):允许为布料施加一个外部的加速度。
您可以使用此属性模拟风、重力、爆炸等外部力量对布料的影响。
通过调整加速度的方向和大小,可以实现各种各样的物理效果。

7.Random Acceleration(随机加速度):允许为布料施加一个随机的加速度。
使用随机加速度可以增加布料的变化和自然感,模拟风吹草动等效果。
您可以调整随机加速度的范围和强度以控制影响的程度。

8.World Velocity Scale(世界速度缩放):用于调整世界空间中布料顶点的速度缩放比例。
通过改变此属性的值,可以加速或减慢布料的动态效果。

9.World Acceleration Scale(世界加速度缩放):用于调整世界空间中布料顶点的加速度缩放比例。通过改变此属性的值,可以加速或减慢布料在施加的外部加速度下的动态效果。

10.Friction(摩擦):布料与其他对象之间的摩擦力。较高的值会增加布料的摩擦效果。

11.Collision Mass Scale(碰撞质量缩放):用于调整碰撞对布料顶点质量的影响。通过改变此属性的值,可以控制碰撞物体对布料的作用力大小。

12.Use Continuous Collision(使用连续碰撞):决定了是否开启布料的连续碰撞检测。连续碰撞检测可以提高布料与快速移动的物体之间的碰撞精度,避免穿透等视觉错误。

13.Use Virtual Particles(使用虚拟粒子):用于控制是否启用布料的虚拟粒子。虚拟粒子可以增加布料的稳定性和减少抖动效果。

14.Solver Frequency(求解器频率):决定了布料物理求解器的更新频率。
较高的频率可以提供更精确的物理模拟,但也可能导致更高的性能开销。
根据项目需求和性能考虑,可以调整此属性以获得最佳的物理效果和性能平衡。

15.Sleep Threshold(休眠阈值):定义了触发布料顶点进入休眠状态的速度阈值。
当布料顶点的速度小于此阈值时,它们可能会进入休眠状态,以节省计算资源。
较高的休眠阈值可以提高性能,但可能会降低动画的灵敏度和响应性。

16.Capsule Colliders(胶囊碰撞器):用于添加胶囊碰撞器到布料中,以模拟胶囊形状物体与布料的碰撞。添加胶囊碰撞器可以使布料在与胶囊形状物体交互时更准确地进行碰撞和响应。可以调整胶囊碰撞器的大小、位置和方向,以满足具体的碰撞需求。

17.Sphere Colliders(球形碰撞器):用于添加球形碰撞器到布料中,以模拟球形物体与布料的碰撞。添加球形碰撞器可以使布料在与球形物体交互时更准确地进行碰撞和响应。可以调整球形碰撞器的半径、中心位置,以满足具体的碰撞需求。

18.Virtual Particle Weights(虚拟粒子权重):用于控制虚拟粒子的质量。
虚拟粒子是一种用于提高布料稳定性和减少抖动的技术。
您可以通过调整虚拟粒子的权重值来控制其对布料的影响力,从而改变布料的动力学行为。

六、Configurable Joint:用于模拟关节约束的组件,它可以连接两个刚体,模拟它们之间的关节约束(添加Cloth组件时,会自动添加Rigidbody组件)

 

1.Edit Angular Limits(编辑角度限制):当勾选此选项时,可以编辑关节的旋转限制属性。

2.Connected Body(连接刚体):指定要连接到的刚体。这是通过将两个刚体连接在一起来模拟关节约束的方式之一。

3.Connected Articulation Body(连接关节体):指定要连接的关节体。这是连接 Configurable Joint 到关节体的另一种方式,它提供更高级的控制和灵活性。

4.Anchor(锚点):指定关节相对于所连接刚体的锚点位置。它定义了关节约束在连接刚体上的位置。

5.Axis(轴):指定关节约束的主要旋转轴。它定义了连接刚体之间的旋转约束。

6.Auto Configure Connected Anchor(自动配置连接锚点):当勾选此选项时,Unity 会自动设置连接锚点的位置,使连接关节的刚体间的距离保持不变。

7.Connected Anchor(连接锚点):指定连接刚体上的锚点位置。它定义了关节约束作用在连接刚体上的位置。

8.Secondary Axis(次要轴):定义关节约束之间的次要旋转轴。它提供了在主要轴旋转之外的额外约束控制。

9.X Motion,Y Motion,Z Motion(X轴运动,Y轴运动,Z轴运动):用于控制关节约束在各个轴向上的线性运动。可以设置为 Free(自由),Limited(有限制)和 Locked(锁定)三种模式:
Free:在该轴向上没有限制,允许刚体自由运动。
Limited:在该轴向上有限制,定义了刚体运动的范围。
Locked:在该轴向上完全锁定刚体,不允许运动。

10.Angular X Motion,Angular Y Motion,Angular Z Motion(X轴角度运动,Y轴角度运动,Z轴角度运动):用于控制关节约束在各个轴向上的角度运动。同样,可以设置为 Free(自由),Limited(有限制)和 Locked(锁定)三种模式。这些属性控制关节的旋转约束。

11.Linear Limit Spring(线性限制弹簧):该属性用于设置线性限制的弹簧效果。它包括弹簧的弹性系数和阻尼系数。弹性系数决定了刚体在趋向于限制位置时的恢复力,阻尼系数决定了刚体受到阻尼力的程度。

12.Linear Limit(线性限制):该属性用于设置线性运动限制的范围。可以设置最小位置和最大位置,以定义刚体在该轴向上的运动范围。

13.Angular X Limit Spring(角度 X 限制弹簧):该属性用于设置角度限制的弹簧效果。它包括弹簧的弹性系数和阻尼系数。弹性系数决定刚体在趋向于限制角度时的恢复力,阻尼系数决定刚体受到阻尼力的程度

14.Low Angular X Limit(低角度 X 限制)和 High Angular X Limit(高角度 X 限制):这些属性定义了关节约束在两个角度范围之间的限制,用于限制刚体在 X 轴旋转的角度范围。

15.Angular YZ Limit Spring(角度 YZ 限制弹簧):该属性用于设置 YZ 轴上的角度限制的弹簧效果。它包括弹簧的弹性系数和阻尼系数。

16.Angular Y Limit(角度 Y 限制)和 Angular Z Limit(角度 Z 限制):这些属性定义了关节约束在 Y 和 Z 轴上的旋转角度限制。

17.Target Position(目标位置):用于设置关节的目标位置。这决定了关节约束连接刚体的相对位置。

18.Target Velocity(目标速度):用于设置关节的目标速度。这影响关节约束连接刚体的速度。

19.X Drive,Y Drive,Z Drive(X 驱动,Y 驱动,Z 驱动):这些属性用于设置关节驱动力。驱动力可以施加在连接的刚体上,以实现特定的运动效果。

20.Target Rotation(目标旋转):用于设置关节的目标旋转。这决定了关节约束连接刚体的相对旋转。

21.Target Angular Velocity(目标角速度):用于设置关节的目标角速度。这影响关节约束连接刚体的角速度。

22.Rotation Drive Mode(旋转驱动模式):该属性定义了旋转驱动的模式。可以选择两种模式:
X And YZ:同时在 X、Y、Z 轴上驱动旋转。
Slerp:使用球面插值(Slerp)的方式驱动旋转。

23.Angular X Drive(角度 X 驱动)和 Angular YZ Drive(角度 YZ 驱动):这些属性用于设置关节的角度驱动力。驱动力可以施加在连接的刚体上,以实现特定的旋转效果。

24.Slerp Drive(球面插值驱动):该属性用于设置球面插值驱动的参数。它包括驱动力的强度和阻尼。

25.Projection Mode(投影模式):该属性定义了关节约束发生错误时,如何进行投影修正。有两种模式可用:
None:不进行投影修正。
Position And Rotation:对连接刚体的位置和旋转进行投影修正。

26.Projection Distance(投影距离):当 Projection Mode 设置为 Position And Rotation 时,此属性定义了投影修正的距离。

27.Projection Angle(投影角度):当 Projection Mode 设置为 Position And Rotation 时,此属性定义了投影修正的角度

28.Configured In World Space(使用世界坐标系配置):当勾选此选项时,关节的位置和旋转参数将以世界坐标系来进行配置和计算。

29.Swap Bodies(交换刚体):当勾选此选项时,将交换连接关节中的主动刚体和被动刚体。这可以用于快速交换连接对象。

30.Break Force(破裂力):当关节受到的力超过该值时,连接关节将断开。这可以模拟关节的破裂效果。

31.Break Torque(破裂力矩):当关节受到的扭矩超过该值时,连接关节将断开。这可以模拟关节的破裂效果。

32.Enable Collision(启用碰撞):当勾选此选项时,连接的刚体之间会发生碰撞。如果不勾选,则连接的刚体之间将不会发生碰撞。

33.Enable Preprocessing(启用预处理):当勾选此选项时,Unity 在计算连接关节约束之前会进行预处理,以提高性能。预处理可以在运行时缓存一些计算结果,加速约束计算。

34.Mass Scale(质量缩放):该属性用于缩放连接刚体的质量。可以将其用于调整关节的刚体质量的影响。

35.Connected Mass Scale(连接质量缩放):该属性用于缩放连接刚体的连接质量(Connected Body 的质量)。可以将其用于调整连接刚体质量对关节行为的影响。

七、Constant Force:用于对刚体施加持续的力和扭矩(添加Cloth组件时,会自动添加Rigidbody组件)

 

Force(力):该属性定义了以世界坐标系为基准的持续力的大小和方向。被应用于连接 Constant Force 组件的刚体。

Relative Force(相对力):该属性定义了以物体局部坐标系为基准的持续力的大小和方向。被应用于连接 Constant Force 组件的刚体。

Torque(扭矩):该属性定义了以世界坐标系为基准的持续扭矩的大小和方向。被应用于连接 Constant Force 组件的刚体。

Relative Torque(相对扭矩):该属性定义了以物体局部坐标系为基准的持续扭矩的大小和方向。被应用于连接 Constant Force 组件的刚体。

八、Fixed Joint用于模拟固定的关节约束,连接两个刚体(添加Cloth组件时,会自动添加Rigidbody组件)

 

Connected Body(连接刚体):该属性用于指定被连接的刚体。将此属性设置为需要连接的刚体即可将两个刚体通过 Fixed Joint 进行连接。

Connected Articulation Body(连接关节刚体):该属性用于指定被连接的关节刚体。如果在关节系统中使用固定关节,应将此属性设置为需要连接的关节刚体。

Break Force(破裂力):当关节受到的力超过该值时,连接关节将断开。这可以模拟关节的破裂效果。

Break Torque(破裂力矩):当关节受到的扭矩超过该值时,连接关节将断开。这可以模拟关节的破裂效果。

Enable Collision(启用碰撞):当勾选此选项时,连接的刚体之间会发生碰撞。如果不勾选,则连接的刚体之间将不会发生碰撞。

Enable Preprocessing(启用预处理):当勾选此选项时,Unity 在计算连接关节约束之前会进行预处理,以提高性能。预处理可以在运行时缓存一些计算结果,加速约束计算。

Mass Scale(质量缩放):该属性用于缩放连接刚体的质量。可以将其用于调整关节的刚体质量的影响。

Connected Mass Scale(连接质量缩放):该属性用于缩放连接刚体的连接质量(Connected Body 的质量)。可以将其用于调整连接刚体质量对关节行为的影响。

九、Hinge Joint:用于模拟铰链关节约束,连接两个刚体,允许围绕一个轴进行旋转(添加Cloth组件时,会自动添加Rigidbody组件)

 

Edit Angular Limits(编辑角度限制):该属性允许你编辑关节的旋转角度限制。你可以设置角度的最小值和最大值,限制关节旋转的范围。

Connected Body(连接刚体):该属性用于指定被连接的刚体。将此属性设置为需要连接的刚体即可将两个刚体通过 Hinge Joint 进行连接。

Connected Articulation Body(连接关节刚体):该属性用于指定被连接的关节刚体。如果在关节系统中使用铰链关节,应将此属性设置为需要连接的关节刚体。

Anchor(锚点):该属性定义了当前物体上的点,关节允许围绕这个点进行旋转。编辑器中显示为一个小球,你可以在场景视图中拖动该小球来调整锚点位置。

Axis(轴):该属性定义了围绕旋转的轴向。通常,你需要将轴与锚点的位置和朝向相匹配。

Auto Configure Connected Anchor(自动配置连接锚点):当勾选此选项时,将自动设置连接刚体上的连接锚点(Connected Anchor),以使轴与连接刚体的锚点一致。

Connected Anchor(连接锚点):该属性定义了连接刚体上的点,该点会与当前物体的锚点进行连接。你可以手动调整连接锚点的位置。

Use Spring(使用弹簧):当勾选此选项时,将启用弹簧效果,使关节具有弹簧的行为。

Spring(弹簧):该属性用于设置关节的弹簧参数,包括弹簧常数和阻尼。

Use Motor(使用马达):当勾选此选项时,将启用马达模式,使关节具有马达驱动的功能。

Motor(马达):该属性用于设置关节的马达参数,包括马达速度和马达扭矩。

Use Limits(使用限制):决定是否启用关节的旋转限制。当启用此属性时,可以使用下面的 Limits 属性来定义关节的旋转范围。

Limits(旋转限制):用于定义关节的旋转范围。可以设置最小角度和最大角度,以限制关节可以旋转的范围。例如,通过设置最小角度为-90度,最大角度为90度,可以限制关节只能在-90度到90度之间旋转。

剩下的属性可参考Fixed Joint组件

十、Mesh Collider:用于将网格形状应用于刚体,以便进行碰撞检测和响应

 

Convex:用于指定网格形状是否为凸体。凸体是指一个物体的任意两点之间的连线都完全位于该物体的边界之内。当将 Convex 属性设置为 true 时,Unity 会假设当前网格是凸体,并进行相关的优化处理,以提高碰撞检测的性能

Is Trigger(是否作为触发器):定义了碰撞器是否被当作触发器来使用。当 Is Trigger 属性为 true 时,碰撞器不会产生物理反应,而是会触发一些事件,比如 OnTriggerEnter() 和 OnTriggerExit()。当 Is Trigger 为 false 时,碰撞器将会产生物理反应。

Cooking Options(碰撞器计算选项):用于定义碰撞器的计算选项。选择正确的计算选项可以提高游戏性能,但也可能会增加内存消耗和加载时间。

Material(物理材质):定义了碰撞器的物理材质。物理材质可以影响碰撞的摩擦力、弹性等属性。在 Mesh Collider 组件中,可以指定一个预定义的 PhysicMaterial 来应用到碰撞器上。

Mesh 属性(模型网格):定义了用于创建碰撞器的模型网格。你可以将一个模型网格分配给 Mesh Collider 组件,它将会根据模型的形状和其他属性创建一个对应的碰撞器。

十一、Rigidbody:用于模拟物体的物理行为的组件

 

Mass(质量):物体的质量,影响其受力和加速度。质量较大的物体需要更大的力才能移动。

Drag(阻力):物体在运动时所受到的阻力。较大的阻力值会使物体减速得更快。可以模拟空气阻力等。

Angular Drag(角阻力):物体在旋转时所受到的阻力。与Drag类似,较大的角阻力值会使物体的旋转减速得更快。

Use Gravity(使用重力):确定物体是否受到重力的影响。如果启用了重力,物体会受到场景中的重力影响而下落。

Is Kinematic(是否为运动学):确定物体是否受到其他物理力的影响。如果将物体设置为运动学,它将不受其他物体的碰撞影响,而是由程序控制其位置和旋转。

Interpolate(插值):决定物体在运动过程中如何插值来平滑移动。有三个选项:None(无插值,会造成抖动)、Interpolate(插值,会平滑移动)和Extrapolate(外插值,根据速度继续让物体运动)。

Collision Detection(碰撞检测):设置物体之间的碰撞检测方式。有两个选项:Discrete(离散碰撞检测,适用于快速移动的物体)和Continuous(连续碰撞检测,适用于高速运动的物体)。

Constraints(约束):可以限制物体的运动。可以分别设置位置和旋转的约束,例如只允许物体在某个轴上移动或旋转。

十二、Sphere Collider

 

1.可以参考Capsule Collider组件

十三、Spring Joint:是一种用于模拟弹簧行为的物理组件(添加Spring Joint组件时,会自动添加Rigidbody组件)

 

1.Connected Body (连接刚体): 是指与当前刚体相连接的另一个刚体或关节。

2.Connected Articulation Body (连接关节体): 是指与当前关节体相连接的另一个关节体。

3.Anchor (锚点) :是指当前刚体或关节体上的点,它是弹簧的起始点。通常情况下,它应该位于当前刚体或关节体的表面上。

4.Auto Configure Connected Anchor (自动配置连接锚点) :用于指示是否自动配置连接锚点。如果设置为 true,则 Unity 将自动计算 Connected Body 或 Connected Articulation Body 上的连接锚点位置。如果设置为 false,则可以手动设置 Connected Anchor (连接锚点) 的坐标。

5.Connected Anchor (连接锚点) :是指连接刚体或连接关节体上的点,它是弹簧的终点。如果 Auto Configure Connected Anchor 设置为 true,则该属性将自动生成并显示在 Inspector 窗口中。否则,你可以手动设置该属性的坐标。

6.Spring (弹簧) :用于设置弹簧的刚度。它是控制弹簧的振动频率和振幅的重要参数。较大的值表示更强的弹性力。

7.Damper (阻尼) :用于控制弹簧的阻尼。它是控制弹簧振动的衰减速度的参数。较大的值表示更快的衰减。

8.Min Distance (最小距离) :用于指定弹簧的最小长度。当弹簧的长度小于最小距离时,它将受到最小长度的限制,无法继续收缩。

9.Max Distance (最大距离) :用于指定弹簧的最大长度。当弹簧的长度大于最大距离时,它将受到最大长度的限制,无法继续伸展。

10.Tolerance (容差) :用于指定弹簧的长度容差范围。当弹簧的长度在容差范围内时,弹簧将保持在其目标长度附近,并且不会施加额外的力或衰减。

11.剩下的属性可参考Fixed Joint组件

十四、Terrain Collider:用于地形碰撞检测的组件。除了地形网格本身的几何形状外,还可以在地形上放置树木,这些树木也可以被视为碰撞对象

 

1.Material(材质):用于定义碰撞体的物理特性,例如摩擦力和弹性。可以通过选择预定义的物理材质或自定义材质来设置。

2.Terrain Data(地形数据):指定当前Terrain Collider组件关联的地形数据。地形数据包含了地形网格的高度图和细节地图等信息。

3.Enable Tree Colliders(启用树木碰撞体):确定是否启用树木作为碰撞对象。如果启用了树木碰撞体,树木将被视为具有碰撞体的实体,可以与其他碰撞对象互相交互。

十五、Wheel Collider:用于创建车轮的物理模拟

1.Mass(质量):这是车轮的质量。较重的车轮会对整个车辆的动力学行为产生更大的影响。

2.Radius(半径):这是车轮的半径。它定义了车轮的大小,会影响到车辆的速度和旋转。

3.Wheel Damping Rate(车轮阻尼率):这是车轮的阻尼率。它控制了车轮在碰撞时的振动衰减速率。较高的阻尼率会减少车轮产生的振动。

4.Suspension Distance(悬挂距离):这是车轮与车身之间的距离。它决定了车轮能够保持接触的最大距离。较大的悬挂距离意味着更高的车身离地间隙。

5.Force App Point Distance(力施加点距离):这是施加到车轮上的作用力的点与车轮中心之间的距离。它可以用来调整对车轮施加力的位置。

6.Center(中心点):这是车轮的中心点。它被用作车轮的参考点,影响着车轮的转动和碰撞。

7.Suspension Spring(悬挂弹簧):这是用来模拟车轮悬挂系统的组件。

(1)Spring(弹簧):这是悬挂弹簧的刚度系数。较大的弹簧值会使车轮的悬挂更加紧凑,较小的弹簧值则会使悬挂更加松散。

(2)Damper(阻尼器):这是悬挂阻尼器的阻尼系数。它控制车轮的振动衰减速率。较大的阻尼值会减缓车轮的振幅。

(3)Target Position(目标位置):这是悬挂弹簧的目标位置。它定义了车轮悬挂的位置。调整目标位置可以改变车辆的悬挂高度。

8.Forward Friction(纵向摩擦力):用于控制车轮在纵向上的摩擦行为

(1)Extremum Slip (最大滑动率):这是车轮在正向(纵向)运动时的最大滑动比率。滑动比率是指车轮旋转与车速之间的比率。当滑动比率超过最大滑动率时,会应用最大滑动摩擦力。

(2)Extremum Value (最大滑动摩擦力值):这是车轮在最大滑动率下施加的最大摩擦力值。它控制着车轮在正向滑动时的最大摩擦力。

(3)Asymptote Slip (渐近滑动率):这是在车轮正向运动时,滑动比率逼近渐近值时的滑动比率。在渐近滑动率之后,滑动摩擦力逐渐减小。

(4)Asymptote Value (渐近滑动摩擦力值):这是车轮在滑动比率逼近渐近值时施加的滑动摩擦力值。它控制着车轮在正向滑动过程中的渐近摩擦力。

(5)Stiffness (刚度):这是车轮在正向滑动时的摩擦力刚度系数。较大的刚度值会导致更强的反作用力,使车轮更难以滑动。

9.Sideways Friction(横向摩擦力):用于控制车轮在横向上的摩擦行为

(1)Extremum Slip (最大滑动率):这是车轮在侧向(横向)运动时的最大滑动比率。当滑动比率超过最大滑动率时,会应用最大滑动摩擦力。

(2)Extremum Value (最大滑动摩擦力值):这是车轮在最大滑动率下施加的最大摩擦力值。它控制着车轮在横向滑动时的最大摩擦力。

(3)Asymptote Slip (渐近滑动率):这是在车轮侧向运动时,滑动比率逼近渐近值时的滑动比率。在渐近滑动率之后,滑动摩擦力逐渐减小。

(4)Asymptote Value (渐近滑动摩擦力值):这是车轮在滑动比率逼近渐近值时施加的滑动摩擦力值。它控制着车轮在横向滑动过程中的渐近摩擦力。

(5)Stiffness (刚度):这是车轮在横向滑动时的摩擦力刚度系数。较大的刚度值会导致更强的反作用力,使车轮更难以滑动。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/46906.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【论文笔记】RCM-Fusion: Radar-Camera Multi-Level Fusion for 3D Object Detection

原文链接:https://arxiv.org/abs/2307.10249 1. 引言 目前的一些雷达-相机融合3D目标检测方法进行实例级的融合,从相机图像生成3D提案,并与雷达点云相关联以修正提案。但这种方法没有在最初阶段使用雷达,依赖于相机3D检测器&…

VAE-根据李宏毅视频总结的最通俗理解

1.VAE的直观理解 先简单了解一下自编码器,也就是常说的Auto-Encoder。Auto-Encoder包括一个编码器(Encoder)和一个解码器(Decoder)。其结构如下: 自编码器是一种先把输入数据压缩为某种编码, 后仅通过该编…

【2500. 删除每行中的最大值】

来源:力扣(LeetCode) 描述: 给你一个 m x n 大小的矩阵 grid ,由若干正整数组成。 执行下述操作,直到 grid 变为空矩阵: 从每一行删除值最大的元素。如果存在多个这样的值,删除其…

【Spring Cloud】Ribbon 中的几种负载均衡策略

文章目录 前言一、Ribbon 介绍二、负载均衡设置三、7种负载均衡策略3.1.轮询策略3.2.权重策略3.3.随机策略3.4.最小连接数策略3.5.重试策略3.6.可用性敏感策略3.7.区域敏感策略 前言 负载均衡通常有两种实现手段,一种是服务端负载均衡器,另一种是客户端…

OSI模型简介及socket,tcp,http三者之间的区别和原理

1.OSI模型简介(七层网络模型) OSI 模型(Open System Interconnection model):一个由国际标准化组织提出的概念模型,试图提供一个使各种不同的计算机和网络在世界范围内实现互联的标准框架。 它将计算机网络体系结构划分为七层,每…

【2023】java数据结构-时间、空间复杂度分析

1、算法效率 算法效率分析分为两种:第一种是时间效率,第二种是空间效率。时间效率被称为时间复杂度,而空间效率被称作空间复杂度。 时间复杂度主要衡量的是一个算法的运行速度,而空间复杂度主要衡量一个算法所需要的额外空间 2、…

Docker 数据管理

Docker 数据管理 一、docker数据管理 1.数据卷 数据卷是一个供容器使用的特殊目录,位于容器中。可将宿主机的目录挂载到数据卷上,对数据卷的修改操作立刻可见,并且更新数据不会影响镜像,从而实现数据在宿主机与容器之间的迁移。…

【数据库 - 用户权限管理】(简略)

目录 一、概述 二、用户权限类型 1.ALL PRIVILEGES 2.CREATE 3.DROP 4.SELECT 5.INSERT 6.UPDATE 7.DELETE 8.INDEX 9.ALTER 10.CREATE VIEW和CREATE ROUTINE 11.SHUTDOWN 12GRANT OPTION 三、语句格式 1.用户赋权 2.权限删除 3.用户删除 一、概述 数据库用…

Sentinel限流中间件

目录 介绍 Sentinel 的特征 Sentinel 的组成 实战使用 简单实例 配置本地控制台 使用可视化ui配置简单流控 配置异步任务限流 使用注解定义限流资源 SpringCloud整合Sentinel 简单整合 并发线程流控 关联模式 整合openFeign使用 介绍 随着微服务的流行&#xff0…

phkit - 中英音素处理、文本转拼音、文本正则化

文章目录 关于 phkit安装包含组件pinyinkitchinesesymbolsequencepinyinphonemenumberconvertstyleenglish关于 phkit phoneme toolkit: 拼音相关的文本处理工具箱,中文和英文的语音合成前端文本解决方案。 github : https://github.com/KuangDD/phkit

RT thread 之 Nand flash 读写过程分析

文章目录 前言:什么是Nand Flash?1、Nand Flash 读取步骤2、从主存读到Cache2.1 在标准spi接口下读取过程2.2 测试时序(SPI频率30MHz) 3.从Cache读取数据3.1在标准spi接口读取过程测试时序 前言:什么是Nand Flash&…

【LangChain】检索器之上下文压缩

LangChain学习文档 【LangChain】检索器(Retrievers)【LangChain】检索器之MultiQueryRetriever【LangChain】检索器之上下文压缩 上下文压缩 LangChain学习文档 概要内容使用普通向量存储检索器使用 LLMChainExtractor 添加上下文压缩(Adding contextual compression with an…

动态分段的JavaScript实现【线性参考】

有许多很酷的 GIS 应用程序将海拔和距离结合在一起。 当用户沿着高程图拖动光标时,地图上的位置通常会更新。 推荐:用 NSDT设计器 快速搭建可编程3D场景。 在尝试将此功能构建到我的一个项目中时,我了解到它需要一种称为线性参考(…

mars3d绘制区域范围(面+边框)

1、图例(绿色面区域白色边框) 2、代码 1)、绘制区域ts文件 import { mapLayerCollection } from /hooks/cesium-map-init /*** 安全防護目標* param map*/ export const addSafetyProtection async (map) > {const coverDatas await m…

浅谈智能电容器在低压配电网末端的应用

安科瑞 华楠 摘要:电容器优化配置和投切是配电网络优化的一项重要内容。电容器优化配置,侧重对电容器优化投切的各种算法进行了详细评述,分析了各种算法的特点及存在的问题,以促进该研究领域的进一步发展。 关键词:电…

【字节跳动青训营】后端笔记整理-3 | Go语言工程实践之测试

**本文由博主本人整理自第六届字节跳动青训营(后端组),首发于稀土掘金:🔗Go语言工程实践之测试 | 青训营 目录 一、概述 1、回归测试 2、集成测试 3、单元测试 二、单元测试 1、流程 2、规则 3、单元测试的例…

网络传输层协议:UDP和TCP

背景知识 再谈端口号 端口号(Port)标识了一个主机上进行通信的不同的应用程序; 在TCP/IP协议中, 用 "源IP", "源端口号", "目的IP", "目的端口号", "协议号" 这样一个五元组来标识一个通信(可以通过 netstat -…

SpringBoot中接口幂等性实现方案-自定义注解+Redis+拦截器实现防止订单重复提交

场景 SpringBootRedis自定义注解实现接口防刷(限制不同接口单位时间内最大请求次数): SpringBootRedis自定义注解实现接口防刷(限制不同接口单位时间内最大请求次数)_redis防刷_霸道流氓气质的博客-CSDN博客 以下接口幂等性的实现方式与上面博客类似,…

IOS自动化测试环境搭建教程

目录 一、前言 二、环境依赖 1、环境依赖项 2、环境需求与支持 三、环境配置 1、xcode安装 2、Git安装 3、Homebrew安装(用brew来安装依赖) 4、npm和nodejs安装 5、libimobiledevice安装 6、idevicesinstaller安装 7、ios-deploy安装 8、Ca…

第十四届蓝桥杯大赛青少年省赛C++组试题真题 2023年5月

一、选择题 第 1 题 单选题 C中,bool类型的变量占用字节数为 ( )。 A. 1 B. 2 C. 3 D. 4 第 2 题 单选题 以下关于C结构体的说法,正确的是 ( )。 A. 结构体中只能包含成员变量,不能包含成员函数 B. 结构体不能从另一个结构体继承 …