第一章 安装Unity
使用Unity开发游戏的话,首先要安装Unity Hub和Unity Editor两个软件。大家可以去官方地址下载:https://unity.cn/releases/full/2020 (这里我们选择的是2020版本)

Unity Hub 是安装 Unity Editor、创建项目、管理帐户和许可证的主要工具。所以,我们必须先安装Unity Hub。这里注意的是,要想使用Unity开发游戏的话,必须申请官方账号,然后通过Unity Hub获得许可。账号可以在官方网站申请,这里我们就不演示了。
Unity的产品版本如下:

对于我们个人学习而言,使用Unity 个人版就行了(主要原因是免费)。申请账号完毕后,就可以下载Unity Hub和Unity Editor了。这里我们安装的版本是UnityHubSetup2.5.8.exe,以下是安装Unity Hub的过程截图。我的操作系统是Win10专业版。如果是Win7操作系统的话,建议打完系统补丁,以及安装C++运行库和.net运行库(否则可能出问题)。


这里我们修改了一下安装路径。

点击“完成”运行Unity Hub

首先,我们应该点击右上角进行账号登录。


由于我们是使用邮箱申请的账号,所以登录的时候,要选择邮箱的方式。这个登录的页面应该是Web页面实现的,所以它依托的是本地的IE浏览器。所以,本地IE浏览器版本低的话,可能无法正常显示这个登录页面,或者无法成功登录(解决办法就是升级IE浏览器)。

登录成功之后,我们就可以激活许可了,点击下面的“管理许可证”。

这就是许可页面,点击右上角的“激活新许可证”。

在新的弹框中,我们选择“Unity个人版”,下面的子选项二选一即可,然后点击完成。

激活成功。需要注意的是,这个许可是有期限的,如果长时间不使用的话,需要再次激活。接下来,我们就可以安装Unity Editor了。虽然,我们可以单独下载Unity Editor并安装,但是,最好还是通过Unity Hub来帮助我们安装Unity Editor,这样非常的便捷。
首先,我们需要在“常规”里面设置Unity Editor的安装目录。

在上面的“Unity编辑器安装路径”中选择一个安装路径:E:\Program Files

这样,我们就能把即将安装的Unity Editor安装到这个目录下了。
接下来,我们点击左上角的“返回”,然后在新页面中点击“安装”

我们点击右上角的“安装”按钮

这里我们选择Unity2020这个版本,这个版本还是比较主流的,适合大家学习使用。

接下来,我们可以附加安装一些配套的软件工具,比如Visual Studio Community 2019,但是通常安装过程会比较长而失败,因此我们后面单独安装VS2019。

接下来,我们还需要安装“打包发布平台编译库”,其中包括Windows, WebGL, Android, IOS等等。例如,如果我们需要在Android上发布游戏的话,需要勾选“Android Build Support”。当然,这个需要根据我们的实际情况来选择。


勾选完我们需要安装的软件工具,点击“下一步”按钮。

由于我们勾选了“Android Build Support”,因此这里需要接受安卓相关的条款。如果我们选择了其他软件工具的话,可能也会弹出相应的许可条款,我们一律全部勾选接受即可。

开始下载,由于需要的软件非常大,这个过程会比较长一些。

下载完毕后,就开始安装了,这个过程也比较长。

安装完毕了。接下来,我们到“项目”的页面,去创建一个3D项目。

点击右上角的“新建”,创建我们的项目工程

编辑项目名称,然后选择一个工程存放路径(工作空间),然后点击创建。
下面的“PlasticSCM”是Unity提供的版本控制工具,可以不用勾选。


这就是Unity启动后的界面了。
接下来,我们安装Visual Studio Community 2019。由于这是微软提供的免费版本,因此,大家可以去微软的官方网站或者其他渠道去下载。以下是官方下载页面:
https://visualstudio.microsoft.com/zh-hans/vs/older-downloads/
使用 VS2019也需要申请微软的账号和密码,大家可以自行申请,这里就不再介绍了。

点击“继续”


