unity的安装配置和第一个游戏-unity开学第一课
许多的小伙伴学编程语言其实是因为玩游戏,玩着玩着就想写游戏了,于是开始学习c++学习C#学习java,但相比之下C#的操作会更加容易,所以就开始学习unity来编游戏了。这里就就算是unity开学第一课啦-unity的安装配置和第一个游戏。
文章目录
- 一、unity的安装和配置
- 1、下载与注册
- (1)注册
- (2)下载
- 2、安装
- (1)unity editor安装
- (2)VS的安装
- 二、第一个游戏的建立
- 1、建立工程项目
- 2、界面介绍
- (1)每个游戏都必须有一个场景
- (2)建立一个最简单的游戏角色
- 3、编写游戏脚本让角色动起来
- (1)添加角色控件
- (2)编写脚本代码
- (3)运行效果
原文出处: https://blog.csdn.net/haigear/article/details/129368883
一、unity的安装和配置
unity相比我们前面说过的用easyx开发游戏那就完全不是一个起点高度,easyx属于小cookie,unity那就属于大餐盛宴。所以我们首先要知道如何安装配置它。
1、下载与注册
首先,我们直接来到官网下载页:https://unity.cn/releases,建议通过Hub来下载和安装,省却你后续配置的诸多麻烦,如红箭头所指。
(1)注册
如果你从来没有注册过账号,必须注册一个账号,可以通过邮件注册也可以通过电话,但无论你选择什么注册,最终都是需要你绑定一个电话的,所以呢,我感觉没有什么差别的。
记住,有的时候网络的反应不是很快,验证码不会那么快到达,不要着急反复去获取验证,否则会因为你操作频繁而暂时禁止你注册的。
个人建议最好是通过邮件注册(我是这么操作的,很顺利):
(2)下载
注册完成后(包括邮件验证后)我们就可以下载,你是什么操作系统就选择什么操作系统吧,安装后界面和操作各个操作系统都是没有什么差别的,这点不用担心。这个安装过于容易,每次都是下一步就搞定了,所以不在这里赘述了。
安装好Hub后,运行起来,在里面选择installs页面的右上角的installs Editor
2、安装
(1)unity editor安装
很明显,我们运行Hub之后的左边栏目中第二项就是installs,右上角的install Editor的按钮也是很显眼的
我们直接可以点击官方发布(Official releases)的推荐版本,选择一个安装,要注意的是后面标注了LTS字样的都是稳定版本。也可以到官网上的版本列表中直接选择一个,点击从hub下载,即可开始安装。
安装起来很容易,见到intall按钮就点击即可,基本不用特意去选择和配置,毕竟这是第一课。
(2)VS的安装
到这里有一点需要说明的是,Visual Studio Community 的安装,我相信大多数的同学是先学习了C#然后再学习unity的,所以,一定早就安装了VS,所以,这里就不必再安装了,即使默认给你打勾了,也是可以去掉的(为什么有的安装了还是默认打勾了呢?就是因为你的VS里面没有安装unity的支持包),如果不去掉,unity hub会给你再次安装一个(哪怕是相同的版本也会再给你安装一个)。
其实,我们只要启动Visual Studio Installer,点击对应版本的“修改”安装,进去后将“使用unity的游戏开发”勾选上,完成修改即可。如下图:
如果,你没有在VS中安装好Unity 游戏开发,即使你进入到VS中你的unity项目中的C#脚本也是不能正常编辑的,会提示你“你的项目需要迁移”!
二、第一个游戏的建立
1、建立工程项目
如果你上面的安装都准确无误的完成了,那么我们就可以在桌面上找到Unity Hub的图标,点击运行后,选择Project,然后点击右上角的new project我们就可以建立第一个游戏了。
这里我们假定游戏的名字就是firstGame.
需要注意的是,你最好选择一个非系统盘的位置来存储你的游戏项目,不要都放在C盘,否则系统盘爆满是迟早的事情。
点击Create project后,经过一段较长的时间(主要是准备游戏项目的一些资源包、模板、插件等,不用着急,大约1~3分钟),项目建立完成,并会自动进入unity editor,如下图:
正如我在上图标注的一样,开局一盏灯、一个摄像头,其余的啥都没有,我感觉即不像3D软件(如3dmax或者C4D,maya),又不像非线编的AE或者PR、Eduis,更不像一个代码编辑器。慢慢摸索吧!
2、界面介绍
既然是第一课,那么就要介绍详细一点点,这里对界面的布局进行了标注,但愿我说清楚了。左边栏,开局系统给了一个sampleScene,实际每个游戏都会有很多的场景,但至少必须有一个,所以系统给你安排了一个。
(1)每个游戏都必须有一个场景
sampleScene是默认的场景,每个游戏都必须有一个场景,因为一切对象的建立都必须有一个“舞台”,这个舞台就是场景Scene。只有拥有了场景,我们建立的对象(box ,sphere,cube,character)才能有地方容纳。
我们可以看到,系统给这个默认场景标配了一个主相机(Main Camera)和一个直线灯光(Directional Light)。
(2)建立一个最简单的游戏角色
我们在左边栏的默认场景中右键菜单,建立3D物体,我这里给场景添加了一个Plane和一个Capsule,分别重命名(按F2可以重命名)为Ground和Player1,同时我们打算让角色动起来,所以我在场景中添加了一个Move的C#脚本,如下图:
3、编写游戏脚本让角色动起来
(1)添加角色控件
要使我们的角色动起来,我们就必须给角色添加一个控件,这个控件的名字就叫做CharacterControl,在我们选择了角色Player1(这里的player1就是我们的capsule)的情况下,点击左下角的AddComponent,搜索并选择CharacterControl控件
点击CharacterController就可以给角色加载这个CharacterController控件。
(2)编写脚本代码
脚本的建立也是在Assets中建立的,通过右键菜单,即可完成:
双击建立好的脚本即可进入到VS中编写代码,代码如下:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;public class Move : MonoBehaviour
{// Start is called before the first frame updateprivate CharacterController player1;void Start(){player1=GetComponent<CharacterController>();}// Update is called once per framevoid Update(){float x = Input.GetAxis("Horizontal");float y = Input.GetAxis("Vertical");Vector3 pos = new Vector3(x, y, 0);player1.transform.Translate(pos*1/100);}
}
上述代码,完成的功能主要是让我们的角色前后左右的动起来。完成上述代码后,将代码拖放到CharacterController上,你的代码就生效了。
你可能会遇到这样的错误:MissingComponentExceptlon: There is no ‘CharacterController’ attached to the"Player1" game object, but a script is trying to access it.
如果你遇到这样的错误,那就是你没有加载CharacterController,也就是上面的第二步没有完成,完成它即可。
(3)运行效果
下面我们将程序运行起来,通过键盘的左键和右键来控制角色的垂直方向位置和水平方向的位置,如下图演示:
到目前为止,应该说,我们已经顺利完成了第一课,如果大家感兴趣,我们可以留言,我将继续更新后续的课程。
转载注明出处,码字不易:https://blog.csdn.net/haigear/article/details/129368883
文章目录
- 一、unity的安装和配置
- 1、下载与注册
- (1)注册
- (2)下载
- 2、安装
- (1)unity editor安装
- (2)VS的安装
- 二、第一个游戏的建立
- 1、建立工程项目
- 2、界面介绍
- (1)每个游戏都必须有一个场景
- (2)建立一个最简单的游戏角色
- 3、编写游戏脚本让角色动起来
- (1)添加角色控件
- (2)编写脚本代码
- (3)运行效果
相关文章:

