U3D开发笔记
Unity 的界面
本部分将详细介绍最常见的 Editor 窗口,以及如何充分利用它们。
最常见的窗口处于默认位置
- (A) 工具栏提供最基本的工作功能。左侧包含用于操作 Scene 视图及其中游戏对象的基本工具。中间是播放、暂停和步进控制工具。右侧的按钮用于访问 Unity Collaborate、Unity 云服务和 Unity 帐户,然后是层可见性菜单,最后是 Editor 布局菜单(提供一些备选的 Editor 窗口布局,并允许保存自定义布局)。
- (B) Hierarchy 窗口是场景中每个游戏对象的分层文本表示形式。场景中的每一项都在层级视图中有一个条目,因此这两个窗口本质上相互关联。层级视图显示了游戏对象之间相互连接的结构。
- © Game 视图通过场景摄像机模拟最终渲染的游戏的外观效果。单击 Play 按钮时,模拟开始。
- (D) Scene 视图可用于直观导航和编辑场景。根据正在处理的项目类型,Scene 视图可显示 3D 或 2D 透视图。(一组相关联的游戏对象的集合,通常游戏中每个关卡就是一个场景,用于展现当前关卡)
- (E) Inspector 窗口可用于查看和编辑当前所选游戏对象的所有属性。由于不同类型的游戏对象具有不同的属性集,因此在您每次选择不同游戏对象时,Inspector 窗口的布局和内容也会变化。
- (F) Project 窗口显示可在项目中使用的资源库。将资源导入到项目中时,这些资源将显示在此处。
- (G) The status bar provides notifications about various Unity processes, and quick access to related tools and settings.
局部坐标:z前,,x右,,y上,。可以想象一下数学中的xy二维坐标图,y是上,x是右。
网格过滤器:就像一个空架子,记录模型每个点的位置等信息。网格渲染器就像是根据这些点的信息,进行填色。
对齐
Unity 提供了三种对齐方式:
- 世界网格对齐:将游戏对象对齐到沿 X、Y 或 Z 轴投影的网格,或将游戏对象沿 X、Y 或 Z 轴进行递增变换。仅当使用世界 (World) 或全局 (Global) 控制柄方向时,这种对齐方式才可用。
- 表面对齐:将游戏对象对齐到任何__碰撞体__的交点。
- 顶点对齐:将任何顶点从给定网格对齐到另一个网格的顶点或表面的位置。可将顶点对齐到顶点,将顶点对齐到表面,将轴心对齐到顶点。
表面对齐
使用__移动__工具在中心拖动时,按住 Shift 和 Control__(Mac 上为 Command__)可快速将游戏对象对齐到任何__碰撞体__的交叉点。
顶点对齐
使用__顶点对齐__可快速组合场景:从给定的网格中获取任何顶点,并将该顶点放置在与您选择的任何其他网格中的任何顶点相同的位置。例如,使用顶点对齐在赛车游戏中精确对齐路段,或者在网格的顶点定位能量块。
按照以下步骤使用顶点对齐:
1.选择要操作的网格,并确保__移动__工具处于活动状态。
2.按住 V 键激活顶点对齐模式。
3.将光标移动到网格上要用作轴心点的顶点上。
4.当光标位于所需顶点上方时按住鼠标左键,将网格拖动到另一个网格上的任何其他顶点旁边。
要将顶点对齐到另一个网格上的表面,请添加并按下 **Shift+Ctrl** (Windows) 或 **Shift+Command** (macOS) 键,同时移动到要对齐到的表面上。
要将轴心对齐到另一个网格上的顶点,请添加并按住 **Ctrl** (Windows) 或 **Command** (macOS) 键,同时将光标移动到要对齐到的顶点上。
5.对结果感到满意时,松开鼠标按键和 V 键(Shift+V 用作此功能的开关)。
Hierarchy 窗口
隔离所选的游戏对象
Isolation 视图会暂时覆盖场景可见性设置,以便仅显示所选的游戏对象,而其他所有对象被隐藏。
Isolation 视图会覆盖场景可见性设置,因此只有所选对象及其子项 (A) 可见。
单击 Exit 按钮 (B) 会恢复以前的场景可见性设置。
要进入 Isolation 视图,请执行以下操作:
-
按下 Shift + H。
这样可隔离所有选定的游戏对象及其子项。隔离隐藏的游戏对象会使这些游戏对象可见,直到退出 Isolation 视图。
在 Isolation 视图中时,可以继续更改场景可见性设置,但是所做的任何更改都会在退出时丢失。
要退出 Isolation 视图,请执行以下操作:
- 再次按下 Shift + H,或者单击 Scene 视图中的 Exit 按钮。退出 Isolation 视图将恢复原始的场景可见性设置。
Scene 视图控制栏
使用 Scene 视图控制栏可以选择用于查看场景的各种选项,还可以控制是否启用光照和音频。这些控件仅在开发期间影响 Scene 视图,对构建的游戏没有影响。
绘制模式 (Draw mode) 菜单
第一个下拉菜单选择要用于描绘场景的__绘制模式__。可用选项为:
绘制模式 | 功能 | |
---|---|---|
Shading Mode | ||
Shaded | 显示表面时使纹理可见。 | |
Wireframe | 使用线框表示形式绘制网格。 | |
Shaded Wireframe | 显示网格纹理并叠加线框 | |
Miscellaneous | ||
Shadow Cascades | 显示方向光阴影级联。 | |
Render Paths | 使用颜色代码显示每个游戏对象的渲染路径: 蓝色表示延迟着色 绿色表示延迟光照 黄色表示前向渲染 红色表示顶点光照 | |
Alpha Channel | 以 Alpha 渲染颜色。 | |
Overdraw | 将游戏对象渲染为透明的“轮廓”。透明的颜色会累积,因此可以轻松找到一个对象绘制在另一个对象上的位置。 | |
Mipmaps | 使用颜色代码显示理想的纹理大小: 红色表示纹理大于必要值(在当前距离和分辨率下) 蓝色表示纹理可以更大。理想的纹理大小取决于应用程序运行时采用的分辨率以及摄像机与特定表面的接近程度。 | |
Texture Streaming | 根据游戏对象在纹理串流 系统中的状态,将游戏对象着色为绿色、红色或蓝色。如需了解更多信息,请参阅有关纹理串流调试的文档。 | |
Deferred | 通过这些模式,可以单独查看 G 缓冲区的每个元素(Albedo**、Specular、**Smoothness 和 Normal__)。请参阅有关延迟着色的文档以了解更多信息。| |*Global Illumination*||可使用以下模式来可视化全局光照系统的各个方面:__UV Charts、Systems、Albedo、Emissive、Irradiance、Directionality、Baked、Clustering 和 Lit Clustering。请参阅有关 GI 可视化的文档以了解每种模式。 | |
Material Validator | 材质验证器 (Material Validator) 有两种模式:Albedo 和 Metal Specular。使用这些模式可以检查基于物理的材质是否使用建议范围内的值。请参阅基于物理的材质验证器以了解更多信息。 |
Effects 按钮和菜单
该菜单(由 Audio 按钮右侧的小山丘图标激活)具有在 Scene 视图中启用或禁用渲染效果的选项。
- Skybox:在场景的背景中渲染的天空盒纹理
- Fog:视图随着与摄像机之间的距离变远而逐渐消褪到单调颜色。
- Flares:光源上的镜头光晕。
- Animated Materials:定义动画化的材质是否显示动画
Effects 按钮本身充当一次性启用或禁用所有效果的开关。
Component Editor Tools 面板开关
Component Editor Tools 面板开关可在工具栏上切换影响当前选定对象的自定义命令。工具栏出现在 Scene 视图主窗口内的某一个窗口中。
如需了解更多信息,请参阅有关使用自定义 Editor 工具的文档。
属性 | 描述 | |
---|---|---|
Field of View | 摄像机视角的高度。 | |
Dynamic Clipping | 选中此框可使 Unity 计算摄像机的近裁剪面和远裁剪面(相对于场景视口大小)。 | |
Clipping Planes | 距离摄像机多远时 Unity 开始和停止渲染场景中的游戏对象。 | |
Near | 相对于摄像机的最近点(Unity 从此处开始渲染游戏对象)。 | |
Far | 相对于摄像机的最远点(Unity 到此处停止渲染游戏对象)。 | |
Occlusion Culling | 选中此框可在 Scene 视图中启用遮挡剔除。这样可以防止 Unity 渲染摄像机看不到的游戏对象(因为它们隐藏在其他游戏对象背后)。 | |
Camera Easing | 选中此框可使摄像机在 Duration 设置的时间内在 Scene 视图中缓入和缓出运动。这使得摄像机在开始移动时缓入运动(而不是全速运动),而在停止时缓出。 | |
Duration | 摄像机加速到其初始全速(该速度由 Camera Speed 设置)所需的时间(以秒为单位)。 | |
Camera Speed | Scene 视图中摄像机的当前速度。 | |
Min | Scene 视图中摄像机的最慢速度。有效值在 0.01 到 98 之间。 | |
Max | Scene 视图中摄像机的最快速度。有效值在 0.02 到 99 之间。 |
Gizmos 菜单
Scene 视图和 Game 视图都有 Gizmos 菜单。单击 Scene 视图或 Game 视图的工具栏中的 Gizmos 按钮,即可访问 Gizmos 菜单。
Scene 视图中的 Gizmos 按钮
Scene 视图或 Game 视图窗口之上的 Gizmos 菜单
属性 | 功能 |
---|---|
3D Icons | 3D Icons 复选框控制是否在 Scene 视图中由 Editor 绘制 3D 组件图标(例如光源和摄像机的图标)。 勾选 3D Icons 复选框后,组件图标由 Editor 根据组件与摄像机的距离进行缩放,并被场景中的游戏对象遮挡。可使用滑动条来控制外观的总体大小。未勾选 3D Icons 复选框时,以固定大小绘制组件图标,且这些图标始终绘制在 Scene 视图中所有游戏对象之上。 请参阅下面的辅助图标和图标以查看图像以及更多信息。 |
Selection Outline | 选中 Selection Outline 可以通过彩色轮廓来显示所选的游戏对象,并用另一种彩色轮廓显示其子项。默认情况下,Unity 以橙色突出显示所选游戏对象,而以蓝色突出显示子游戏对象。 注意:__此选项仅在 Scene 视图的 Gizmos 菜单中可用;无法在 Game 视图的 Gizmos 菜单中启用该选项。 请参阅下面的 Selection Outline 和 Selection Wire 以查看图像以及更多信息。| | Selection Wire**| 选中** Selection Wire__ 可以在显示所选的游戏对象时使其线框网格可见。要更改 Selection Wire 的颜色,请选择 Unity > Preferences (macOS) 或 Edit > Preferences__ (Windows),选择 Colors__,然后更改 Selected Wireframe__ 设置。 此选项仅在 Scene 视图的 Gizmos 菜单中可用;无法在 Game 视图的 Gizmos 菜单中启用该选项。 请参阅下面的 Selection Outline 和 Selection Wire 以查看图像以及更多信息。 |
Recently Changed | 控制最近修改的组件和脚本是否显示图标和辅助图标。 此部分在您第一次更改一个或多个项时出现,并在后续更改后更新。 有关更多信息,请参阅下面的内置组件、脚本和最近更改的项。 |
Scripts | 控制场景中的脚本是否显示图标和辅助图标。 仅当您的场景使用满足特定条件的脚本时才会显示此部分。 请参阅下面的内置组件、脚本和最近更改的项以了解更多信息。 |
Built-in Components | 控制具有图标或辅助图标的所有组件类型是否显示图标和辅助图标。 请参阅下面的内置组件、脚本和最近更改的项以了解更多信息。 |
辅助图标和图标
辅助图标
__辅助图标__是与场景中的游戏对象相关联的图形。有些辅助图标仅在选择游戏对象时才会显示,而其他辅助图标由 Editor 显示(无论选择什么游戏对象)。这些辅助图标通常是线框,使用代码而不是位图图形来绘制,还可以交互。摄像机辅助图标和光线方向辅助图标(如下图所示)是内置辅助图标的两个示例;还可以使用脚本来创建自己的辅助图标。请参阅了解视锥体相关文档以了解有关摄像机的更多信息。
有些辅助图标是被动图形覆盖层,显示来供参考(例如,光线方向辅助图标用于显示光线的方向)。其他辅助图标具有交互性,例如音频源 (AudioSource) 球形范围辅助图标,可以单击并拖动此辅助图标来调整音频源的最大范围。
移动、缩放、__旋转__和__变换__工具也是交互式辅助图标。请参阅关于游戏对象定位的文档以了解关于这些工具的更多信息。
摄像机辅助图标和光源辅助图标。这些辅助图标仅在被选中时才可见。
请参阅 OnDrawGizmos 函数的脚本参考页面以了解关于在脚本中实现自定义辅助图标的更多信息。
图标
可以在 Game 视图或 Scene 视图中显示__图标__。图标是扁平、公告牌式覆盖层,可以用来清楚地指示在处理游戏时游戏对象在游戏中的位置。摄像机图标和光源图标便是内置图标的示例;还可以将您自己的图标分配给游戏对象或各个脚本(请参阅关于分配图标的文档以了解如何执行此操作)。
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-jymRlbLd-1617721139498)(https://gitee.com/mingfun/cloud-image/raw/master/img/GizmosMenu1.png)]摄像机和光源的内置图标
左:3D 模式下的图标。右:2D 模式下的图标。
Selection Outline 和 Selection Wire
Selection Outline
启用 Selection Outline 后,所选游戏对象及其子游戏对象周围将显示轮廓。默认情况下,Unity 以橙色显示所选游戏对象的轮廓,而以蓝色显示子游戏对象的轮廓。可以在 Unity 偏好设置中更改这些颜色(请参阅下文的选择颜色)。
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Xs26cbTj-1617721139500)(https://gitee.com/mingfun/cloud-image/raw/master/img/GizmosMenu1.png)]选择的游戏对象(最左边的盒体)以橙色显示其轮廓,并以蓝色显示其子游戏对象(中间和右边的盒体)的轮廓。
选择游戏对象时,Unity 会显示其所有子游戏对象(以及它们的子游戏对象,依此类推)的轮廓,但不会显示父游戏对象(或它们的父游戏对象,依此类推)的轮廓。
选择中间的盒体会以橙色突出显示该盒体,并以蓝色突出显示其子游戏对象(最右边的盒体),但不会突出显示其父游戏对象(最左边的盒体)。
如果所选的游戏对象延伸到 Scene 视图边缘之外,则选择轮廓 (Selection Outline) 将沿窗口边缘显示:
Selection Wire
启用 Selection Wire 后,在 Scene 视图或 Hierarchy 窗口中选择游戏对象时,将在 Scene 视图中显示该游戏对象的线框网格:
选择颜色
可为选择线框设置自定义颜色。
1.选择 Unity > Preferences (macOS) 或 Edit > Preferences__ (Windows) 以打开 Preferences 编辑器。 1.在 Colors 选项卡上,更改以下一种或多种颜色: * (A) Selected Children Outline__:所选游戏对象的子项的轮廓颜色。 * (B) Selected Outline__:所选游戏对象的轮廓颜色。 * © Wireframe Selected:所选游戏对象的线框的轮廓颜色。
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-4QjgUTIK-1617721139504)(https://gitee.com/mingfun/cloud-image/raw/master/img/GizmosMenu2.png)]
内置组件、脚本和最近更改的项
使用 Gizmos 菜单中的列表可以控制各种组件是否显示图标和辅助图标。此列表分为多个部分:
Gizmos 菜单显示了具有自定义图标的项以及最近修改的一些项
A. Recently Changed 部分可以控制最近修改的项是否显示图标和辅助图标。此部分会在您第一次更改一个或多个项时出现。在后续更改之后,Unity 将更新此列表。
B. Scripts 部分可以控制符合以下条件的脚本是否显示图标和辅助图标:
- 为脚本分配了图标(请参阅关于分配图标的文档)。
- 实现了 OnDrawGizmos 函数。
- 实现了 OnDrawGizmosSelected 函数。
当场景包含一个或多个满足以上条件的脚本时,将显示此部分。
C. Built-in Components 部分可以控制具有图标或辅助图标的所有组件类型是否显示图标和辅助图标。
此处不会列出在 Scene 视图中不显示图标或辅助图标的内置组件类型(例如刚体)。
切换图标可见性
icon 列显示或隐藏每个组件类型的图标。全彩色图标显示在主 Scene 视图窗口中,褪色的图标则不会显示。
Light 图标显示为褪色,表示 Editor 在 Scene 视图中不显示光源图标。Camera 图标显示为全色,表示 Editor 在 Scene 视图中会显示摄像机图标。
要在 Scene 视图中切换图标的可见性,请单击 icon 列中的任何图标。
**注:**如果列表中的项具有辅助图标而没有图标,则该项的 icon 列为空。
更改脚本图标
带有自定义图标的脚本会在 icon 列中显示一个下拉菜单小箭头。要更改自定义图标,请单击该箭头以打开 Select Icon 菜单。
切换辅助图标可见性
要控制 Editor 是否绘制特定组件类型或脚本的辅助图标图形(例如,碰撞体的线框辅助图标或摄像机的视锥体辅助图标),请使用 Gizmo 列中的复选框。
- 选中复选框后,Editor 将为该组件类型绘制辅助图标。
- 清除复选框后,Editor 不为该组件类型绘制辅助图标。
**注:**如果列表中的项具有图标而没有辅助图标,则该项的 Gizmo 列为空。
要切换整个部分的辅助图标可见性(所有 Built-in Components、所有 Scripts,等等),请使用相应部分的名称旁边的复选框。
Built-in Components 复选框可切换该部分中列出的每个组件类型的辅助图标可见性
选中复选框后,该部分的一个或多个项类型的辅助图标可见性就会启用。
常用快捷键
-
点选物体,在Scene场景中按F可聚焦到物体近处。在Play模式中,选中物体连按两次F,在Scene场景中的视图会跟随物体移动。
-
Q:平移屏幕;W:移动物体;E:旋转物体;R:缩放
Z,X切换轴点旋转模式和坐标模式(世界坐标/局部坐标)
-
Ctrl+P开启/关闭Play模式,ctrl+shift+P 在play模式中暂停
-
点选Scene窗口,按下Ctrl+F 输入物体名称查找Scene场景里物体。
-
Ctrl+shift+b 打开Build Settings窗口
-
Ctrl+Shift+N 创建空物体
Alt+Shift+N 注意区分两种情况:
(1)当处于未选中状态时,创建新空物体。
(2)当选中一个物体时,创建空子物体。
-
对游戏物体的常用操作:
Ctrl+c 复制
Ctrl+v 粘贴
Ctrl+x 剪贴
Ctrl+D 复制
Ctrl+A 全选
Ctrl+Z 撤销Ctrl+Y 重做
-
当在Scene窗口中找到一个好的视角时,点选摄像机(不点选摄像机,快捷不起作用),按下Ctrl+Shift+F,将摄像机设置到当前视角的位置。
-
Ctrl+[0-9对应数字]
-
Ctrl+N 创建新场景,Ctrl+S 保存场景,Ctrl+Shift+S场景另存为。
附带Brackeys大神整理的常用快捷键图:
摄像机
上面的Lighting换到Rendering了。
procedural 形容词 程序上的。这个是可以调太阳的。有一个日升日落效果