【Unity踩坑】为什么有Rigidbody的物体运行时位置会变化

先上图,不知你有没有注意过这个现象呢?

一个物体加上了Rigidbody组件,当勾选上Use Gravity时,运行后,这个物体的位置的值会有变化。这是为什么呢?

刚体由物理系统处理,因此它会对重力、碰撞等做出反应。
物理引擎在每个 fixedupdate 帧上运行(每秒运行多次),并根据对象发生的情况更新位置和速度。

执行诸如"如果没有力 => 不做任何事情"这样的 if 语句会非常慢,因为物理系统能够处理很多很多的对象,所以它只是

下一个位置 = 当前位置 + 速度 * 时间

不管是否真的发生了什么,但我们不需要做任何检查来查看是否发生了任何事情,如果我们有 1000 个对象,这将会很慢。

由于浮点数并不精确,你可能会看到事物发生微小的移动,就像这样。由于浮点数不精确,
你的物体已向左移动了 0.000000059604 个单位,这甚至不可见。

简单来讲,这个变化是由物理系统引起的,变化的值非常微小,可以忽略不计。

参考:

https://www.reddit.com/r/Unity3D/comments/o5koa7/hi_new_to_unity_why_does_adding_rigidbody_fuck_up/

相关推荐
WLJT1231231231 小时前
方寸之间见天地:新兴高端印章的当代破局与价值重构
unity·游戏引擎
软件黑马王子3 小时前
2025Unity中的核心数学工具(三)四元数(穿插Unity实战相关案例)
unity·游戏引擎
python_use4 小时前
SDL+WebGpu跨平台加速学习笔记
游戏引擎
千忧散5 小时前
Unity Socket学习笔记 (三)TCP&UDP
笔记·学习·unity·c#
君莫愁。8 小时前
【Unity】构建超实用的有限状态机管理类
unity·c#·游戏引擎·有限状态机
AA陈超10 小时前
虚幻引擎5 GAS开发俯视角RPG游戏 P05-01.创建游戏玩法标签
c++·游戏·ue5·游戏引擎·虚幻
EQ-雪梨蛋花汤11 小时前
【Unity笔记】Unity Lighting Settings 全解析:一文读懂烘焙光照的每个参数(VR项目Lighting优化)
笔记·unity·vr
爱吃小胖橘1 天前
Unity网络开发--超文本传输协议Http(1)
开发语言·网络·网络协议·http·c#·游戏引擎
BrightMZM1 天前
记录一下Unity的BUG,Trial Version
unity·bug·打包·trial
▍ 小太阳 ☼1 天前
Unity2022Navigation系统打开方式
unity·游戏引擎