跳到正文
Qiita · Unity 开发社区· 来源· aijyu·· 3 小时前AI 评分8

利用 Unity 场景编辑功能构建仿真环境

Unityの検証での活用について

正文 · AI 翻译

利用Unity的场景编辑功能构建仿真环境

1. 前言

在Unity中,通过将3D模型放置在场景中并调整其位置、旋转和尺寸,可以构建设备布局。

本文介绍使用Unity的场景编辑功能创建仿真用设备环境的基本操作。

主要涉及以下功能。

  • Scene视图的操作
  • 对象的移动、旋转、缩放
  • 快捷键
  • 顶点吸附
  • 网格吸附
  • 对象复制
  • 视角切换
  • 资产搜索
  • 碰撞体设置
  • 灯光调整

※本文参考了Unity 2018的演讲资料。在Unity 6中,部分菜单名称和界面布局可能有所不同。


2. Unity的基本界面

Unity编辑器主要包含以下窗口。

窗口 役割
场景 编辑3D空间
游戏 从摄像机视角查看的运行画面
层级结构 场景中的对象列表
检查器 所选对象的设置
项目 模型、材质等的管理
控制台 错误和日志的确认

2.1 场景视图的显示

  1. 在 Unity 中打开项目。
  2. 点击顶部的“Scene”标签页。
  3. 在场景视图中操作鼠标。

场景视图是用于布置设备和调整尺寸的工作画面。


3. Scene 视图的视角操作

3.1 基本操作

操作 方法
视角旋转 Alt + 左键拖动
视点的平行移动 中键拖动
放大・缩小 鼠标滚轮
聚焦选中对象 F
自由視点移動 右键拖拽
前進 右键 + W
後退 右键 + S
左移動 右按钮 + A
右移動 右按钮 + D
上昇 右按钮 + E
下降 右按钮 + Q

3.2 Flythrough模式

按住鼠标右键的同时使用WASD键,可以在3D空间中移动。

操作手順:

  1. 将光标移至Scene视图。
  2. 按住鼠标右键。
  3. 使用WASD键移动。
  4. 移动鼠标以改变视线方向。
  5. 松开右键结束操作。

配合Shift键可提高移动速度。

此功能在直观确认机器人设备的通道宽度和设备间距时非常有效。


4. 对象的基本操作

4.1 创建对象

以创建Cube为例。

  1. 在Hierarchy中的空白区域右键单击。
  2. 选择“3D Object”。
  3. 点击“Cube”。
  4. 在 Scene 视图中生成 Cube。

4.2 快捷键

密钥 操作
Q 查看工具
W 移动工具
E 旋转工具
R 缩放工具
T 矩形工具
Y 变换工具
F 聚焦于所选对象
Ctrl + D 複製
删除 削除
Ctrl + Z 撤销
Ctrl + Y 重做

※Windows环境为假设。

4.3 移動操作

  1. 选择Cube。
  2. 按下W键。
  3. 显示红、绿、蓝箭头。
  4. 拖动箭头进行移动。

轴的含义:

  • X:左右
  • Y:上下
  • Z:前后

如需指定精确位置,请使用 Inspector 中的 Transform。

例:

Position

  • X = 5
  • Y = 0
  • Z = 3

4.4 回転操作

  1. 选择对象。
  2. 按下E键。
  3. 拖动旋转环。

在Inspector中输入精确的角度。

例:

旋转

  • X = 0
  • Y = 90
  • Z = 0

4.5 拡大縮小

  1. 选择对象。
  2. 按 R 键。
  3. 拖动各轴的句柄。

Cube 的初始尺寸为 1 米见方。

例如,在创建地板时:

Scale(缩放)

  • X = 20
  • Y = 0.2
  • Z = 20

これにより、20m×20mの床を作成できる。


5. Transformの操作

5.1 Transformとは

Transformは、オブジェクトの位置・回転・拡大縮小を管理するコンポーネントである。

項目 内容
Position 位置
旋转 回転
缩放 拡大縮小

5.2 重置变换

  1. 选择对象。
  2. 打开检查器。
  3. 打开变换组件的菜单。
  4. 选择“Reset”。

初期値:

位置 = (0, 0, 0)

Rotation = (0, 0, 0)

Scale = (1, 1, 1)

