首页/ 第 14 章 · 3D 游戏进阶/ 第 233 课
LESSON 233 · 3D 游戏进阶

3D 物理进阶(关节与力)

3D 物理进阶完成。下一课学 3D 拾取与交互。

⏱ 约 14 分钟📊 难度:入门🗂 第 14 章 · 3D 游戏进阶📍 第 233 / 300 课
课程进度
233 / 300

🎯本节学习目标

  • 掌握力与扭矩
  • 掌握关节
  • 实现物理互动

🚀课程导读

门能开、秋千能晃、爆炸能掀飞箱子——3D 物理让场景“可交互”。本课进阶物理。

力与扭矩

让物体“受力”。

  1. 【AddForce】加力:rb.AddForce(new Vector3(0, 10, 0), ForceMode.Impulse);
  2. 【ForceMode】
  3. Force(持续力,每秒)/Acceleration(加速度)/Impulse(瞬间冲量)/VelocityChange(速度变化)。
  4. 【AddTorque】扭矩(旋转力):rb.AddTorque(new Vector3(0, 50, 0));
  5. 【AddExplosionForce】爆炸力(3D 特有):
  6. rb.AddExplosionForce(power, center, radius, 3f, ForceMode.Impulse);
  7. 把角色周围物体炸飞。
  8. 【Drag 阻尼】Linear Drag 限速、Angular Drag 限转。
  9. 【应用】武器击退、爆炸、推箱、风。
  10. 【注意】在 FixedUpdate 里施力(第 91 课)。
  11. 【测试】给箱子 AddExplosionForce 炸飞。
  12. 【完成】物体“有反应”。
  13. 【说明】扭矩常用于转轮、翻转敌人。
💡
物理力四兄弟:Force 持续、Impulse 冲量、Torque 旋转、ExplosionForce 爆炸。按场景选。

关节 Joint

让物体“连起来”。

  1. 【HingeJoint 铰链】门、吊桥:物体绕轴旋转。
  2. 给门加 HingeJoint:把门放墙边、连到墙(Connected Body)、设置轴(Y 轴)。
  3. 【SpringJoint 弹簧】秋千、悬挂:带弹力的连接。
  4. 【FixedJoint 固定】把两物体焊死(桌子腿)。
  5. 【CharacterJoint 角色关节】骨骼连接(第 144 课布娃娃用)。
  6. 【用法】选中物体 → Add Component → 搜 Joint 类型。
  7. 【Connected Body】连接的另一物体(或不填=连到世界)。
  8. 【Anchor 锚点】关节旋转点位置。
  9. 【Axis】旋转轴。
  10. 【测试】做一扇能开的门(HingeJoint)。
  11. 【注意】被连接物体要有 Rigidbody。
  12. 【完成】物理“组装”完成!
  13. 【实践】秋千(SpringJoint)+ 门(HingeJoint)+ 炸飞箱子(ExplosionForce)。
关节四兄弟:Hinge 开门、Spring 弹、Fixed 焊、Character 连骨骼。加关节=加玩法。

常见错误与排查

错误:门不转?
原因:HingeJoint 锚点/轴不对或没刚体
解决:门有 Rigidbody;HingeJoint 轴设 Y 或 Z;锚点在门轴位置。

动手练习

课后小任务(做出来才算真的学会)

  • 用 AddExplosionForce 炸飞箱子
  • 做一扇能开的门
  • 做一个晃动的秋千

本节小结

3D 物理进阶完成。下一课学 3D 拾取与交互。

完成打卡后,主站会实时更新你的学习进度 🎯

← 上一课ProBuilder 快速建模