Unity 之刚体,碰撞体,触碰器

本文介绍了Unity中Rigidbody和Collider的概念及其作用。Rigidbody用于模拟物体受力效果,如重力和碰撞;Collider是物体间碰撞的基础,决定碰撞形状和效果。碰撞体可设置物理材质来调整摩擦力和弹力。勾选Is Kinematic则物体不受运动学影响,勾选constraints可限制物体运动。碰撞体还可设为Trigger,用于触发事件,如自动门感应。刚体和碰撞体协同工作,实现物体间的交互和动态效果。
摘要由CSDN通过智能技术生成

Unity中文官方文档https://docs.unity.cn/cn/current/Manual/class-Rigidbody2D.html

Rigidbody 刚体 是赋予物体力的的作用效果的基础,包括重力,拉力(阻力也是拉力的一种),角拉力(角阻力同样)。

体现出来的就是物体悬空时会掉落,被其他东西碰到时(假设有碰撞体)会朝着受力方向运动或产生运动趋势。

勾选 Is Kinematic 使物体不受运动学影响(即简单理解为受力后不动/不改变运动趋势)。

在这里插入图片描述
勾选 constraints 禁止该物体的(position/rotation)在所勾选方向上产生运动.


Collider 碰撞体 则是物体之间的一切触碰,碰撞基础。任意两个物体之间的接触碰撞实际上都是碰撞体的接触,有任何一方没有碰撞体则碰撞不会发生(产生穿透效果),碰撞发生的效果是由碰撞体的形状大小决定的。比如一个正方体形状的物体,给它一个球形的碰撞体,那么它在收到其他物体的力时候,将会发生的是球形物体收到力时的运动。

点击 Edit Collitder 前的按钮后可改变碰撞体的大小与位置。

### 回答1: Unity中的碰撞通常是基于几何形状(如球、盒子、胶囊)来定义的,因此它们都是规则的。但是,如果你需要一个不规则的碰撞,例如一个复杂的几何形状或者一个非凸多边形,你可以使用Mesh Collider来实现。 Mesh Collider是一种使用网格来定义碰撞的组件。它可以使用网格渲染器组件中的网格数据,或者使用自定义的网格数据来创建不规则的碰撞。在使用Mesh Collider时,你需要确保网格是封闭的,也就是说没有任何开口或断裂。 如果你需要动态地创建不规则的碰撞,你可以使用Physics API来手动创建和管理碰撞。这种方法需要更多的编程工作,但是可以实现更高级的碰撞效果。 总的来说,Unity提供了多种方法来创建不规则的碰撞,你可以根据自己的需求选择最适合的方法。 ### 回答2: Unity中的不规则碰撞是指不能简单地用基本的几何形状(如方块、圆形等)来描述的碰撞。在游戏开发中,不规则碰撞通常是由复杂的多边形、曲线等形状构成的。 为了实现不规则碰撞Unity提供了多种方法。其中一种常用的方法是通过使用多边形碰撞组件来实现。这个组件可以与自定义的多边形形状一起使用,以便在游戏中检测和处理与其碰撞的物。 另一种方法是使用物理引擎的边界包围盒(Bounds)来检测不规则碰撞。物的边界包围盒是一个可以包裹物的最小立方或最小球。物在游戏中的碰撞检测通常通过比较边界包围盒之间的重叠程度来进行判断。 除了以上方法外,还可以使用Unity碰撞检测回调函数来自定义不规则碰撞的行为。通过编写脚本,在碰撞发生时执行特定的逻辑,例如触发特效、改变物属性等。 不规则碰撞在游戏开发中非常重要,因为它可以增加游戏的真实感和复杂性。比如在一个平台跳跃的游戏中,玩家角色和平台之间的碰撞就是不规则碰撞,它们的形状可以与实际的游戏对象相匹配。 总而言之,Unity提供了多种实现不规则碰撞的方法,开发者可以根据需要选择和使用。这些方法的应用可以使游戏更加真实、有趣和具有挑战性。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值