unity的安装配置和第一个游戏-unity开学第一课
许多的小伙伴学编程语言其实是因为玩游戏,玩着玩着就想写游戏了,于是开始学习c学习C#学习java,但相比之下C#的操作会更加容易,所以就开始学习unity来编游戏了。这里就就算是unity开学第一课啦-unity的安装配置和第一个游戏。 文章…...

Elsevier上传LaTeX 修改稿踩坑
背景 千辛万苦修改完论文,结果发现要求上传可编辑文件,tex上传真的太难了,一堆坑,尤其是编译错误,要等系统创建pdf后才能找到。中间还打了北京的客服电话,结果他们那边并不懂相关的东西。说latex是第三方公…...

秒懂算法 | 搜索基础
本篇介绍了BFS和DFS的概念、性质、模板代码。 01、搜索简介 搜索,就是查找解空间,它是“暴力法”算法思想的具体实现。 暴力法(Brute force,又译为蛮力法):把所有可能的情况都罗列出来,然后逐一检查,从中找到答案。这种方法简单、直接,不玩花样,利用了计算机强大的…...

Flutter 自定义今日头条版本的组件,及底部按钮切换静态样式
这里写目录标题1. 左右滑动实现标题切换,点击标题也可实现切换;2. 自定义KeepAliveWrapper 缓存页面;2.2 使用3. 底部导航切换;4. 自定义中间大导航;5.AppBar自定义顶部按钮图标、颜色6. Tabbar TabBarView实现类似头条…...