配置 CAD 模型时,用于确认非预期的坐标或旋转。


6. Pivot与Center

在Unity中,可以切换用于操作对象的基准点。

6.1 轴心(Pivot)

使用对象自身的基准点。

用途:

  • 机器人关节的旋转
  • 确认旋转轴
  • 设备模型的位置调整

6.2 中心

以选中对象的显示中心为基准进行操作。

用途:

  • 批量移动多个设备
  • 调整多个对象的位置

6.3 切换方法

  1. 查看 Scene 视图顶部的工具栏。
  2. 查找切换「Pivot / Center」的选项。
  3. 选择要使用的模式。

如果要确认机器人的关节位置,请使用 Pivot。


7. 本地与全局

7.1 全局

基于世界坐标系进行移动和旋转。

适合设备布局的对齐。

7.2 局部坐标系

以对象自身的轴为基准进行操作。

用于调整旋转后的设备或机器人部件。

7.3 切换

切换 Scene 视图顶部的“局部/全局”选项。

例:

当需要将旋转90度的设备沿其自身前方移动时,使用Local模式便于操作。


8. 顶点捕捉

顶点捕捉是一种将模型的顶点相互对齐的功能。

可用于设备的定位对齐。

8.1 操作手順

  1. 选择要移动的对象。
  2. 按W键切换到Move工具。
  3. 按住V键。
  4. 拖动源顶点附近。
  5. 对齐到目标顶点。
  6. 松开鼠标按钮。
  7. 松开V键。

8.2 使用例

  • 设备底座与地面的对准
  • 多个墙壁的连接
  • 传送装置的校准
  • 临时设备模型的排列

9. 网格捕捉

这是一种按固定间隔放置对象的功能。

9.1 操作方法

  1. 打开 Scene 视图。
  2. 打开“网格与吸附”设置。
  3. 设置移动单位。
  4. 选择对象。
  5. 按住Ctrl键的同时进行移动。

例:

将Move的吸附值设为1,即可实现以1米为单位的移动。

※吸附设置及操作可能因Unity版本不同而有所差异。

9.2 用途

  • 柱的等间距布置
  • 安全护栏的布置
  • 设备的排列
  • 通道宽度的调整

10. 对象的复制

10.1 基本操作

  1. 选择要复制的对象。
  2. 按下 Ctrl + D。
  3. 复制到相同位置。
  4. 用 W 键移动。

10.2 设备的等间距布置

例:

以2m间距布置安全栅栏。

  1. 创建最初的安全栅栏。
  2. 按 Ctrl + D 复制。
  3. 将Position X增加2m。
  4. 再次复制。
  5. 同样调整位置。

11. 使用俯视图・侧视图

11.1 场景辅助图标

使用Scene视图右上角的坐标轴显示。

点击各轴即可切换视角。

  • Top:上面
  • Front:正面
  • Right:右侧面

11.2 平行投影

点击 Scene Gizmo 的中央部分,即可在 Perspective 和 Orthographic 之间切换。

正交投影下,远近造成的视觉缩小效果会消失。

能够以接近图纸的直观方式确认设备布局。


12. 选择多个对象

12.1 使用 Ctrl 进行选择

在按住 Ctrl 键的同时点击层级结构(Hierarchy)中的对象,即可进行多选。

12.2 使用 Shift 进行范围选择

使用 Shift 可以在层次结构中连续选择对象。

12.3 一括移動

  1. 选择多个对象。
  2. 按下 W 键。
  3. 拖动移动手柄。

在整体移动设备组时使用。


13. 对象的父子关系

13.1 创建父子关系

  1. 在Hierarchy中选择要设为子对象的对象。
  2. 将其拖拽到要设为父对象的对象上。
  3. 该对象将放置在父对象下方。

例:

Robot

  • Base
    • Joint1
      • Joint2
        • Joint3

13.2 亲子关系的特征

移动父对象时,子对象也会随之跟随。

在构建机器人的关节结构时这一点非常重要。

但是,如果关节的旋转轴没有正确设置,则无法实现预期的旋转动作。


14. 资产搜索

14.1 在Project窗口中进行搜索

  1. 打开项目窗口。
  2. 在搜索栏中输入名称。
  3. 显示相应的资源。