安装VS Community 2019的时候,勾选“使用Unity的游戏开发”。也就是说右边“安装详细信息”只有两项:VS核心编辑器和使用Unity的游戏开发(取消Unity Hub可选项,因为我们已经安装过了)。

当然,我们还可以修改安装位置。


安装结束后我们关闭以上窗口即可(先不登录打开VS)。
接下来,我们在打开之前创建的Unity工程。

点击上面的“New Unity Project”项目工程就能启动Unity了。
点击菜单栏“Edit”->“Preferences”弹出窗口,点击右侧的“External Tools”菜单

点击“External Script Editor”一栏,选择我们刚刚安装的“VS Community 2019”


这样,Unity与VS Community 2019就关联起来了。
接下来,点击菜单栏“Assets”->“Create”->“C# Scripts”创建一个C#脚本。

然后,我们双击这个C#脚本,就可以使用VS Community 2019打开了。


使用VS Community 2019的话,同样需要账号登陆,我们申请一个后再登录。


接下来,我们在Start方法中添加一句代码,如下所示
Debug.Log("hello");
然后我们在“Hierarchy”层次面板中选择“Main Camera”游戏对象。

然后将脚本拖拽到“Inspector”检视面板上面,实质就是将脚本赋予“Main Camera”上。

点击三角形 “play”运行按钮,就可以运行我们的项目工程了。

运行成功后,就会在“Console”控制台面板看到脚本输出内容。