SpringBoot学习笔记(二)配置文件
1、配置文件SpringBoot使用一个全局的配置文件,配置文件名是固定的;application.propertiesapplication.yml配置文件的作用:修改SpringBoot自动配置的默认值;SpringBoot在底层都给我们自动配置好;YAML:以数…...
09说说乐观锁和悲观锁
乐观锁和悲观锁是在并发编程中经常用到的两种锁机制。悲观锁是指在访问共享资源之前,会先加锁,以防止其他线程修改该资源,从而保证数据的一致性和完整性。在使用悲观锁时,如果一个线程已经占用了该资源,那么其他线程只…...

【C++】vector的模拟实现
文章目录1.查看STL源码2.vector的模拟实现1. 构造函数无参构造构造n个 val迭代器模板2. reserve3. 迭代器4.pop_back 尾删5.resize6.push_back7.insert迭代器失效—— pos为野指针迭代器失效——修改迭代器位置8. erase对于VS和Linux环境测试3.深浅拷贝问题4. 整体代码实现1.查…...

THUPC-2023 游记
清华校赛,战火重燃 原文链接 宣传图 上周四同学在洛谷无意间看到了宣传图,当时很有感触。不知觉间,又是一年春,又是一场触动心弦的 THUPC 了。 周五的团建过于有趣,致使我完全将 THUPC 抛之脑后了。 周日上午被省选…...

Linux - 磁盘I/O性能评估
文章目录概述RAID文件系统与裸设备的对比磁盘I/O性能评判标准常用命令“sar –d”命令组合“iostat –d”命令组合“iostat –x”单独统计某个磁盘的I/O“vmstat –d”命令组合小结概述 RAID 可以根据应用的不同,选择不同的RAID方式 如果一个应用经常有大量的读操…...

计算机网络--网络基础
目录 一.互联网的组成 编辑 1.互联网的边缘部分 1.1客户-服务器方式 1.2对等连接方式 编辑 2.互联网的核心部分 2.1电路交换 2.2分组交换 2.3报文交换 二.计算机网络的类别 1.按网络的作用范围进行分类 2.按网络的使用者进行分类 3.用来把用户接入互联…...
Gin 接口超时控制
文章目录1.Gin 的 Middleware2.gin-contrib/timeout3.小结参考文献API 是现代应用程序中的重要组成部分,可以用于提供数据和功能,供客户端应用程序访问。由于网络不稳定、服务器负载、网络拥堵等因素,API 请求可能会花费较长时间。这可能导致…...

1.C#与.NET简介
目录 一、C#语言及其特点 二、C#与.NET Framework/.NET Core关系 三、C#应用开发 四、案例展示 五、学习环境 一、C#语言及其特点 C#是美国微软公司发布的一种面向对象的,运行于 .NET Framework 和 .NET Core (完全开源,跨平台ÿ…...

OpenAI CTO、吴恩达夫人……AI 领域值得关注的「她」力量,个个都是女强人
内容一览: 「她时代」来临,一些有着强大信念与热情的女性,纷纷投身至 AI 领域,成为不可或缺的存在与力量。值此国际妇女节到来之际,HyperAI超神经盘点了领域内令人印象深刻的杰出的女性代表。 关键词:国际妇…...

