简介:这是一份面向Unity初学者的详细安装教程文档,围绕从零搭建Unity开发环境展开,适合刚接触游戏开发、需要完成软件部署与首个项目创建的学习者参考。文档共1个docx文件,压缩包约804KB,内容按步骤组织,涵盖Unity Hub下载与安装、账号注册、个人版许可证激活、编辑器版本及安卓等模块选择、项目模板创建、界面分区说明、中英文切换和外部脚本编辑器设置等环节。已有686人学习,说明该流程对入门者具有较高参考价值。读者可据此理清安装顺序,避开账号、许可证和模块勾选等常见卡点,并借助对层级面板、属性面板、场景与游戏窗口、资源文件面板、控制台的介绍,快速熟悉Unity编辑器的工作方式,为后续脚本编写和项目实践打下基础。
1. 从零到能跑:Unity 安装真正要装的其实是四样东西
大多数人以为 Unity 安装就是双击一个安装包、一路下一步,装完却发现问题一箩筐:新建项目点不动、安卓包打不出来、双击脚本毫无反应,Hub 里还躺着一个“许可证过期”的红点。真正要装的其实是四样东西——Unity Hub、一个已验证的账号、一份有效的许可证、以及编辑器本体加对应模块。前三样任何一样缺失,Hub 都不会放你进下一步;第四样勾选不全,后面调半天都是白费。
这篇按实操顺序走一遍:先讲 Hub、账号、许可证这三条链路怎么通,再把版本和模块的勾选清单摊开说,接着是新建项目和五个面板的用法,最后把这条链路上最容易翻车的五个点逐条拆开。适合第一次装 Unity 的人,也适合装过一两次、但每次都得重来一遍的人。
2. Hub、账号与许可证:三条链路缺一条都进不去
2.1 Hub 装在哪,编辑器和模块装在哪
Unity Hub 本身只是一个启动器和版本管理器,体积很小,装在系统盘完全没压力。真正吃空间的是它后面要拉下来的编辑器本体,以及 Android 那一整套 SDK/NDK/JDK——一个编辑器加一个安卓模块,预留十几 GB 是比较稳妥的心理预期。所以装 Hub 之前先做一件事:确认哪块盘还有空间,然后想清楚 Hub 里的“安装路径”要指向哪里。
Hub 的默认行为是把编辑器装到 Hub 的安装盘下,比如 Windows 上常见的C:\Program Files\Unity\Hub\Editor。这个路径可以在 Hub 的设置里改,改成一个空间充裕的盘符,后面装第二个、第三个版本时就不会手忙脚乱。先看一眼磁盘:
# 查看各盘剩余空间,决定编辑器和模块装到哪个盘 # Git Bash / WSL 里可以用 df df -h # Windows 原生命令行用 wmic(新系统也可以用 PowerShell 的 Get-PSDrive) wmic logicaldisk get name,freespace,sizefreespace的单位是字节,除以 1024 的三次方才是 GB,看着数字很大别被唬住。判断标准很简单:目标盘至少留出编辑器体积的两倍余量,因为安装过程中还要解压临时文件,空间刚好卡在临界值时最容易出现“下载完成、校验失败、回滚”的循环。我一般会单独建一个目录,比如D:\Unity\Editor,让 Hub 把版本都装在这里,卸载版本时直接对准目录,不会跟其他软件混在一起。
2.2 账号注册:不登录连创建项目的按钮都是灰的
Hub 装好后的第一道墙是登录。这不是可选项——没有账号就没有许可证,没有许可证 Hub 不会让你新建项目,编辑器启动了也会卡在激活提示上。注册入口有两个:一是 Hub 界面里的登录按钮,点了会拉起系统默认浏览器跳到注册页;二是先在浏览器里注册完,再回 Hub 登录。两条路等价,区别只在于你在哪填表单。
注册流程本身没什么难度,容易翻车的是邮箱验证。填完信息提交后,验证邮件可能进了垃圾箱,也可能延迟几分钟才到。如果没点验证链接就回 Hub 登录,会出现“登录成功但状态异常”的情况,紧接着许可证那一步就会报错,而报错文案并不会告诉你根因是邮箱没验证。血泪经验是:注册完先去邮箱把链接点掉,回 Hub 确认头像和用户名正常显示,再往下走。
登录状态会缓存在本地,正常情况下不用每次重登。但如果你在同一台机器上切换过账号,或者清理过系统凭据,Hub 可能会要求重新验证。这时候不要反复点登录按钮硬刚,先退出 Hub 进程再重新打开,让它重新走一遍 OAuth 拉起流程,成功率会高很多。
2.3 个人版许可证:免费那条路怎么点、过期怎么续
登录之后是激活许可证。Hub 左侧的许可证页面里有“添加”按钮,点开后会列出几个版本:个人版、专业版、企业版之类。学习和小型项目用的就是个人版,它是免费的,条件也简单——收入规模没到那条线就用它。列表里认准标注 Personal 的那一项,别被顺序绕晕,界面版本不同排序会有差异。
点选个人版后会弹一个协议窗口,勾选同意、点确认,界面会显示获取成功。到这一步许可证才算真正落到本地,Hub 的项目页和编辑器才能正常工作。整个过程需要联网,断网状态下点激活只会得到一个含糊的失败提示。
许可证是有有效期的,到期后 Hub 会明确提示过期,编辑器也可能拒绝启动。续期的方式和第一次激活完全一样:进许可证页面,重新添加一次个人版,同意协议即可。不需要卸载重装,也不用清缓存。如果你经常在几台机器之间切换,建议把激活这一步当成装机的固定动作,装完 Hub 就先激活,再谈装编辑器,顺序反了的话中间会多出很多“为什么新建项目没反应”的自我怀疑。
3. 编辑器版本和模块勾选:一份能少折腾两小时的清单
3.1 版本选择:LTS 和预览版差在哪
Hub 的安装列表里版本号一大串,每个版本后面可能还跟着 LTS 之类的标记。LTS 是长期支持版,特点是 API 稳定、补丁持续、社区资料对得上号,第一次装 Unity 或者要长期维护一个项目,选它最省心。不带 LTS 标记的通常是较新的技术流版本,新特性先上,但接口变动也更频繁,拿它入门容易在查资料时对不上版本。
还有一个实际问题是“要不要一次装好几个版本”。可以,Hub 支持多版本并存,列表里每个版本独立管理,项目打开时也能指定用哪个版本。但对新手来说,同时装三个版本只会让“我到底该用哪个打开”变成一个日常困惑。常见做法是先装一个 LTS,等项目真的需要降级或升级时再补装,补装的成本也就是下载时间。
判断某个版本值不值得留,看两件事:项目里有没有用它创建过工程,以及有没有模块绑在这个版本上。卸载编辑器不会删掉你的项目文件夹,但会连带清掉该版本为项目生成的缓存目录,下次用别的版本打开会重新导入一遍资源,工程大的话要等挺久。
3.2 模块勾选清单:少勾一个,后面补一次
选定版本点安装后,会弹出一个模块列表。这一步是整个安装流程里最容易被“一路下一步”毁掉的环节,因为默认勾选只覆盖最基础的桌面开发,安卓、WebGL 这些都要自己点。把常见模块摊开看:
| 模块 | 建议 | 作用 | 不勾的后果 |
|---|---|---|---|
| Android Build Support | 要出安卓包就勾 | 提供安卓打包目标平台 | Build Settings 里找不到 Android |
| Android SDK & NDK Tools | 同上,建议一起勾 | 自带 SDK/NDK,免手动配环境 | 要自己装 SDK 并设环境变量 |
| OpenJDK | 同上 | 打包用的 Java 运行时 | Gradle 阶段报找不到 JDK |
| Visual Studio | 默认勾选 | 外部脚本编辑器 | 双击脚本没反应或弹记事本 |
| 简体中文语言包 | 建议勾 | 编辑器界面汉化 | 全英文菜单,查功能更慢 |
| Documentation | 按需 | 离线文档 | 只能在线查 API |
| WebGL Build Support | 按需 | 导出网页版本 | 没有 WebGL 平台可选 |
这张表里最容易被忽略的是 OpenJDK。很多人勾了 Android SDK & NDK Tools 就以为齐了,结果打包时在 Gradle 那一步报 JDK 路径错误。三个跟安卓相关的模块是一套的,要么一起勾,要么就都别勾、后面自己配一套外部环境——但自己配那套的坑比勾选多得多,除非你有明确的版本约束,否则让 Hub 帮你装齐更划算。
语言包是另一个值得单独说的。不勾中文包,编辑器里所有菜单都是英文,照着中文教程做的时候要在脑子里做一次翻译映射,效率损失不小。中文包是独立模块,勾了之后还要在偏好设置里手动切一次语言,具体放在 4.4 节讲。
3.3 装完补模块:齿轮菜单那三个入口
模块没勾全不用重装。Hub 的安装列表里,每个已安装版本右侧都有一个齿轮图标,点开是三项:添加模块、在资源管理器中显示、卸载。这三项各管一件事,别点混。
“添加模块”打开的是和首次安装时一样的模块列表,已经装过的会标出来,你只需要补勾缺的那几个。补装只会下载对应模块的增量内容,不会把整个编辑器重下一遍,这点可以放心。安卓模块体积不小,补装时同样是十几分钟起步,所以第一次装的时候一次性勾对比事后补要省事。
“在资源管理器中显示”直接跳到该版本的安装目录,排查问题时很有用——比如确认某个模块目录到底存不存在,或者清理残留的缓存文件夹。卸载则是对准当前版本整个移除,项目文件不受影响,但前面提过的缓存目录会一起没。我一般会在卸载前把项目用目标版本打开一次、确认能正常加载,再动手,算是一颗后悔药。
顺带一个检查手段:想知道机器上到底装了几个版本、各自占多少空间,直接列目录比在 Hub 界面里翻更直观。
# 列出 Hub 管理的编辑器安装目录,确认实际装了几个版本、各自占多大 # 如果你在 Hub 设置里改过安装路径,把下面的路径换成你自己的 Get-ChildItem "C:\Program Files\Unity\Hub\Editor" -Directory | Select-Object Name, @{n='SizeGB';e={ [math]::Round((Get-ChildItem $_.FullName -Recurse -File -ErrorAction SilentlyContinue | Measure-Object Length -Sum).Sum/1GB, 2) }}-Directory限定只列目录,-Recurse -File递归统计文件大小,Measure-Object Length -Sum求和后除以 1GB 换成人类可读的数字。跑完你会得到一张“版本号 + 占用空间”的清单,哪个版本是空间黑洞一目了然。这一步在磁盘告急时特别有用,比在 Hub 里一个个点开看要快。
4. 新建项目与编辑器界面:模板、路径、五个面板
4.1 模板怎么选:3D、2D 和 URP 的边界
Hub 的项目页右上角是“新项目”,旁边是“打开”——有现成工程就用打开,指向工程根目录即可,不要指到 Assets 里面去,那是常见的选错层级。点新项目后弹出的窗口分三列:左边是模板大类,中间是具体模板,右边是项目名和存放位置。
3D 模板和 2D 模板的差别不只是“有没有第三个轴”。2D 模板默认摄像机是正交投影,场景视图是平面视角,Sprite 相关设置也预置好了;3D 模板是透视摄像机加方向光,做 2D 游戏当然也能做,只是要自己把摄像机改成正交、调整视角,多几步手动配置。新手按项目类型选对应模板就行,别为了“通用”硬选 3D。
模板列表里还有带 URP 标记的选项。URP 是可编程渲染管线,带后处理、光照方案更现代,但对刚接触的人来说多了一层渲染管线资产的配置,材质不匹配时表现为“粉红色”,排查起来很劝退。第一个项目建议先用不带管线的 Core 模板跑通流程,等你要做后处理或者有明确的性能目标时再换。
4.2 项目路径:中文目录是个老坑,但确实会疼
右侧填项目名和存放路径。中文路径这条老经验至今有效:打包工具链、Gradle、NDK 里的某些环节对非 ASCII 路径处理得并不好,表现为打包中途报一个看不出根因的路径错误。项目名和完整路径都用英文、数字、下划线,是最省心的组合。
路径不要太深。工程目录里会自动生成 Library、Temp、Logs 这些子目录,本来路径就长,再套几层文件夹,某些工具在 Windows 上很容易撞到路径长度限制。我一般用D:\Work\项目名这种两级结构,干净且短。
最右边还有一个是否存到云端的勾选。单机学习、本地迭代的项目不用勾,勾了会把工程同步到云端协作空间,多一层网络依赖,断网时打开项目会卡。团队协作另说,但那时候通常也不靠这个入口建工程。
4.3 五个面板的职责:先认门,再谈用
项目创建完成后会打开编辑器主界面,第一次加载比较慢,工程要生成一堆缓存。界面顶部是菜单栏,下面一排小图标是常用操作的快捷入口,鼠标悬停会有提示。真正要认的是五个面板。
层级面板(Hierarchy)列出当前场景里所有游戏物体。新建的 3D 场景默认带一个主摄像机和一盏方向光,这两个就是最小可运行场景的全部。往场景里拖任何东西,这里都会多一行。
属性面板(Inspector)显示当前选中物体的所有组件和参数。选中层级面板里的物体,右边就跟着变;在场景里点中物体也一样。改位置、改旋转、改灯光强度、加脚本,都在这里。
场景视图和游戏视图共用中间那块区域。场景视图是编辑视角,可以自由移动、旋转、缩放物体;游戏视图是运行时主摄像机拍到的画面,编辑状态下也能预览。两个视图顶部各有自己的工具栏,切换 2D/3D 显示模式的按钮在场景视图那边。
资源面板(Project)是磁盘上 Assets 目录的映射,工程里所有素材、脚本、预制体都从这里进。在这个面板里右键能创建绝大多数资源类型,左边是文件夹树、右边是内容区,也可以切成大图标模式看图。
控制台(Console)默认贴在资源面板旁边,显示日志、警告和报错。调试脚本时最常见的用法是打一条输出语句,运行后看控制台有没有打印出来——打出来了说明代码执行到了,没打出来说明根本没进那段逻辑。控制台上方有 Clear on Play 和 Error Pause 两个开关,前者在每次运行前清空日志,后者在有报错时暂停运行,排查问题时都值得打开。
4.4 语言切换和脚本编辑器绑定
中文包勾了不等于界面就是中文,还要手动切一次。Windows 上是“编辑 → 首选项”,macOS 在应用菜单下的“首选项”里,进去找“语言”或 Languages 项,右侧下拉框选简体中文,编辑器会提示重启生效。想切回英文就在同一个地方改回去,不用重装语言包。
脚本编辑器的绑定在同一个首选项窗口里,找“外部工具”。右边有一个下拉框列出当前可用的脚本编辑器,装了 Visual Studio 的话这里会出现对应条目,选中即可。如果列表里根本没有 VS,通常有两个原因:一是 VS 安装时没勾 Unity 相关的工作负载,二是装了但没被识别到,这时候下拉框旁边的浏览按钮可以手动指定可执行文件路径。
机器上装了多个版本的 VS 时,下拉框里会出现多条,务必选对。选错的表现是双击脚本能打开,但代码补全和调试断点全都不工作,因为打开的那个实例没装 Unity 工具链。绑定改完不需要重启,下一次双击脚本就生效。
5. 安装与配置常见问题排查:五个真实翻车点
5.1 现象:Hub 里点安装一直转圈、卡在下载或校验
现象:进度条在百分之几十停住不动,或者下载完成后跳到“校验失败”,然后重新开始下一轮,循环好几遍。
原因:多数是网络中断导致的包不完整,校验环节发现哈希对不上就回滚。另一种情况是目标磁盘空间不足,解压临时文件时写入失败,但 Hub 的提示并不会明确说“空间不够”。还有少数是缓存目录里残留了上一次的半个包。
解决:先确认目标盘剩余空间是编辑器体积的两倍以上;再检查 Hub 的下载缓存目录,把没下完的临时文件清掉重来;如果反复卡在同一个百分比,换个时间段重试通常比连续点十次有效。别在下载过程中手动去动安装目录,那会直接导致校验失败。
5.2 现象:新建项目后编辑器打开空白,或者控制台刷 Library 相关报错
现象:项目创建流程走完了,编辑器启动后场景视图一片灰,控制台里出现一堆和 Library、Package 有关的红色报错。
原因:工程第一次打开要导入资源并生成 Library 缓存,如果这个过程被中断——比如中途强制关掉编辑器、磁盘空间不够、或者安全软件锁住了文件——缓存就会处于残缺状态。
解决:关闭编辑器,把工程根目录下的 Library 文件夹整个删掉,重新用编辑器打开工程,它会自动重建。重建时间取决于工程大小,第一次慢是正常的。同时检查磁盘剩余空间,空间不足时导入会在中途失败,表现和上面完全一样。
5.3 现象:安卓模块装了,打包时还是提示找不到 SDK
现象:Hub 里明明勾了 Android Build Support 和 SDK & NDK Tools,Build Settings 里也能切到 Android,但一点打包就报 SDK 路径未设置或 JDK 找不到。
原因:模块是装了,但编辑器偏好设置里的外部工具路径没有指过去。有些版本在安装时会自动填,有些不会,尤其是补装模块的情况下,路径字段可能是空的。
解决:进首选项的外部工具页,把 SDK、NDK、JDK 三个路径分别指向该版本安装目录下的对应文件夹,勾选使用内嵌工具。路径填完后重启编辑器,再打包。如果三个模块当初只勾了 Build Support 没勾另外两个,那就得回 Hub 补装,只勾一个是不够的。
5.4 现象:双击脚本打开的是记事本,或者打开了 IDE 但不跳转到对应行
现象:在资源面板里双击 C# 脚本,系统用文本编辑器打开了,或者 VS 起来了但停在一个空窗口,没有定位到文件。
原因:外部脚本编辑器没绑定,系统就按文件关联处理,.cs被记事本接走了。另一种是绑定了但 VS 的 Unity 工作负载缺失,IDE 认不出工程结构,所以无法跳转。
解决:先去首选项的外部工具把编辑器选成 Visual Studio;如果列表里没有,用浏览按钮手动指定。绑定完还是跳不过去,就打开 VS 的安装器,确认 Unity 相关工作负载已勾选并安装。还有一种情况是工程根目录里缺少解决方案文件,让编辑器重新生成一次即可。
5.5 现象:许可证反复失效,或者提示没有权限
现象:昨天还能用,今天打开 Hub 就显示许可证过期;重新激活后过一阵又变回未激活状态。
原因:个人版许可证本身有有效期,到期就是要续,这是正常行为。异常反复失效通常和账号状态有关,比如邮箱没验证、登录凭据失效、或者同时登录了多个账号导致本地凭据被覆盖。
解决:先确认账号邮箱已验证,退出 Hub 重新登录一次,再进许可证页面重新添加个人版。如果机器上切换过账号,把旧凭据清掉再登。激活成功后不要立刻清理系统临时文件,凭据落到本地需要一点时间。
6. 给环境做一次体检,再留一手后悔药
装完不等于装对。我习惯在新建项目后跑一次环境体检,把版本号、模块状态、路径这些关键信息一次性打出来存档,出问题时至少有个对照基线。写个编辑器脚本放在工程的 Editor 目录下,菜单栏就会多一个入口:
using UnityEditor; using UnityEngine; using System.Text; public class EnvCheckWindow : EditorWindow { [MenuItem("Tools/环境体检")] public static void Open() => GetWindow<EnvCheckWindow>("环境体检"); void OnGUI() { if (GUILayout.Button("开始检查")) { var sb = new StringBuilder(); // 编辑器版本,和 Hub 里显示的对一下 sb.AppendLine("编辑器版本: " + Application.unityVersion); // 关键:判断 Android 打包模块是否真的可用,而不是只看 Hub 里勾没勾 bool androidOk = BuildPipeline.IsBuildTargetSupported( BuildTargetGroup.Android, BuildTarget.Android); sb.AppendLine("Android 模块: " + (androidOk ? "可用" : "不可用")); sb.AppendLine("编辑器路径: " + EditorApplication.applicationPath); sb.AppendLine("工程路径: " + Application.dataPath); // 外部脚本编辑器的偏好项,键名属于内部实现,不同版本可能变化 // 这里只用来观察“有没有被设置过”,不要拿它做逻辑判断 string extEditor = EditorPrefs.GetString("kScriptsDefaultApp", "未设置"); sb.AppendLine("脚本编辑器偏好项: " + extEditor); Debug.Log(sb.ToString()); } } }Application.unityVersion和 Hub 里的版本号应该完全一致,不一致说明你打开工程用的不是预期版本。BuildPipeline.IsBuildTargetSupported比看 Hub 的勾选状态靠谱,它检查的是当前编辑器实例能不能真的打到这个平台,模块装了但路径没配好时它会返回不可用。两个路径字段用来确认工程没被放到奇怪的目录下。最后那个偏好项读取的是内部键名,跨版本可能变,只当参考,不要写成自动化逻辑依赖它。
脚本放进Assets/Editor目录,编辑器编译完菜单栏就会出现 Tools 菜单。换机器、重装、升级版本之后各跑一次,把输出记下来,后面遇到“打包忽然不行了”这种玄学问题时,至少能快速排除掉环境变量。
从那以后我每次装完 Unity,都会强制走一遍这套顺序:先确认磁盘余量,再激活许可证,然后一次性勾齐模块,建一个空工程跑体检,最后才动业务代码。中间任何一步跳过,后面都要花时间补回来。希望帮到你。
本文还有配套的精品资源,点击获取