例:

机器人

传送带

材料

14.2 按种类搜索

使用Unity的搜索过滤器可以指定资产的种类。

例:

t:Material

搜索材质。

t:Prefab

搜索预制体。

模型

搜索模型资产。

14.3 使用标签

为资产设置标签,可以按照设备类型或用途进行分类。

例:

  • 机器人
  • 传送带
  • Fixture
  • Simulation

在标签搜索中使用“l:标签名”。


15. Collider的设置

Collider用于物体之间的碰撞检测。

15.1 添加Box Collider

  1. 选择一个对象。
  2. 打开检查器。
  3. 点击「Add Component」。
  4. 搜索“Box Collider”。
  5. 追加。

15.2 Collider 的调整

调整Box Collider的以下项目。

  • Center
  • Size
  • Is Trigger

15.3 用途

  • 与地面的碰撞检测
  • 与设备的碰撞检测
  • 机器人干涉确认
  • 进入作业区域检测

※仅使用Collider无法完成干涉检测功能。根据需要,请结合Rigidbody或C#进行判定处理。


16. 光照设置

16.1 创建Light

  1. 在Hierarchy中右键单击。
  2. 选择「Light」。
  3. 添加所需的灯光。

主要灯光:

  • 方向光
  • 点光源
  • 聚光灯

16.2 点光源

用于设备周边的局部照明。

設定項目:

  • 颜色
  • 强度
  • 范围
  • 阴影

16.3 反射探针

这是一种用于辅助反射表现的功能。

追加方法:

  1. 在Hierarchy中右键单击。
  2. 从“Light”中选择“Reflection Probe”。
  3. 调整应用反射的区域。

※根据Unity的渲染管线,设置项会有所不同。


17. 在机器人仿真环境中的应用

组合到目前为止的操作,构建简易设备布局。

17.1 床的制作

  1. 生成Cube。
  2. 将名称改为Floor。
  3. 设置 Scale。

X = 20

Y = 0.2

Z = 20

  1. 将位置 Y 设置为 -0.1。

17.2 设备的临时布置

  1. 生成 Cube。
  2. 设置设备的外形尺寸。
  3. 输入Position。
  4. 根据需要复制。

17.3 替换为 CAD 模型

  1. 将FBX模型导入到Assets中。
  2. 配置到 Scene 视图中。
  3. 确认临时模型的坐标。
  4. 将 CAD 模型放置在相同位置。
  5. 确认尺寸和轴向。

17.4 机器人的配置

  1. 将机器人模型配置到Scene中。
  2. 在 Hierarchy 中确认父子关系。
  3. 确认枢轴。
  4. 确认每个关节的旋转方向。

17.5 動作確認

  1. 确认设备布局。
  2. 确认机器人的位置。
  3. 设置所需的控制脚本。
  4. 按下播放按钮。
  5. 确认操作结果。

18. 快捷键一览

按键 機能
Q 视图工具
W 移动工具
E 旋转工具
R 缩放工具
T 矩形工具
Y 变换工具
F 聚焦于所选对象
Ctrl + D 複製
Ctrl + Z 撤销
Ctrl + Y 重做
Delete 削除
V + 拖拽 顶点吸附
Ctrl + 移动 增量吸附
Alt + 左键拖拽 視点回転
中键拖拽 視点移動
右键拖拽 自由視点
右键 + WASD 視点移動
右键 + Q/E 视角上下移动
右键 + Shift 视角移动加速

※快捷键可能因Unity的设置或版本而有所不同。


19. 总结

使用Unity的场景编辑功能,无需借助外部建模工具即可进行设备的临时摆放和布局调整。

以下操作尤为重要:

  1. Scene视图中的视角操作
  2. 通过Transform调整位置、旋转和尺寸
  3. Pivot与Local/Global的切换
  4. 通过顶点吸附进行对齐
  5. 通过网格吸附实现等距排列
  6. 通过复制创建设备布局
  7. 通过父子关系管理机器人模型结构

掌握这些操作后,可以在导入CAD模型之前高效地进行设备布置方案探讨和仿真环境调整。


20. 参考資料

Unity Technologies Japan

「在Unity中制作关卡」(2018年)

Unity官方手册

来源:Qiita · Unity 开发社区 · qiita.com