[ 网络 ] 应用层协议 —— HTTP协议
目录 1.HTTP协议 1.1URL urlencode和urldecode 2. HTTP协议格式 HTTP请求 HTTP响应 3.告知服务器意图的HTTP方法 GET:获取资源 POST:传输实体主体 GET和POST的区别 使用Cookie的状态管理 4.返回结果的HTTP状态码 状态码告知从服务器端返回的…...
Spring Boot 整合 Redisson 缓存性能客户端(2023-03-06)
Spring Boot 整合 Redisson 缓存 (官网) 介绍: Redisson是一个在Redis的基础上实现的Java驻内存数据网格(In-Memory Data Grid)。它不仅提供了一系列的分布式的Java常用对象,还提供了许多分布式服务。其中包括(BitSet, Set, Multimap, Sorte…...

【C和C++】输出100内能够被13整除的数,取模判断方法
目录 前言基础概念重温整除例子小知识点收尾前言 在软件行业已经有快十年,技术虽然一般般,但是足够应付和解决编程入门的相关问题! 都说十年磨一剑,积累到一定经验,是时候发挥自己的价值,给予入门的同行些许的帮助! 为什么要写收费专栏,其实原因很简单,时间就是金钱(…...

STC8单片机基于开源库读取DS18B20数据例程
STC8单片机基于开源库读取DS18B20数据例程 📍开源库FwLib_STC8 Github地址:https://github.com/IOsetting/FwLib_STC8📌STC官方STC8库函数资源:https://www.stcai.com/khs🎉本次利用FwLib_STC8库读取DS18B20,由于该开源库是基于VSCode编写,默认使用的是SDCC编译器,在…...

计算机专业毕业设计基于Spring Boot 学生在线考试系统
目录 一、学生端 1.1 登录 1.2 注册 1.3 学生首页 1.4 学生查看任务中心的试卷(已答卷/未答卷) 1.5 学生查看固定试卷以及开始做题 1.6 学生查看时段试卷以及开始做题 1.7 学生查看试卷中心 1.8 学生查看考试记录以及查看试卷 1.9 学生查看…...

【读书笔记】《深入浅出数据分析》第八章 启发法
目录一,什么是启发法?1,那什么是启发法?2,心理学上对启发法定义二,活动分析1,如何去分析活动效果呢?1.1 活动前期(活动前1-2周)1.2 活动中期1.3 活动结束一&a…...

英飞凌Tricore实战系列导读
本文框架 1.系列概述1.1 外设理论及应用介绍1.2 基于TC3xx的MCAL各外设配置开发1.3 基于TC3xx的Davinci工程开发1.4 项目中问题排查经验分享1.5 其他相关话题分享2. 目前已发布系列文章汇总1.系列概述 英飞凌TC3xx以其强大的性能,扩展性,存储及安全性能在汽车电子中扮演着越…...

XCTF-web-easyupload
试了试php,php7,pht,phtml等,都没有用 尝试.user.ini 抓包修改将.user.ini修改为jpg图片 在上传一个123.jpg 用蚁剑连接,得到flag...

stm32G473的flash模式是单bank还是双bank?
今天突然有人stm32G473的flash模式是单bank还是双bank?由于时间太久,我真忘记了。搜搜发现,还真有人和我一样。见下面的链接:https://shequ.stmicroelectronics.cn/forum.php?modviewthread&tid644563 根据STM32G4系列参考手…...
React Native 开发环境搭建(全平台详解)
React Native 开发环境搭建(全平台详解) 在开始使用 React Native 开发移动应用之前,正确设置开发环境是至关重要的一步。本文将为你提供一份全面的指南,涵盖 macOS 和 Windows 平台的配置步骤,如何在 Android 和 iOS…...
Java - Mysql数据类型对应
Mysql数据类型java数据类型备注整型INT/INTEGERint / java.lang.Integer–BIGINTlong/java.lang.Long–––浮点型FLOATfloat/java.lang.FloatDOUBLEdouble/java.lang.Double–DECIMAL/NUMERICjava.math.BigDecimal字符串型CHARjava.lang.String固定长度字符串VARCHARjava.lang…...
生成 Git SSH 证书
🔑 1. 生成 SSH 密钥对 在终端(Windows 使用 Git Bash,Mac/Linux 使用 Terminal)执行命令: ssh-keygen -t rsa -b 4096 -C "your_emailexample.com" 参数说明: -t rsa&#x…...
鸿蒙中用HarmonyOS SDK应用服务 HarmonyOS5开发一个生活电费的缴纳和查询小程序
一、项目初始化与配置 1. 创建项目 ohpm init harmony/utility-payment-app 2. 配置权限 // module.json5 {"requestPermissions": [{"name": "ohos.permission.INTERNET"},{"name": "ohos.permission.GET_NETWORK_INFO"…...

BCS 2025|百度副总裁陈洋:智能体在安全领域的应用实践
6月5日,2025全球数字经济大会数字安全主论坛暨北京网络安全大会在国家会议中心隆重开幕。百度副总裁陈洋受邀出席,并作《智能体在安全领域的应用实践》主题演讲,分享了在智能体在安全领域的突破性实践。他指出,百度通过将安全能力…...

学校时钟系统,标准考场时钟系统,AI亮相2025高考,赛思时钟系统为教育公平筑起“精准防线”
2025年#高考 将在近日拉开帷幕,#AI 监考一度冲上热搜。当AI深度融入高考,#时间同步 不再是辅助功能,而是决定AI监考系统成败的“生命线”。 AI亮相2025高考,40种异常行为0.5秒精准识别 2025年高考即将拉开帷幕,江西、…...

技术栈RabbitMq的介绍和使用
目录 1. 什么是消息队列?2. 消息队列的优点3. RabbitMQ 消息队列概述4. RabbitMQ 安装5. Exchange 四种类型5.1 direct 精准匹配5.2 fanout 广播5.3 topic 正则匹配 6. RabbitMQ 队列模式6.1 简单队列模式6.2 工作队列模式6.3 发布/订阅模式6.4 路由模式6.5 主题模式…...

使用LangGraph和LangSmith构建多智能体人工智能系统
现在,通过组合几个较小的子智能体来创建一个强大的人工智能智能体正成为一种趋势。但这也带来了一些挑战,比如减少幻觉、管理对话流程、在测试期间留意智能体的工作方式、允许人工介入以及评估其性能。你需要进行大量的反复试验。 在这篇博客〔原作者&a…...