Coursera 笔记

Module 02 · Understanding Core Unity Concepts理解 Unity 核心概念

Adding Behaviors为太阳系添加行为

Coursera ↗


视频目标

  1. 利用行为脚本让游戏对象(GameObject)进行逻辑旋转。
  2. 探讨父子关系在 Unity 中的作用。
  3. 理解世界坐标系与本地坐标系的区别。

什么是行为?

  • 行为(Behavior) 是用于控制游戏对象行为的脚本代码。
  • 在本视频中,我们将使用行为脚本让太阳系的天体旋转。

操作步骤

让太阳旋转

  1. 选择太阳对象:
  • 在 Hierarchy 面板中选择 Sun。
  1. 添加旋转脚本:
  • 在 Scripts 文件夹中找到 RotateAround 脚本。
  • 拖放法:直接将脚本拖到太阳对象。
  • 添加组件法:
    1. 选择太阳对象。
    2. 在 Inspector 面板底部点击 Add Component。
    3. 在 Scripts 分类中选择 RotateAround。
  1. 设置脚本参数:
  • Target(目标):设置为太阳自身(拖拽太阳对象到目标框中)。
  • Speed(速度):设置为 30(表示每秒旋转 30°)。
  1. 测试旋转:
  • 点击 Play 按钮。
  • 观察太阳围绕自身轴旋转。

让地球旋转

  1. 选择地球对象:
  • 在 Hierarchy 面板中选择 Earth。
  1. 添加旋转脚本:
  • 重复添加太阳旋转脚本的步骤。
  • Target(目标):设置为地球自身。
  • Speed(速度):设置为 15。
  1. 运行测试:
  • 点击 Play,观察地球围绕自身轴旋转。

让月亮旋转

  1. 复制脚本:
  • 在地球对象中找到 RotateAround 脚本组件。
  • 点击组件右上角的 三点菜单,选择 Copy Component。
  1. 粘贴到月亮:
  • 选择月亮对象,点击 三点菜单,选择 Paste Component As New。
  • 修改 Target(目标) 为月亮自身。
  • 设置 Speed(速度) 为 60。
  1. 运行测试:
  • 点击 Play,观察月亮围绕自身轴旋转。

实现天体之间的旋转关系

父子关系法

  1. 设置父子关系:
  • 将地球拖拽到太阳下,作为其子对象。
  • 将月亮拖拽到地球下,作为其子对象。
  1. 效果展示:
  • 点击 Play,观察地球绕太阳旋转,同时月亮绕地球旋转。
  1. 注意点:
  • 在这种方式下,地球的旋转速度与太阳一致,月亮的旋转速度与地球一致。

多脚本法

  1. 为地球添加第二个旋转脚本:
  • 在地球对象中添加另一个 RotateAround 脚本。
  • Target(目标):设置为太阳。
  • Speed(速度):设置为 10。
  1. 为月亮添加第二个旋转脚本:
  • 添加 RotateAround 脚本。
  • Target(目标):设置为地球。
  • Speed(速度):设置为负值(例如 -10)表示反向旋转。
  1. 测试结果:
  • 点击 Play,地球绕太阳旋转,月亮绕地球旋转且速度可独立调整。


坐标系与父子关系

概念 描述
世界坐标系 以整个场景的原点 (0,0,0) 为参考点,用于描述游戏对象的全局位置。
本地坐标系 以游戏对象自身为原点,用于描述其相对位置。
父子关系坐标系 子对象的位置和旋转是相对于父对象的本地坐标系定义的。
  • 示例:
    • 地球围绕太阳旋转是通过父子关系实现的。
    • 月亮围绕地球旋转也是通过调整父子关系或脚本实现的。


保存场景

  • 定期保存场景,快捷键:
    • Windows:Ctrl+S
    • Mac:Command+S

总结

  1. 行为脚本 是 Unity 中实现物体动态效果的关键。
  2. 通过 父子关系 和 脚本 的结合,可以实现复杂的物体运动。
  3. 理解 坐标系 是掌握游戏对象位置和运动的核心。

下一步:继续增强太阳系的动态效果! 🌟