以上正确运行,说明我们的VS 2019没有任何问题了。在VS中调试很简单,首先选择代码,按F9设置断点,然后到VS工具栏中选择 Attach to Unity and Play按钮,Unity编辑器就会再调试状态下运行游戏。当程序运行至断点的时候就会暂停,此时可以通过VS工具查看运行状况。接下来按F5继续执行后续代码,最后按Shift+F5组合键停止调试。
相关文章:
第一章 安装Unity
使用Unity开发游戏的话,首先要安装Unity Hub和Unity Editor两个软件。大家可以去官方地址下载:https://unity.cn/releases/full/2020 (这里我们选择的是2020版本) Unity Hub 是安装 Unity Editor、创建项目、管理帐户和许可证的主…...
20230425----重返学习-vue项目-vue自定义指令-vue-cli的配置
day-057-fifty-seven-20230425-vue项目-vue自定义指令-vue-cli的配置 vue项目 vuex版 普通版纯axios:切换页面,就会重新发送一次ajax请求普通版升级:vuex版vuex的常用功能 vuex 数据通信vuex 缓存数据 前进后退,切换页面&#…...
el-input 只能输入整数(包括正数、负数、0)或者只能输入整数(包括正数、负数、0)和小数
使用el-input-number标签 也可以使用typenumbe和v-model.number属性,两者结合使用,能满足大多数需求,如果还不满足,可以再结合正则表达式过滤 <el-input v-model.number"value" type"number" /> el-i…...
Docker Compose的常用命令与docker-compose.yml脚本属性配置
Docker Compose的常用命令与配置 常见命令ps:列出所有运行容器logs:查看服务日志输出port:打印绑定的公共端口build:构建或者重新构建服务start:启动指定服务已存在的容器stop:停止已运行的服务的容器&…...
with语句和上下文管理器(py编程)
1. with语句的使用 基础班向文件中写入数据的示例代码: # 1、以写的方式打开文件f open("1.txt", "w")# 2、写入文件内容f.write("hello world")# 3、关闭文件f.close()代码说明: 文件使用完后必须关闭,因为文件对象会占用操作系统…...
《JavaEE初阶》HTTP协议和HTTPS
《JavaEE初阶》HTTP协议和HTTPS 文章目录 《JavaEE初阶》HTTP协议和HTTPSHTTP协议是应用层协议:使用Fiddler抓取HTTP请求和响应:Fiddler的下载和基本使用:Fiddler的中间代理人身份:其他抓包工具: 先简单认识HTTP请求与HTTP响应:HTTP请求:HTTP响应: HTTP请求详解:首行࿱…...
微信小程序 | 基于高德地图+ChatGPT实现旅游规划小程序
🎈🎈效果预览🎈🎈 ❤ 路劲规划 ❤ 功能总览 ❤ ChatGPT交互 一、需求背景 五一假期即即将到来,在大家都阳过之后,截止到目前这应该是最安全的一个假期。所以出去旅游想必是大多数人的选择。 然后&#x…...
Excel技能之实用技巧,高手私藏
今天来讲一下Excel技巧,工作常用,高手私藏。能帮到你是我最大的荣幸。 与其加班熬夜赶进度,不如下班学习提效率。能力有成长,效率提上去,自然不用加班。 消化吸收,工作中立马使用,感觉真不错。…...
黑马程序员Java零基础视频教程笔记-运算符
文章目录 一、算数运算符详解和综合练习二、隐式转换和强制转换三、字符串和字符的加操作四、自增自减运算符五、赋值运算符和关系运算符六、四种逻辑运算符七、短路逻辑运算符八、三元运算符 一、算数运算符详解和综合练习 1. 运算符和表达式 ① 运算符:对字面量…...
Microsoft Data Loss Prevention(DLP)部署方案
目录 一、前言 二、部署流程 步骤一:确定数据需求 步骤二:规划信息保护策略...
win系统使用frp端口映射实现内网穿透,配置“任务计划程序”提高稳定性
Github下载最新版frp: https://github.com/fatedier/frp/releases/download/v0.48.0/frp_0.48.0_windows_amd64.zip 解压把frpc.exe和frpc.ini放到D:\program\frp目录下,修改frpc.ini内容如下: [common] server_addr 服务器域名或IP,假设…...
python工具方法 39 大图裁剪为小图|小图还原成大图(含生成大图伪标签)
在进行遥感影像的处理中,通常都是几万x几万的大型影像,这给数据标注(图像尺寸过大使标注软件不能正常打开或过大给标注带来困难)、训练模型(只能使用小图)、测试图片(在小图上预测需要还原成大图)、生成伪标签(需要大图的伪标签,而不是小图的)都带来了困难。针对此进…...
MUSIC算法仿真
MUSIC算法原理及仿真 DOA波达方向估计MUSIC算法概述MUSIC算法原理MUSIC算法MATLB仿真 DOA波达方向估计 DOA(Direction Of Arrival)波达方向是指通过阵列信号处理来估计来波的方向,这里的信源可能是多个,角度也有多个。DOA技术主要…...
redis 数据类型详解 以及 redis适用场景场合
1. MySqlMemcached架构的问题 实际MySQL是适合进行海量数据存储的,通过Memcached将热点数据加载到cache,加速访问,很多公司都曾经使用过这样的架构,但随着业务数据量的不断增加,和访问量的持续增长,我们遇…...
python基于轻量级YOLOv5的生猪检测+状态识别分析系统
在我之前的一篇文章中有过生猪检测盒状态识别相关的项目实践,如下: 《Python基于yolov4实现生猪检测及状态识》 感兴趣的话可以自行移步阅读,这里主要是基于同样的技术思想,将原始体积较大的yolov4模型做无缝替换,使…...
阅读笔记 First Order Motion Model for Image Animation
文章解决的是图片动画的问题。假设有源图片和驱动视频,并且其中的物体是同一类的,文章的方法让源图片中的物体按照驱动视频中物体的动作而动。 文章的方法只需要一个同类物体的视频集,不需要而外的标注。 方法 该方法基于self-supervised策…...
【计算机图形学】课堂习题汇总
在直线的光栅化算法中,如果不考虑最大位移方向则可能得到怎样的直线? A:斜率为1的线 B:总是垂直的 C:离散的点,无法构成直线 D:总是水平的 在直线的改进的Bresenham算法中,每当误…...
国外导师对博士后申请简历的几点建议
正所谓“工欲善其事,必先利其器”,想要申请国外的博士后职位,就要准备好相应的申请文书材料。如果说Cover Letter是职位的窍门砖,那么申请者的简历就是争取职位的决定性筹码。 相信大家已经看过许多简历的模版了,但是…...
【五一创作】Scratch资料袋
Scratch软件是免费的、免费的、免费的。任何需要花钱才能下载Scratch软件的全是骗子。 1、什么是Scratch Scratch是麻省理工学院的“终身幼儿园团队”开发的一种图形化编程工具。是面向青少年的一款模块化,积木化、可视化的编程语言。 什么是模块化、积木化&…...
数据库基础篇 《17.触发器》
数据库基础篇 《17.触发器》 在实际开发中,我们经常会遇到这样的情况:有 2 个或者多个相互关联的表,如商品信息和库存信息分别存放在 2 个不同的数据表中,我们在添加一条新商品记录的时候,为了保证数据的完整性&#…...
【Axure高保真原型】引导弹窗
今天和大家中分享引导弹窗的原型模板,载入页面后,会显示引导弹窗,适用于引导用户使用页面,点击完成后,会显示下一个引导弹窗,直至最后一个引导弹窗完成后进入首页。具体效果可以点击下方视频观看或打开下方…...
Java 语言特性(面试系列1)
一、面向对象编程 1. 封装(Encapsulation) 定义:将数据(属性)和操作数据的方法绑定在一起,通过访问控制符(private、protected、public)隐藏内部实现细节。示例: public …...
学校时钟系统,标准考场时钟系统,AI亮相2025高考,赛思时钟系统为教育公平筑起“精准防线”
2025年#高考 将在近日拉开帷幕,#AI 监考一度冲上热搜。当AI深度融入高考,#时间同步 不再是辅助功能,而是决定AI监考系统成败的“生命线”。 AI亮相2025高考,40种异常行为0.5秒精准识别 2025年高考即将拉开帷幕,江西、…...
AI病理诊断七剑下天山,医疗未来触手可及
一、病理诊断困局:刀尖上的医学艺术 1.1 金标准背后的隐痛 病理诊断被誉为"诊断的诊断",医生需通过显微镜观察组织切片,在细胞迷宫中捕捉癌变信号。某省病理质控报告显示,基层医院误诊率达12%-15%,专家会诊…...
逻辑回归暴力训练预测金融欺诈
简述 「使用逻辑回归暴力预测金融欺诈,并不断增加特征维度持续测试」的做法,体现了一种逐步建模与迭代验证的实验思路,在金融欺诈检测中非常有价值,本文作为一篇回顾性记录了早年间公司给某行做反欺诈预测用到的技术和思路。百度…...
(一)单例模式
一、前言 单例模式属于六大创建型模式,即在软件设计过程中,主要关注创建对象的结果,并不关心创建对象的过程及细节。创建型设计模式将类对象的实例化过程进行抽象化接口设计,从而隐藏了类对象的实例是如何被创建的,封装了软件系统使用的具体对象类型。 六大创建型模式包括…...
渗透实战PortSwigger靶场:lab13存储型DOM XSS详解
进来是需要留言的,先用做简单的 html 标签测试 发现面的</h1>不见了 数据包中找到了一个loadCommentsWithVulnerableEscapeHtml.js 他是把用户输入的<>进行 html 编码,输入的<>当成字符串处理回显到页面中,看来只是把用户输…...
Vue 3 + WebSocket 实战:公司通知实时推送功能详解
📢 Vue 3 WebSocket 实战:公司通知实时推送功能详解 📌 收藏 点赞 关注,项目中要用到推送功能时就不怕找不到了! 实时通知是企业系统中常见的功能,比如:管理员发布通知后,所有用户…...
路由基础-路由表
本篇将会向读者介绍路由的基本概念。 前言 在一个典型的数据通信网络中,往往存在多个不同的IP网段,数据在不同的IP网段之间交互是需要借助三层设备的,这些设备具备路由能力,能够实现数据的跨网段转发。 路由是数据通信网络中最基…...
起重机起升机构的安全装置有哪些?
起重机起升机构的安全装置是保障吊装作业安全的关键部件,主要用于防止超载、失控、断绳等危险情况。以下是常见的安全装置及其功能和原理: 一、超载保护装置(核心安全装置) 1. 起重量限制器 功能:实时监测起升载荷&a…...
