unity入门

前言:这可不是标题党,虽然都是基础的操作,不过含括了基本的流程,比起脑海中的五花八门的画面,入门还是这个现实一点。

这里插两句,unity国外官网下载会推荐你看一个简短的视频,国内官网下载没有不过可以另外找到,推荐看一下,相当的好,当初的我刚看完就激动的不行,准备做个惊世之作时,被自己的基础不足问题泼冷水。

任务:使用unity完成一个Hello  World程序,创建一个标准的Windows可执行程序。

1.外部工具设置

下载VS(我用的vs2017,用自带的也行,为了方便之后学习建议VS,挺好用的),下载VS(Visual Studio)中的unity组件,安装完成后,在unity编辑器的菜单栏中选择【Edit】-【首选项】打开设置窗口-【外部工具】

将外部脚本编辑器设置为VS(软件安装下载就不截图了,如果有什么问题的可以留言或者联系我,定尽力帮忙)

2.编写脚本

启动unity,创建一个新工程,在Project窗口选择Assets,右击并选择【创建】-【C#脚本】创建一个新的C#脚本,将脚本命名为HelloWorld.cs

双击打开HelloWorld,添加代码

using System.Collections;
using System.Collections.Generic;
using UnityEngine; public class HelloWorld : MonoBehaviour
{
// Start is called before the first frame update
//在这里初始化
void Start()
{ } // Update is called once per frame
//在这里更新逻辑(每帧)
void Update()
{ } private void OnGUI()
{
//改变字符大小
GUI.skin.label.fontSize = 100;
//输出文字、如果文字是中文,脚本文字编码必须保存为UTF-8
GUI.Label(new Rect(10, 10, Screen.width, Screen.height),"Hello World");
} }

这里一定要注意脚本的类名与文件名一致,就是public class后面那一串,我第一次创建名称为Hello World,就是两单词间有个空格,但是进入之后默认代码是没有空格的就导致了错误,一定要注意类名与脚本名。

HelloWorld.cs是一个unity的脚本文件,HelloWorld是类的名称,它继承自Unity的基类MonoBehaviour。注意,Unity没有Main函数程序入口,Unity脚本必须作为组件依附于Game Object(游戏体)运行,因此不能使用new创建Unity脚本实例,构造函数的功能也受到限制。

3.Main Camera

回到编辑器,在层级窗口中选择【Main Camera】,选中摄像机,在菜单栏中选择【Component】-【Scripts】-【HelloWorld】,将脚本指定给摄像机,也可以直接拖动脚本到main camera上

4.运行游戏

程序是搞定了,不过东西还没个谱呢,接着往下。

5.编译输出

【文件】-【save】-【文件】-【另存为】,保存前记得先退出播放模式,就是把那个播放键再点一下就行,将当前关卡保存在Assets目录,这是一个后缀名为.unity的场景文件。下面也是显示两个文件,一个脚本文件,一个关卡文件。

在确保关卡打开状态下,【文件】-【Build Settings】,打开窗口,点击【添加已打开场景】,也可将关卡文件直接拖入,在【玩家设置】中把产品名称改为Hello World。

然后就是大家熟悉的build and run ,建议单独开个文件夹存放,至此,一个理论上的游戏就完成了,打开画面就不截图留给各位刚入门的同学自己去欣赏了。虽然简陋不过基本流程齐全,最开始的我打开自己写的Hello World程序,就被开头那个固定的Made With Unity画面惊艳到了,虽然内容贫乏还没有退出功能,不过第一个程序的诞生也点燃了游戏制作的心,希望之后有一天也能制作出许多人认可的好游戏。

下一篇文章就会讲解unity编辑器中的一些基础知识,类似于脚本基础,内置函数含义,程序调试等。

2020-12-09

