Unity编辑器知识

Posted Miao He

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Unity编辑器知识相关的知识,希望对你有一定的参考价值。

Unity编辑器知识

一、新建项目

  • 打开Unity Hub,点击新项目,选择3D模板,也可以选择不同版本编辑器,如下图所示。输入项目名称,选择项目存储位置,确认后点击创建项目按钮,新项目创建完成。

二、界面布局

1)工具栏

unity的工具栏主要由图标组成的,提供了最常用功能的快捷访问。工具栏主要包括Transform工具、TransformGizmo切换、Play控件、Layers下拉列表和Layout下拉列表。

  • Transform(变换)工具:主要应用于Scene视图,用来控制和操作场景以及游戏对象。从左到右依次是Hand(手形)工具、Translate(移动)工具、Rotate(旋转)工具和Scale(缩放)工具。
  • Transform Gizmo(变换Gizmo)切换。
    Center:用于改变游戏对象的轴心点(Center:改变游戏对象的轴心为物体包围盒的中心;Pivot:使用物体本身的轴心)。
    Global:改变物体的坐标(Global:世界坐标;Local:自身坐标)。
  • Play(播放)控件:用户可以在编辑和游戏状态之间随意切换,使游戏调试和运行更便捷和高效。如下图:

注:在播放模式下,用户对游戏场景的任何修改操作均是临时的,任何修改操作在用户退出游戏预览模式后都会被还原。

  • Layers(分层)下拉列表:控制游戏对象在Scene视图中的显示,Scene视图中将会显示在下拉菜单中被勾选状态的物体。
  • Layout(布局)下拉列表:切换视图的布局,同时用户可以保存自定义的界面布局。

2)菜单栏

菜单栏主要有File、Edit、Assets、GameObject、Component、Windows和Help等。

  • File菜单:包含项目与场景的场景、保存、输出等功能。
菜单项用途快捷键
New Scene新建一个游戏场景Ctrl+N
Open Scene选择需要打开的场景Ctrl+O
Save保存当前场景Ctrl+S
Save as…把当前保存的场景另存为新的场景Ctrl+Shift+S
New Project…新建新的项目
Open Project…打开项目
Save Project保存当前项目
Bulid Settings…发布游戏前设置选项Ctrl+Shift+B
Bulid And Run发布并运行游戏场景Ctrl+B
Exit退出Unity
  • Edit编辑菜单:包含对场景进行一系列编辑及环境设置操作等命令。

  • Assets资源:
    Create:创建场景中的脚本、Shader、材质、动画、UI等资源。
    Show in Explorer:可切换到资源文件的文件目录。
    Import New Asset…:为场景导入新的资源,比如模型、材质、Shader等。
    Import Package:导入已有的资源包或加载系统默认提供的资源包。
    Export Package:将场景资源打包导出,可以对某个文件夹或资源,也可对整体项目进行导出。

  • GameObject游戏对象/物体:可创建游戏对象,包括灯光、粒子、模型、GUI等,

菜单项用途快捷键
Create Empty创建一个空的游戏对象,可为其添加各类组件,从而生成相应类型的游戏对象Ctrl+Shift+N
Create Other创建其他游戏对象,包括场景中的粒子、GUI、灯光、标准模型、物理模型等
Center On Children子物体归位到父物体中心点,同时选中父对象和子对象会自动将选中的对象进行轴心对齐操作
Make Parent创建父子关系
Clear Parent清除父子关系,即取消父子绑定关系
Apply Changes To Perfab将改变的内容应用到预设体
Break Perfab Instance取消预设体实例
Move To View移动游戏对象到当前视图的中心点Ctrl+Alt+F
Align With View移动游戏对象与视图对齐,将选择的对象自动移动到当前视图并以当前视图为中心进行对齐Ctrl+Shift+F
Align With to Selected移动视图与游戏对象对齐,将当前视图对齐到选择的对象,并以游戏对象中心为准进行对齐
  • Component组件:用来添加到游戏对象上的一组相关属性,包括Add…、Mesh、Effects、Physics、Navigation、Audio、Rendering、Miscellaneous等。
菜单项用途快捷键
Add…为选择的游戏对象添加组件,为游戏对象添加的组件类型可以随意组合Ctrl+Shift+A
Mesh网格类组件,共有三类,Mesh Filter(添加网格过滤器)、Text Mesh(添加文本网格)、Mesh Rendering(添加网格渲染器)
Effects特效类组件,包括Particle System(粒子系统组件)、Trail Renderer(拖尾渲染组件)、Line Render(线渲染组件)、Lens Flare(镜头炫光组件)、Halo(关环组件)、Projector(投影效果组件)
Physics物理类组件,用于设置场景中模型的物理属性,包括设置为刚体、控制器、碰撞器、关节、力等
Navigation导航类组件,用于为场景中的物体添加导航功能,包括Nav Mesh Agent(导航网格代理)、Off Mesh Link(分离网格连接)、Nav Mesh Obstacle(导航网格障碍)
Audio音频类组件,用于添加音频组件及相关过滤器,包括Audio Listener(音频侦听器组件)、Audio Reverb Zone(音频混合范围组件)、Audio Low Pass Filter(音频低通过滤器组件)等等
Rendering场景的渲染类组件,包括场景、天空盒、光晕、GUI界面等
Miscellaneous杂项组件,包括Animator(Mecanim动画系统组件,适合制作骨骼动画)、Animation(制作关键帧动画)、NetworkView(网格视图组件)、Wind Zone(风组件)
  • Terrain地形:方便用户直观地绘制场景地形,可以在场景中加入树木、草丛等效果。
菜单项用途快捷键
Create Terrain创建一个地形平面
Import Heightmap-Raw…导入高度图
Export Heightmap-Raw…导出高度图
Set Rresolution…设置地形分辨率,即可设置地形的长、宽、高、分辨率等信息
Mass Place Trees…批量种植树木
Flatten Heightmap…展平高度图
Refresh Tree and Detail Protoypes刷新树以及预置细节
  • Window窗口:包含各种的窗口切换、布局等,也可以打开各种视图、访问Unity的Asset Store资源商店。
菜单项用途快捷键
Next Window切换下一个视图窗口Ctrl+Tab
Previous Window切换上一个视图窗口Ctrl+Shift+Tab
Layouts布局选项,在此菜单中可以控制布局的样式,也可自定义布局窗口、恢复默认布局
Scene游戏场景设计面板Ctrl+1
Game游戏预览窗口Ctrl+2
Inspector属性查看面板Ctrl+3
Hierarchy显示游戏所有对象的面板Ctrl+4
Project显示项目资源列表的面板Ctrl+5
Animation动画编辑视图Ctrl+6
ProfilerUnity各类资源使用情况查看器Ctrl+7
Asset StoreUnity资源商店,用户可下载和出售资源Ctrl+9
Asset Server对资源进行版本管理Ctrl+0
Lightmapping烘焙窗口,对场景进行烘焙操作
Occlusion Culling遮挡剔除
Navigation导航
Console控制台,进行错误排除等操作Ctrl+Shift+C

三、视图

1)Project视图

Project(项目)视图是整个项目工程的资源汇总,包含了游戏场景中用到的脚本、材质、字体、贴图、外部导入的网络模型等所有的资源文件。

2)Hierarchy视图

  • Hierarchy(层级)视图显示当前场景中用到的对象。在Hierarchy视图中按照字母顺序来排列对象,这需要用户有良好的命名规范,防止查找所需对象时不易查找。
  • 因为在Scene视图中游戏对象容易被遮挡,所以需要在Hierarchy视图中操作,有利于资源的识别和管理。
  • Hierarchy视图,如下图:

注:在Hierarchy视图中删除某个对象,该对象在当前游戏场景中被删除,但是并不会在项目中真正删除它,在Project视图中该对象仍存在。

3)Inspector视图