unity入门—五分钟制作一个理论上的游戏的更多相关文章

  1. 制作一个塔防游戏 Cocos2d-x 2.1.4 (一)

    在这篇文章,将会学习到怎样制作一个塔防游戏.在这其中,学习怎样在设定的时间内出现一波波的敌人,使这些敌人沿着指定的路点前进.怎样在地图上指定的位置创建炮塔.怎样使炮塔射击敌人,怎样可视化调试路点和炮塔 ...

  2. 【URLOS应用开发基础】10分钟制作一个nginx静态网站环境应用

    URLOS开发者功能已上线有一段时间了,目前通过部分开发者的使用体验来看,不得不说URLOS在服务器软件开发效率方面确实有着得天独厚的优势,凭借docker容器技术与其良好的应用生态环境,URLOS必 ...

  3. python scrapy 入门,10分钟完成一个爬虫

    在TensorFlow热起来之前,很多人学习python的原因是因为想写爬虫.的确,有着丰富第三方库的python很适合干这种工作. Scrapy是一个易学易用的爬虫框架,尽管因为互联网多变的复杂性仍 ...

  4. 五分钟搭建一个基于BERT的NER模型

    BERT 简介 BERT是2018年google 提出来的预训练的语言模型,并且它打破很多NLP领域的任务记录,其提出在nlp的领域具有重要意义.预训练的(pre-train)的语言模型通过无监督的学 ...

  5. 怎样用HTML5 Canvas制作一个简单的游戏

    原文连接: How To Make A Simple HTML5 Canvas Game 自从我制作了一些HTML5游戏(例如Crypt Run)后,我收到了很多建议,要求我写一篇关于怎样利用HTML ...

  6. [译]怎样用HTML5 Canvas制作一个简单的游戏

    这是我翻译自LostDecadeGames主页的一篇文章,原文地址:How To Make A Simple HTML5 Canvas Game. 下面是正文: 自从我制作了一些HTML5游戏(例如C ...

  7. 制作一个 JavaScript 小游戏

    简评: 作者学习了编程两个月,边学边做了一个 JavaScript 小游戏,在文中总结了自己在这个过程中的一些体会,希望能给其他初学者一些帮助. 对于很多想学编程但一直没下定决心的同学来说,最大的问题 ...

  8. 使用pygame制作一个简单的游戏

    翻译自Will McGugan的<Beginning Game Development with Python and Pygame –From Novice to Professional&g ...

  9. 用cocos2d 2.1制作一个过河小游戏(4): 游戏主逻辑BaseLayer设计

    前段时间一直在忙.没有时间更新博客.今天还是抽点时间把最后一小部分游戏的实现放上来吧. BaseLayer.h: #import <GameKit/GameKit.h> #import & ...

随机推荐

  1. PHP-Parse 简介以及在 Hyperf 中的应用

    介绍 PHP-Parse 是分析 PHP 代码生成 AST 的库,分析出可读性很高的对象数据结构,方便后续的更新和遍历. PHP-Parse 的主要作用是修改原有代码(比如插入自定义的代码片段),生成 ...

  2. martini-能量最小化参数(mdp文件)

    1 ; 2 ; STANDARD MD INPUT OPTIONS FOR MARTINI 2.x 3 ; Updated 02 feb 2013 by DdJ 4 ; 5 ; for use wit ...

  3. python之ftp与paramiko与hasattr与getattr

    为了方便树莓派和电脑上相互传输数据文件的传输.也就是上传和下载文件,我自己就写了一个ftp 主要是运用到hasattr与getattr 先看一下服务器上的程序吧 # _*_coding:utf-8_* ...

  4. rbd的增量备份和恢复

    前言 快照的功能一般是基于时间点做一个标记,然后在某些需要的时候,将状态恢复到标记的那个点,这个有一个前提是底层的东西没用破坏,举个简单的例子,Vmware 里面对虚拟机做了一个快照,然后做了一些系统 ...

  5. ERP出入库进阶操作与子流程--开源软件诞生28

    赤龙ERP出入库进阶讲解--第28篇 用日志记录"开源软件"的诞生 [进入地址 点亮星星]----祈盼着一个鼓励 博主开源地址: 码云:https://gitee.com/redr ...

  6. [原题复现][极客大挑战 2019]BuyFlag

    简介  原题复现:[极客大挑战 2019]BuyFlag  考察知识点:php函数特性(is_numeric().strcmp函数())  线上平台:https://buuoj.cn(北京联合大学公开 ...

  7. jsonp和普通的ajax区别

    1.请求类型.返回类型不一样 2.返回数据类型

  8. java开发两年!这些异常处理的方式你得知道,不然你凭什么涨薪!

    前言 异常是在程序中导致程序中断运行的一种指令流,当异常发生时,程序将直接中断,不再执行后续的任何操作! 示例:两数相除,若不处理任何异常,则只有在正确输入两个数字时,才能显示出运算结果. publi ...

  9. 实在是秒啊,我还从来没见过把Spring之AOP讲的这么通俗易懂的,安排!

    Spring之AOP 什么是AOP? AOP 为 Aspect Oriented Programming 的缩写,意思为面向切面编程,是通过预编译方式和运行期动态代理实现程序功能的统一维护的一种技术. ...

  10. MathType总结编辑括号的类型(上)

    括号的种类有很多,我们用得也很多,可以说无处不见,不只是在数学物理这些自然科学的公式中来断地出现括号,即使是在人文艺术类的领域也会有括号的出现.下面就和小编一起来看看公式编辑器编辑括号的类型吧! Ma ...