Inspector(检视)视图用于显示在游戏场景中所选择对象的详细信息以及游戏整体的属性设置,包括对象的名称、标签、位置坐标、旋转角度、缩放、组件等,如下图所示。

  • Transform:用于修改对象的Position(位置)、Rotation(旋转)和Scale(缩放)3个属性。
  • Mesh Filter(网格过滤器):用于从对象中获取网格信息,并将其传递到用于将其渲染到屏幕到Mesh Renderer当中。
  • Mesh Renderer(网格渲染器):将Mesh Filter得到几何形状,根据游戏对象的Transform组件的定义位置进行渲染。
  • Materials:设置对象材质。

4)Scene视图

Scene(场景)视图用于显示场景中所有用到的模型、光源、摄像机、材质、音效等,此视图中可对游戏对象通过可视化的方式进行编辑,如下图:

Scene视图下常用的操作方法
旋转操作:按Alt+鼠标左键,以当前轴心点来旋转场景。
移动操作:按住鼠标滚轮键或者按Q键,用来移动场景。
缩放操作:使用滚轮键,按Alt+鼠标右键,用来放大和缩小视图视角。
居中显示选择的物体:按F键,用来将选择的游戏对象居中放大显示。
Flythrough模式:按鼠标右键+W/A/S/D键切换到该模式,用来让用户以第一人称视角在Scene视图中飞行浏览。

5)Game视图

Game(游戏)视图用于预览场景,不能编辑,在此视图中可以展现完整的游戏效果。

100个 Unity小知识点☀️ | Unity 可以在编辑器中读取Excel,打包成exe后就无法读取的问题

Unity 小科普

老规矩,先介绍一下 Unity 的科普小知识:

  • Unity是 实时3D互动内容创作和运营平台 。
  • 包括游戏开发美术建筑汽车设计影视在内的所有创作者,借助 Unity 将创意变成现实。
  • Unity 平台提供一整套完善的软件解决方案,可用于创作、运营和变现任何实时互动的2D和3D内容,支持平台包括手机平板电脑PC游戏主机增强现实虚拟现实设备。
  • 也可以简单把 Unity 理解为一个游戏引擎,可以用来专业制作游戏

Unity小知识点学习

Unity 可以在编辑器中读取Excel,打包成exe后就无法读取的问题

问题描述:

  • 项目中涉及到了文件读取的相关操作

  • 项目在Unity下能够正常获取到文件信息并且不报错

  • 项目能够成功打包并且不报错

  • 项目打包成exe后或者apk安装成功后项目无法正常运行。

可能出现的原因:

  1. 文件路径问题。使用的文件路径导致在Unity编辑器中与实际打包后的路径不一致,导致未能加载到Excel文件!
  2. 打包后的exe文件,未能加载到Excel的库文件 导致不能进行Excel的读取!

解决方案:

  1. 出现上述第一个问题的解决方案:
  • 在脚本中使用文件路径的时候尽量使用Application.streamingAssetsPath,而不要使用 Application.dataPath
  • Application.streamingAssetsPath中的文件在打包成exe后依然在依赖的文件夹中,也就是可以正常使用加载
  • 但是 Application.dataPath在打包成exe文件后,其中的文件可能就丢失了!

Application.streamingAssetsPath路径:项目名/Assets/StreamingAssets/
Application.dataPath路径:项目名/Assets/

  1. 出现上述第二个问题的解决方案:
  • 出现这问题是因为Win并没有把Excel的Dll打包进Exe中
  • 所以我们需要进行一个额外的操作:把Unity\\Editor\\Data\\Mono\\lib\\mono\\unity目录下的一系列i18n相关dll导入项目中。
  • 为了防止有的小伙伴懒得找或者找不到,我把需要的文件都打包好了
  • 在使用的时候直接把我这个资源导入到工程中,在打包成exe的时候就可以正常加载Excel了!

Excel打包成exe后不能读取的解决方案下载链接:https://download.csdn.net/download/zhangay1998/34613898


以上是关于Unity编辑器知识的主要内容,如果未能解决你的问题,请参考以下文章

漫话Unity

漫话Unity

Unity是干啥用的?

unity如何制作恶魔城小地图

Godot 2D 和 3D 游戏引擎

Godot 2D 和 3D 游戏引擎