为了做这一个游戏呢,所以说这次节目我们就需要搭建一个 vocalsken 的一个服务器, 然后由于我们使用的是 unity, 但是这次节目的一个福气呢,又用到了一个构圆,所以说在这个分类的时候,我是不知道怎么进行这个分类的。 嗯,我们就先测试一下这个个手感服务是如何搭建的吧。 好,现在我们来到这个代码中,运行一下这个代码,然后我们看到这个都是肯德芙呢,哎,这怎么是灯 吧, 搞错了 搞错了,搞错了, 是这个吧, 这个才是我们把这个代码更新一下,搞错了, 这些代码呢,在网络上 很多都是收费的, 怎么 怎么转圈圈啊,哎,没有权限,不会吧, 我现在我们把这个代码编辑一下,哦,没想到居然是错的代码 啊,现在玩这个项目呢,又备份到这个马云的平台上, 居然是错的代码。 这个代码呢,我们就简单讲解一下,因为这个是使用购源来开发的项目,所以说购源呢,要打包,便宜的话,最好是 你要能留够连上这个 github 的这个服务器,才能进行安装这些库跟包。所以说为什么学习这个购物园会有 有一些门槛呢?就是对一些刚入门的一些程序员,呃,根本无法妨碍这个 get 号的一些程序员是有一些嗯,门槛的。所以说 购源开发虽然也是跟这个拍摄有点类似,就是导入一些包就可以用他的一些功能了,说白了也是一个吊库啊,但是呢,他的优点呢,就是快,也是挺快的开发速度, 我们就是使用了差不多就一百来行的一个代码呢,就开发一个 wifi skin 的器,我们更新一下, 粘个编辑, ok, 看一下能不能运行这个 vs 卡的服务器。 说不能运行,说明是我们的架构的问题吧, 这是 ai 架构,这是六十四位的架构,我们再来运行一遍,好呀, 走,又出现了这个爆错,没办法,只能编译一下,我们编译成 w s, 然后 这个平台呢,改为这个 windows, 这可能 a n d 等你一下, 本来想直接调试的,但是看样子只能重新编译了, okay, 现在我们需要打开这个文件夹进去这个项目,点开,呦, 可能要公开他的文件名后。错, 好,现在呢,就是一个 revers, 可能服务器呢,仅用一百行代码呢,就写出来了。好,现在已经,哎,这个,这个就是,啧,应该是吧,改一下,这个,改成百零八三日比较好,一点点,老是爆这个。 好,现在我们把这个俄罗斯可能服务器连接一下,一二,七点,零点,零点一 上线的时候,我们不能写这个,回完地址,然后我们断开链接,重新连接, 哦,还还没有写完了, bubble skin, 但是 连接啊,连接已经建立,正在等待数据。然后我们来看一下这个,我们发送一些数据给他,进行一个测试,发送一个,你好, 发送,然后你发送了,你好,看,服务器收到了没有?好,服务器呢?就收到了一个你好的消息,这时我们就从客户端这个测试 端,客户端发送给服务端,让服务端再再进行中转。我们如何测试他的中转呢?就我们再开一个,再开一个测试, 然后再把这个复制一遍,如果你有多个 ip 地址填举网组成的就可以有多个客户端了。现在我们就有建立了两个客户端,然后我们需要在这个客户端偶尔进行发送一个。你好, 我是 unity。 好,发送客户端收到,服务端收到了。你好,我是 unity。 然后另一个端呢,他也 也收到了,说明是一个同步双向可以一个接收信息的一个服务端。然后我们总的代码呢,就是使用 order, socon 来进行开发的。然后这些代码呢?并 呃,很简单,但是没什么可讲了,因为这些都是通过 ai 来生成的,所以说没必要了,这个代码原代码也不重要了。
粉丝588获赞4209

哈喽,大家好,今天给大家介绍优益体这个软件,优益体的话大家都知道它其实是作为一个游戏开发软件在被使用的,但是其实优益体的话近几年也在逐渐的用于工业上面的数据孪生,那么 接下来我就带大家来看看如何去新建一个数据孪生项目,用于工业上面来去制作数据化的场景。 那么首先呢 unity 的 话,它其实不只是 unity 一个软件,它其实主要的一个引入的一个软件叫 unity hub, 在 unity hub 里面我们要去去下载它对应的这些这个 unity 这个编辑引擎,这个编辑器版本, 那么比如我这里下载的是一个二二版的一个编辑器,那么接下来我就要去根据模板去新建一个空白项目。那么一般来说,我如果说简单做一个呃基于 unity 的 一个数字燃烧工业数字燃烧的一个项目的话,那我就选择一个 universe 三 d, 然后我直接选择创业项目,这个时候我就可以开始启动我整个项目的一个呃呃新建的一个过程了, 那么这个时候他正在新建项目,接下来他会打开他的编辑器,然后这个时候我允许了冒风险去打开这个软件进行编辑,那么这个时候我又调出了 unity 的 一个主要的编辑器的一个软件界面, 他这里会加载他 unity 里面所用到的各种呃开发包,包括语言包啊,场景包啊,包括呃字体包啊,各种场景类的一些资源 等。它加载完毕之后,这个时候就打开了我们的工作项目。 no, 这个 u e t 的 话,目前呢是一个纯英文版本, u e t 的 话,它是支持汉化的,你可以去找对应的汉化汉化包,然后去把它的软件界面汉化成中文。 但是呃,在这里的话,其实我觉得用英文原声的英文其实用的是比较习惯的,其实看英文其实是比较容易上手的。然后稍等一会,他这个加载的时候是比较慢的,尤其是首次加载的时候, 然后这里我们简单快进一下, ok, 那 么接下来我们现在就打开了 unity 的 软件界面,这个是它的编辑器界面,我们简单的来看一下这个界面,这个界面的话 左上角这边是菜单栏,包括文件呀、编辑呀、资产呀,然后这些主键呀、服务啊,窗口帮助之类的一些简单的一些菜单。然后右边的话其实是一个,我们先看左边,左边的话是我们去编辑场景主要的一个目录数,大家可以理解为是一个目录数, 我们比如说,呃,我们这个是新建的一个场景,那么在这个场景底下我们添加了主相机,对吧?添加了光源,然后添加了一个呃,这样一个坐标系,然后同时我们还有这个地面,那么 我们点击这个之后会会发现右边它出现了一个属性栏,那么其实右边这个 impact, 它其实就是我们对应的这些我们创建的所有这些场景中的物体,它对应的属性我们可以在这里去编辑,比如说物体的位置呀,然后光源的大小啊,然后相机的角度啊,这些都可以在这边属性栏里面去编辑。 那么中间这个那大家显而易见,它其实就是我们的一个主要的一个编辑窗口,比如我们可以在这里去拖动我们的相机视角,然后在这个窗口当中我们可以去按住鼠标中间可以去移动这个啊,平移这个试图,然后我们摁动,我们滑动滚轮可以去缩放这个视图大小,然后我们 按住鼠标右键可以去旋转我们的视角,那么大家会仔细看的话,会发现左上角这里有一个 scene 啊 scenes, 还有一个 game game, 其实,那么其实这两个我们待会就可以看到区别在哪。然后我们先看左下角下方的话,我们可以看到它其实是个 project, 这个是什么呢?这个其实就是我们整个这个,呃用一体这个项目所用到的所有资产,这个资产是包括什么意思呢?资产 意思就是我这个 u 一 体这个数字燃烧这个场景项目里面,它包含了这样一个信,这样一个场景,那么它还包括我这个对这个场景做的一些设置,然后还包括我底下我这里面所用到的脚本, 我用到脚本就这个是脚本的意思,包括我用到图标,包括那么这个 size 里面,它其实就是我这个整个这个数字燃烧项目里面所要用到的资产。比如说 我想要在这个这个场景里面去导入一个模型,那么我就会把模型先放到这个本地的这个,呃,在这个资产包里面,我就把模型先导入到这个资产包里面,拖入到我们的目录里面去, 再把这个,呃,然后这个时候模型就会出现在我们的场景当中了,我们就可以去编辑,然后再通过属性去编辑这个物体的位置啥的,然后那么其实还有就比如说,比如说我要在这个场景当中去设置我的 ui, 对吧?像你打游戏的话,我们会有那种,呃游戏的那个准心啊,然后包括这个呃方位角啊,比如包括数值啊、比较速度啊,然后子弹啊、弹量啊啥的。你这些 u i 这些字体,你可能需要用到微软雅黑啊,或者说一些特殊的一些字体,那么字体的话也是通过我把我们从网上下载的那个字体的呃格那个对应格式的文件直接放到这个 set, set, set 这个, 呃这个资产包这个文件夹下面去,然后再把这个字体去导入到我们这个呃这个场景当中去,然后就可以实现一个更新。你不只是我们刚刚讲到,对吧?我们的三 d 模型,然后我们的字体,然后其实还有包括像我们的纹理,然后包括还有像, 呃还有的话就是我们的脚本,因为比如说对于 u 一 体里面,我们比如说我在 u 一 体里面 导入的一个工业机械臂,那么这个机械臂如何在这个场景当中实现一个呃实现一个运动呢?那么我我就要去对它,对这个机械臂做一个呃,通过脚本去对它做一些算法上面的一些呃脚本开发,比如说我们做运动学正解,做运动学逆解,那么 那这个时候我们就需要通过它 u 体里面自带的这个脚本去实现了它在 u 体里面我们可以直接在右键, 你会发现我们在这个目录数字里面,右键会发现它有很多个选项,比如说我们创建一个 empty, 我 们创建一个空白的一个一个物体,对吧?我们创建一个空白的物体,那么你看这个物体就会出现在这个这个场景当中,只不过这个物体它是没有形状的, 因为我们这个物体我们没有指定它是任何形状,对吧?我们只指定的它有这样一个物体,它的坐标,你看会翻看到它有一个坐标以及它的旋转轴。 另外比如说我们在这里去新建其他一些项目,你看他可以新建一些光源,你看这是光源,对吧?然后声音啥的,以后 ui 就是 新建 ui, 比如说我们可以简单的去新建一个文本, 对吧?那这个时候你看这个时候我们就可以,呃,然后他这里是要导入他对应的那个文本的那个那个包,然后这里我们先不导入了,然后我们先看,然后我们先再看看别的, 然后我们看,然后我们在右键,我们看看这里,然后在这里你看还有相机啥的,然后然后这里,然后这里的话,然后这里的话我们看到这里的主键,这里来在主键,在这里,然后在脚本, 因为这是一个空白项目,可能现在还加不了脚本,我在这里在这里有脚本 y 脚本, 然后然后我们先来看这样一个东西,那我这里点运行之后,然后这个时候它就在编辑它这个 u v t 的 这个功能项目, 编辑完了之后,你会发现这个时候主要的这个场景编辑器,它,它直接自己跳到这个 get 的 一个界面,那其实也就是什么呢?就是说我们是在 sim 里面,在这个 sims 里面去编辑我们的场景,编辑完了之后我们点运行,这个时候我们就进入了游戏模式, 他是这样一个意思,然后在这里游戏模式里面我们可以去设置他的这个分辨率啊,然后包括显示器啊,然后包括那个显示哪些东西和不显示哪些东西。 然后这个其实就是对 u 一 体这个界面的一个简单的一个介绍。呃,然后,呃具体更深入的后面可能会再结合具体的工程项目去讲。

好,现在呢我们就开始教授这个 unity 啊,我们双击一下这个 unity, 打开一下这一个, 这这电脑又卡又热,到夏天这个电脑就热的不行了,而且要让他游戏有点吃不消这个游戏这个电脑。 然后这个我们就直接打开我们的一个项目,讲解一下这个项目的结构吧。 这个项目呢是放在底盘,项目的组成呢就是一个文件夹,文件夹 里面就有我们的一个项目,刚刚我们看到的是 tds, 这个就是我们那个项目,他点进去呢就有这一个 ass, 就是资产,资产里面总共有四点四 g 的一个资产, 然后其他的这些依赖这些就不用看了, 这有些包这些也不重要,然后我们看到的这个就是 它的一些项目,就是打开 vs studio 这一个项目的一些文件, 重要的还是这一个,这个就是 vs studio 的项目文件, 然后我们打开一下,点击一下这一个,就可以打开这个项目了。然后我们这个电脑呢配置比较低廉,只有八 g 的一个内存。测试带的 讲这一个 unity 教程,其实不是特别愿意讲这个教程啊, 因为讲这一个 unity 的教程的话,其实上还是比较少的,很多人都是通过自学来学习这个 unity, 都有,都 能够有一点点成就,对于别人教而言的话,可能也是教的不够彻底。我们先暂停一下,由于这个电脑比较配置比较低,看一下已经打开了这一个项目了, 然后这个项目的资源实在是太多了,如果就算是 直接访问我这个资源呢,就是直接讲的话,可能我都讲不清楚了,现在 所以说我们就先从这个基本的如何获取资源里面入手,获取资源的话我们就点击这个商店, 商店就可以打开这个浏览器了,浏览器里面就可以搜索一些资源,免费的资源进行学习。这也是 unity 比虚幻引擎 比较好的一个地方,就是他可以免费的获取一些游戏的一些资产, 优质的三 d、 二 d 油是制作平台啊,我们知道怎么下载就可以了,因为这个也需要一些账号,是知道怎么去登录下载一些资源。然后下载之后呢我们就可以来到这一个 管理包里面进行管理我们的一些资产,然后这 可能网络不是很流畅,也可能是我的可以刷出来了,然后这里呢就是我们用到一些资产,可以看到有一个加号的,说明我们的资产已经导入了,就是这些都是免费的资产,这个项目呢就是有这些免费的资产一点点的组合而成。 嗯,这个这个是端游戏的一个联网的工具,但是我现在还没有实现,这也是我的一个瓶颈,所以说并不是每个人都能够设置这个 unity 的一个游戏的 啊。讲解完这些呢,已经也讲了四分多钟了,所以说这个 unity 真的不是一般人能够学的会的,需要 花费很多的时间去研究这里面的一些游戏对象。现在我们来看一下,然后这些就是一个方块来的,我们点进去看就可以看到他的方块,然后点进这个就是一个方块的一个对象, 然后一点这个按钮呢,就可以拖动他的一个距离。 呃,这些就是可以通过我们右键进行一个新建一个方块,这些是在之前我们的视频就讲过了,就不做过多的讲解,然后知道了这些树木,树木树木 的话,我们我也是从网上看别人怎样做这个数目的,所以说这些场景呢,在某站上也是非常多这个教程的,我们都不不做过多的讲解。 然后我们来再看一下主要主要的功能还是做这个抖音互动弹幕嘛,所以说我们也新建了一个对象,这个是该 over, 就是又就是可以在这个里又建一个新对象,我们看一下 这里新建一个对象,三 d 对象,好像反正只要是对象就可以了,我们随便随便新建一个,这也是一个游戏 对象,是吧?我们可以把它删掉,因为我们不需要这个是我们生成的一个对象,然后这个对象呢就是很关键这个对象就可以附着一些写,就这个时候我们就可以写代码了,我们可以写脚本, 点击一下这个脚本,这个脚本呢就是由一些些我们写好的一些脚本在这里, 然后这里就可以新建一个新脚本,然后他的脚本名字呢也是可以随意随意定的,我们随便写一个脚本注意演示就可以了。然后我们点击一个新建和添加, 然后他就会有一个让我们等待正在加入这个资产当中,然后给他就新建一个点 cs 的文件 c s。 什么是 c s 呢? c s 就是一个西沙的, 所以说这个音乐可以就是以这个 shop 来作为这一个交背语言,来通过 附着在这个游戏对象上来进行一些代码的逻辑操作, 因为这个电脑配置确实不是特别高啊,用了 来讲解这一个游戏引擎还是非常吃力的。所以说大家在真要学习这个 unit 的时候,要购买一台拥有这个独立显卡还有 cpu 相对来说比较好的一个 电脑,才有助于学习这一个 unity 的游戏引擎啊。好,现在已经创建好了这一个脚本,我们就可以打开这个脚本了, 这个摄像头又又掉了,摄像头老是掉,稍微一动他就掉了,是不是很方便?这个摄像头 好,现在已现在还没有打开啊,还是默认打开了别的就是电脑,电脑不是特别好开,一些无关紧要的代码 还在这个转圈圈中 啊,这个 就是我们的码,我点击一下,然后我们简单的讲解一下这个代码吧, 这个就是引入系统的一些包,就是一个 shop 的一些包。 然后 unity 引擎呢是很重要,这个就是导入 unity 的引擎的一个包,这是自动生成的。但是这个这些我们都必须要了解,因为后期我们讲到这个弹幕,弹幕的时候就要用到了, 然后这个就是一个类,这个时候我们就要用到这个面相对象的一个编程了,因为之前用 python, python 可以不用面相对象,但是 我们送到这个 seashock 里面呢,就需要进行一个面向对象的编程了。然后我们可以看到 他继承的是一个 mobile, 什么鬼?就是继承了这个这里面这个 这个库里面的一个类,相当于被他继承,也就是说我们在这里写功能呢,就会被这个就是继承到了, 就是继承到这一个里面去,反正是互相调动嘛,这个关系还是挺好了解的。 然后接下来呢,我们要是我们要连接这 呃 wiper skin, 呃 wiper skin 的服务,这个又又要进行来讲解一章,所以说, 所以说对于这个 unity 调解不深的话,说真的我还是挺难教的,但是呢,我们 更好的了解,我们来看一下这个俄罗斯坑吧,俄罗斯坑也要交,也是挺麻烦的,要讲一下俄罗斯坑, 我们来点点进去看一下这个, 这个是我们的项目啊,看到有一个 proposal can c 色 点滴滴 divr 这个文件呢,也需要啊,如果大家需要这个文件的话,也可以艾特我,可以发送给你。然后还有这一个 zs unity 这个插件也需要放到这一个文件目录里面,放到之后呢,我们如何调用这个 drl 呢? 就用这个 dior, 相当于我们就拥有了这个 wifi, 是肯连接服务的一个能力,所以说知道这些就可以了,然后像一些底层原理还有搭建服务器,我们就不受过多的讲解,因为讲解起来一般人也听不懂。 好,我们来看一下我们如何导入这个 d l l 的一个文件, 这里我们已经写好了,所以说我们就就直接看了,看到这个 us level stop 就可以 导入了这一个功能了,是吧?然后我们点开这里,点击复制一下, 还有这个就是 level circle 的一个服务呢,就可以导入进来了,前提是我们这一个里面一定要有这一个文件呢,不然呢导入是不生效的。 然后导入之后呢,我们如何使用的功能呢?这个也是我们之前写,然后使用就肯定要用 jason 啊, jason, 我们都知道这个抖音, 抖音的弹幕是发送 jason 的数据的,他发送的是一个 jason, jason 是什么呢?我们来搜一下这个 jason, 如果对这个 jason 不了解的话,学习我们这个课程是非常吃力的, 因为之前我们做这个人工智能搜索,可能还会相对来说简,很简单很多,但是我们出到这一个 cislock 里面, 他不就是不不简,简单单是前端跟后端的一个问题了,这个是涉及到一些交互,就是 jason 的一些交互啊,还有各种各样的能力啊,还有这这个 jason 呢,就是我们刚刚讲到 我们要对应这个 jason 库的时候,这里这里就要有这个 jason 的一个文件夹,里面有一些我们的插件,这个插件呢就是 jason 的,我们来看一下,对照一下这里面的 jason, 就是插件一些功能都在里面了,这次呢就是一个转换了, 这是一个转换逻辑,我们需要连接这么授肯的服务,就是要转换他的一些数据,还作为我们接收这个弹幕的能力啊。 我们知道了如何导入,这两个也要导入啊,这两个功能也要导入, 好,这样呢,我们就打入了三个,跟这个代码还没有写功能,打入了之后我们要连接这一个 auto circle, 嗯, 当然了,我们在开发过程中还要用到这个弹幕的 party, 这个不好教教,这个不敢讲,还有这个弹幕, 这个我们就推荐一下就可以了,就是在这个 get ctrl 里面搜索这个抖音项目的 ctrl, 然后找到它的一个工具,我们就可 可以拥有这个弹幕爬取的一个能力,我们就教一下,简单教一下这个,这个因为这个不太好讲,我们只要讲到知道怎么获取这个弹幕就可以了,也可以购买, 就是网络上还是很多人开发了这一个弹幕好取的一个软件可能要五百块钱到一千块这种啊,如果认真听我的课程的话,后面我也肯定会 把这个弹幕爬取的一个改版发出来给大家学习,我就用的就是一个高原的 个人开发的这个弹幕爬起的一个工具,讲解这个,这个可能后面真正要实践的时候, 我们在讲解这个购物园的弹幕牌取一些能力,毕竟学习这个 unity 呢,反正一两节课肯定是讲不完这些知识点的,我们要知道这一点呢。 好,我们知道怎么导入这些包,写代码的这些就就很简单了,我们写代码用这个 check gdp 或者其他工具, 让他我们写入连接 wiptopscon 的一个代码,使用这个 csl 来写,想想还是挺简单的,我们来访问一下, 不知道有没有还能防闷吗?还是可以防闷的,现在,现在是这个 g b t 啊。好,现在我们需要 把这个代码复制给他,让他帮你写就可以了。 嗯,帮我改成, 可以让他们帮我们携带吗? 代码呢?已经在书写当中了,所以说对于这个应用这个人工智能呢,还是挺方便的,现在是吧?好,我们现在我们直接把这个句代码复制进来, 然后有可能会出问题啊,所以说有时候我们也不建议直接覆盖,但是我们做胶层的话,只是 别覆盖。这个。好,现在我们就可以保存一下,然后这个俄罗斯肯的服务呢?就这个就就讲到了这个存单的知识了,然后这里破了一录了,别人就气我了,所以说我们就先 暂停讲解一下这个 vipscon, 下节课我们讲解一下这个 wippscicc 怎么连接吧。好,这节课我们先录到这里,这个代码呢都是 ai 生成的,所以说我们就不用担心这个代码逻辑是怎样,如果只要我们认真听一下 我们配置这些库的安装就可以了,因为这个 ai 不可能帮我们安装这些库吧?所以说这个这认真听听这这部分就可以了,后面我们就是 ai 写代码就可以了。

感谢圆圆三位 送出的礼物,感谢强颜欢笑送出的礼物,感谢强颜欢笑 送出的小心心,感谢用户四八三九五六七三六八五四零送出的小心心。

全网最全的最简单的教你怎么在做游戏的时候找资产啊,当然这个是对于一些大厂里面这些都不适用,对于自己做作品集或者做项目,或者做自己的客设壁设,这个你可以稍微学一下, 这节课的话大概是告诉你怎么去找三 d 部分的资产,二 d 部分的话我还在调研,然后我有整套比较好的,我也会 分享给你们。 unity, unity 资产商城上面的东西是需要花钱的,这是第一点。第二点 unity 已经退出中国了,所以你如果是一个国内的账号,你是买不了它的东西的,有一个很好办法,是什么呢?这里它有它的名字,你把这个名字直接复制粘贴到我们的, ok, 淘宝上面去 直接去搜索,那有大概率是能搜索到,然后淘宝上面一般是几分钱或者是一两块钱就可以买到,你可以多看几下,当然你可以支持正版,我这里没有说大家都去买盗版的意思。第二个呢是这个 sketchfile, 搜索你想要的名字,然后点进去就可以去进行下载,但这个得看,有一些它是可以下载,有些是不可以下载的。这个网站它很好的一个点,下载之前你可以去预览它这个东西长什么样子。 这个网站它是有插件的,如果这个插件你们能找到或者是能安装用的话,那这个网站上的所有东西都可以白嫖。三 d 模型网, 还有我们的三 d models, 这些都是可以获取三 d 资产的一些东西。那你就说,哎,请问请问那如果我网上找这些资产都没有找到我想要的,我想要的那个东西就是很特殊的得自己建模了,怎么办呢?但是我又不会自己建模,我没有学过建模。那我就给你推荐一下我们的两个 ai 建模软件,一个是我们的混元三 d, 然后这里可以看到它每天会给你就二十次生成次数图片,直接喂给我们的 tripo ai 就 可以了。然后并且它这边也可以去文具生成 tripo, 它在角色生成方面我觉得是很棒的,都是可以三 d 预览的,然后你就可以去进行一个下载,包括它这里可以给你提供三 d 打印的文件, 当然当然同样也是你花的钱越多,你能享受到的服务就越多。那如果是不在在不花钱的情况下的话,我记得他好像是每个月会提供是两百个计,但是你生成一个模型大概要花三十到六十个积分,所以其实这个网站他 你并不能生成多少次。就是你生成它是要去选你的模型的,如果你的模型选择是最优的那个模型,它的下载是限制的,就是你的导出是没有办法导出的,它会告诉你啊,我可能是一个要会员才能去进行导出的,那你可能要去进行额外的充值,但是我是记得 triple 的 这个 价格其实还蛮高的,这是两个用 ai 生成的一个办法。好的,那我们已经模型已经生成了,那你说那怎么办?我还要自己去 k 动画吗?我连模型都不会做了,那我怎么去 k 动画? ok, 这个办法也是可以解决的啊,那我们就有一个网站叫做 m i x a m o 哎,我不是很清楚这个怎么去读哈, 那这个网站里面它就会给你提供一个动画的制作,当然这个动画也是有限的,并不能包含所有所有的动画,比如说一些很有特质化的一些动画,它肯定是没有的,你只能说在这里面去找到一些比较相似的动画,去替代掉 你想要去制作的动画。好吧,那如果是一些比较细的,那你肯定还是得去进一步的去学习去 k 这个动画这个播放, 那我们可以看到这里它有两个部分,一个是 character, 一个是 animation character, 这里面就是它会给你提供一些默认的角色,你可以点到这个角色去使用这个角色就可以了。好的,可以看到这个是它默认给我提供的一个模型, 当然你也可以去上传你自己的模型,用 fbx, 它可以提供 fbx, o b j 还有 zip 上传上来就可以了。上传上来之后如果你的模型是没有绑股的,呃,它可以在这里面去进行一个绑股,就是你去选择好它关键点就可以。但会有一个问题,就是 你得保证你的模型它得是个人或者是一个稍微正常比例一点的人,不然的话它可能会仿古失败。刚刚提到两个 ai 软件里面这个高的面数,它是没有办法在这个呃网站里面去进行仿古的,你可以去选择用 其他的建模软件去进行一个剪面,然后再来进行仿。我们这里模型选择导入好了之后,你就可以在这边的 mv scenes 里面去选择我们的角色,动画这边就会提供给我们,然后你就可以选择你想要的那个动画, 点击这就可以看到了,当你可以发现它走路是会有一段位移的,因为像这些走路或者些移动的动画都会有位移。那这要稍微注意的时候,你们导入的时候选择 in place, 因为我们要写脚本,我们会自动去控制它的位移。 ok, 这样就可以看到这就是你的一个角色一个走路动画了。那你确定好了之后,我们这边就直接当 load 就 可以了, 这个差不多就是全部,这些应该也是完全足够用的了。那我们后面我会告诉你这些资产怎么用,我们怎么在三 d 里面去搭建我们的场景。

hello, 你 好,我是唐老师,欢迎收看我的视频。本节课我们将正式开始学习 unit 脚本相关的知识点了,我们将学习脚本的基本规则, 那我们主要要学习的知识点有以下的几点,第一是设置编程用的工具,第二个就是基本规则相关的内容。那首先我们先进行一个简单的截图,然后我们就来到我们的 unit 里面来进行一个讲解。好,我们把它放到旁边,然后打开我们的 unit 工程。 那我们首先先清理一下我们之前这个项目工程当中一些没用的东西,比如说现在场景上的这些金字塔和坦克已经是预设题的,那其他这些测试的小汽车都没有什么用了,所以我们可以把它们全部选中,然后把它们删除了,然后重新保存一下, 然后在这个破解的窗口当中把一些没用的东西也删了,比如说我们测试用的这个文件夹给它删除了,然后把这个测试用的这个脚本给它删除了。 好,那现在这个文件夹当中就只留下了这个预设体文件夹和我们的这个场景文件夹。那么接下来我们就正式开始讲解脚本相关的知识点。 那首先第一点是设置编程用工具,还记得在哪里设置吗?在我们的这个 edit 里面,这下面有一个首选项的选项,然后点击它, 在这里面默认就有一个开发工具相关的内容,在这就可以来进行我们这个编程工具的一个设置,就是我们 id 一 的设置,我们默认就设置为 visor studio 二零一九,除非你用了别的。 ok, 好, 所以如果你没有改变它的话,它默认就会是二零一九的这样选项,那我们就关闭它, 那现在我们就可以来学习我们脚本相关的知识点了。首先我们要学习的是第一个知识点,我们创建规则相关的内容,那我们先打开它, 那么创建规则这里面相关的内容是什么呢?第一是不在 vs 中创建脚本, 第二是可以放在 assets 文件夹下的任何位置,建议同意文件夹来管理。然后第三是类名和文件名必须一致,不然不能挂载,因为反射机制创建对象会通过文件名去找 tip。 然后第四是建议不要使用中文名命名,第五是没有特殊需求,不用管命名空间。第六是创建的脚本默认继承 model behavior。 好, 这里面讲了一堆的理论知识,是吧?那我们接着就来创建我们脚本相关的内容。首先我们在 project 这儿创建一个新的文件夹, 因为这其实已经告诉你了,这个脚本可以放在这个 assets 文件夹下的任何地方,比如说任何地方都可以创建脚本,但是为了方便我们管理,我们往往会在这里面去创建一个文件夹,专门来放我们的脚本文件,比如说 scripts 就是我们的脚本的意思,然后加一个 s 就是 复数,那它就用来专门的放置我们的脚本文件,这个是我们自己定义的规则。好,那我们现在就来尝试新建一个脚本, create capp scripts, 就是 新建一个 capp 脚本。 好,然后新建过后你会发现这默认就有一个名字叫 new behavior scripts, 那 其实在这我们可以给它改一个名字啊,我们可以直接改变它叫 test, 好, 然后回车就可以了,这个时候就会自动帮我们创建一个脚本,然后我们只需要双击它,然后通过我们 visuo studio 把它打开,就可以来学习我们脚本相关的内容了。 那我们首先在这个创建规则里面有几个比较重要的点,首先默认创建出来的这个文件,你看 class test, 这个 test 和这个我们文件名的 test 是 一模一样的。然后第三点,这里提到了类名和文件名必须一致, 不然不能挂载,因为反射机制创建对象会通过文件名去找 tab。 这句话是什么意思呢?来,我们现在发现了文件名和类名是一致的,是吧?好,让我们回到我们的编辑当中, 我们现在其实可以把这个脚本就挂载到我们场景上的对象上的,我们干脆新建一个空对象来新建空对象,然后把这个 tab 的 脚本直接拖到这个对象身上面, 然后你看在这个 inspector 窗口选中,它就出现了一个 test, 那 么它就挂载到了我们的这个对象身上。 那么这句话的关键是类名和文件名必须一致。那你看哈,我如果现在进去,在这里面我把这个类名改了,改的和文件名不一致,我改成 test。 二看我保存,然后再回到我们的 unit 当中。 好,然后你再看这个 game object 上面,这个脚本丢失了,看到没,它关联了一个 test 脚本,但是它这有一个警告,就是不能够被加载,因为这里面你的这个类名和脚本名已经不一致了,所以这种时候是不允许 进行挂载的,而且是有警告的,我现在给它移除了。而如果你现在再把这个 test 往上挂的话,好,你看它弹出了一个窗口,警告你是不能够把这个脚本挂载到对象上的, 那这个地方就要通过反射去理解它。我们知道其实我们拖的过程,其实这个对象上面就会关联一个脚本,关联这个脚本过后,我们存储的信息其实都是存储的这个脚本信息,在这个对象上面,我们之间场景里面是看了那个文件的,是吧? 如果你这个类名和这个文件名不一致的话,他现在是通过文件名去关联的脚本,但之后他会通过这个文件名通过反射去实利化这个对象,那这种时候名字不一样,就明显得不到对应的这个类, 所以我们一定要保证我们的类名和我们的文件名是一致的,不然就不能正常的挂载。好,这个地方我给他改回来,然后你再回过头来,你看我现在再去挂载就能够正常的挂载了,所以这个东西非常非常的重要,就是我们的类名和文件名一定是要一致的。 好,那讲到这的话,我再提一个大家容易出现的问题是什么?我在这右键创建一个脚本的时候啊,这个时候你没有来得及改名,然后我随便点了一个地方,这个名字默认就是这个 new behavior scripts, 然后这个时候你肯定要去改它,然后你就会去把里面的这个类名改了,比如说改一个 test, 二, 好,改了这个类名你会忘记改这个文件名,那这个时候你去拖它的话,你就会发现,哎,这个类名和文件名不一致,它就不允许你加上去。 所以对于新人来说最容易出的错就是在新建的时候忘记改名,然后之后改的话,一定要记住把外面的这个文件名也给它对应的改变了,按 f 二重命名, 改成我们的 test 二,好,它弹出来其实就是自动组织一下那个 web studio 里面的文件,然后你再拖上去 啊,这个时候就可以关联了。所以这个第三点非常的重要,就是我们的类名和文件名必须要是一致的。 接着后面的几点其实就是记忆就行了,就是建议不要使用中文名命名,其实是可以取中文名字的,但是建议大家不要使用。然后第五点是没有特殊的需求,不用管命名空间,这个什么意思呢?你看我们新建的这几个脚本,默认它其实都没有什么 namespace 的, 看见没? 之前在这个 capp 的 教程里面,我们每一个新建的脚本都有个 namespace, 而在这个 unit 里面是忽略了这个 namespace, 我 们不用去管它,一般情况下我们就创建一个就行了,不用专门在前面去加那个命名空间相关的信息,它默认就会打包到我们 unit 默认的一个程序集当中。 ok, 好, 这个是需要注意的。然后第六点就是创建的脚本,它默认都继承了 monobehavour, 你 看创建的脚本这个 test, 还有你看我这可以定位一下。还有这个 test 二, 它默认都是继承某我们的这个 monobehavour 的, 那么这个脚本我们之后会专门的去讲解它,那你现在只要知道只要继承了这个 monobehavourour, 就 能够挂载到场景上的对象上就可以了。 好,然后还有一点需要注意的,就是我们之前创建这个脚本都是在这个 vs 里面,这右键添加一个类,是吧? 在这去添加类,但是现在我们记住哈,都不要在这个 vs 里面去创建脚本了,我们统一都在这个 unity 里面右键创建我们的 capp 脚本。 好,那么讲到这儿的话,我们这个基本的创建规则就讲完了,就是这几点需要注意的,其中重要的就是第三点,这个类名和文件名必须一致。好,那么接着就来讲解我们的第二个知识点,这个 model behavior 鸡类相关的内容。 那我们来看这里面的这些知识点,我们一个一个的来进行讲解。首先我要强调的就是这个 model behavior 这个积累是 unity 里面的一种运行的机制,这个是非常非常关键的知识点, 就是它会伴随我们整个 unity 的 开发生涯,所以这个地方一定要认真的听,一定要遵守它的规则。 那我们首先来看第一点,就是创建的脚本默认都继承,默漏 beholder 继承了它才能够挂载到这个 game object 对 象上面。那我们先来看一下我们之前创建的这两个脚本, test 和 test 二, 它们默认其实都是继承这个 model behavior, 你 看新建的脚本都继承它,那么只要继承了它,我们才能够把这个脚本挂载到我们的某一个对象上面。你看刚才我们就挂了这个 test 和 test 二,那它里面的原理是什么呢?原理其实还是用的反射, 当我们在这里长按一个脚本的时候,当我们拖动它的时候,其实 unit 帮助我们进行了处理,它处理了什么呢?其实就处理了能够得到这个脚本的名字,得到它的名字相当于就是一个字母串,然后当我们在这个 hiri 这个窗口当中松开鼠标的时候, 其实在这一瞬间它判断的是什么?判断是根据这个名字去通过反射来得到一个类, 然后去判断这个类是否继承了这个 model behavior, 如果继承了这个 model behavior, 这个类才能够和场景中的这个 game object 对 象进行关联,不然的话是挂载不上去的。我现在举个例子,你看我现在如果重新新建一个类,比如说就叫 test 三, 好,然后我在里面去,好,来,我在里面去修改它,我让它不继承默了 beaver, 这样也是允许的,把这里面这些函数都删了,就是一个空的类,是吧?这样也是允许的,但是只要你这样写了,不继承默了 beaver 了,那你再把它往场景上对象挂,你看我松鼠标, 它就会弹出一个窗口,它会告诉你不能够去加这个脚本,因为它没有继承我们的 model behavior, 所以 它这里面的原理就是通过反射去判断这个类是否继承了这个 model behavior, 继承了它才能够和场景上的对象相关联。 所以这个第一点的知识点你应该明白了,就是你继承了它才能够进行一个挂载。好,那我们接着讲第二个知识点,就是继承了 mollie harvey 的 脚本,不能够拗,只能够挂,这个是一个强行的一个机制,这一定要注意哈,不能拗,只能挂,就是只要你这个类 是继承了 model behavior, 那 我们就不能够像以前的那种形式去拗一个对象。比如说我们在这直接写这个 test t 等于 new, 这样写是不会报错的啊。这个 star 其实就只会执行一次的函数,我们之后会专门讲这个叫生命周期函数。现在我在这里面写一个测试的代码,给大家演示一下,我们现在这个 test 其实挂载到这个 game object 上的,是吧?你看现在我在它的这个 脚本里面写了一个 new, 一个 test, 看见没?然后我现在运行是直接会报警告的。你看这儿下面这儿出现了一个打印信息,你点一下就打开了,就是 console 这个窗口,这儿显示的内容就是说你在尝试用这个 new 去 创建一个 model beaver 的 对象,它是不被允许的。就是如果你需要创建这个 model beaver 对 象,必须用对应的一个方法才行。 这个方法我们之后会专门的讲,你现在只要记住在 unit 里面是不允许我们这样直接拗一个继承了 monobeired 的 脚本的。 那你肯定要问为什么有这样的一个规定啊?其实也是和第一点息息相关的,就是继承了 monobeired 这个脚本才能够挂载到场景上的对象上,才能和对象进行关联。也就是说我们继承它的目的 就是和 game object 进行关联,那如果你不关联直接去拗的话,那就失去了继承它的意义了。 所以一定要清楚,只要继承 model beaver 的 脚本,目的就是能够挂载到场景上的对象上,那么既然你都希望它是挂载,那你就不应该去拗它了,你就这样死记下来,不能够拗就行了,这个是规则。 好,那么第三点,继承了 mooby ever 的 脚本,不要去写构造函数,因为我们不会去拗它,所以写构造函数没有任何的意义,这一定要记住,我说的这句话 就是我们刚才其实讲的前两点,也是为了这个第三点做铺垫嘛。我们刚才讲了, model beaver 的 脚本不能扭,只能挂,那就意味着我们不能够自己去像刚才那样去扭一个对象,是吧?所以说我们在里面如果去写构造函数的话,也没有任何意义了。 那你肯定就要会问,那唐老师不能写构造函数,那比如说我要初识化这个脚本里面的一些成员变量怎么办啊? 那其实在之后,在下一节课,我们会专门去讲生命周期函数相关的东西,讲到那儿的话,你就知道怎么去出式化了。现在你只需要记住, 我们不能拗,然后不能去写构造函数,因为写了没有意义。好,那我们接下来看第四点,就继承了 model behbler 脚本,可以在一个对象上面挂多个, 如果没有加这样的一个特性的情况下,是吧?那你们来看,现在我们这上面不是挂了一个 test 了吗?那我现在再往上面挂一个 test, 看到没?这就有两个 test 了,这意味着什么?意味着这个 game object 对 象关联了两个 test 对 象 啊。你往上面挂载,当运行的时候,其实做的事情就是创建了两个对象,就 unit 里面帮我们拗了两个对象和这个 game object 进行关联,所以它是允许这样多个挂载的。但一般情况下哈,我们不会在同一个对象上面挂多个脚本,这个一定要注意, 如果你不希望同一个对象上面挂多个脚本的话,你可以在这个 test 脚本前面去加上这样的一个特性。 之前我们在讲反射特性的时候讲的特性的知识点,如果你忘记了,或者你压根没听的话,你可以在 c 下步进阶当中去回顾一下特性相关的知识。那你只要在这儿去加上这个特性,叫 diss a long multiple 啊, m u l t i p l e 它都自动补全了,看到没有?这儿的意思就是不允许啊,就是多个脚本的挂载,可以这样理解,加了这个特性的话,我们现在再回到 unit 里面, 你就会发现这里面是不允许你挂多个的,现在你已经挂上去的,他管不了你是吧?但是你现在我把它移除了,然后我现在再往上面挂, 像我在这个 test 挂上去,他就报了一个警告了,他说你这个东西不能够挂多个,因为现在已经加上去了一个 test 了。那从这你怎么去理解这个特性呢?我们知道特性是什么样的一个概念,就是可以通过反射去获取的一些额外信息。 比如说当我们把一个脚本往上面挂的时候,本来就是通过反射来创建对象和它关联,是吧?那这个时候它创建对象的时候,它就会去检测它有没有这样的一个特性, 如果有这个特性的时候,它发现这个 game object 上面已经有这样的,同样的一个类的对象和它关联了,它就不允许你再创建一个对象和它进行关联了,这个就是它的原理,通过反射得到特性,然后来进行一些判断。 好,那么第四点就明白了,那么第五点就是继承阴谋 beaver 类也可以再次被继承,遵循面向对象继承多肽的规则。那这个什么意思呢?你看刚才我不是写了一个 test 四,是没有继承阴谋 beaver 吗?现在我给他改一下,我给他改成让他继承我们的 test, 你看也是能够被允许的,就是它的规则,这里面和我们的就面向对象当中的继承多肽是一样的,它会继承父类的所有信息,包括这个 monobeiro 父类当中,你看它本质上也是类,它上面还有父类, 看到没?它一层一层地往下继承,其实就包含了它里面所有的信息,你在子类里面都可以用。那同样既然继承了 model behavior 可以 挂载,那你继承了一个这样继承 model behavior 类,那同样现在这个 test 三,你看我也可以把它挂载到这个对象上面了。 啊,你看现在这个 test 三为什么报错啊?是因为它现在继承的这个 test 上面有一个特性,就是不允许多次挂载,看到没?你看我现在如果再重新创建一个对象,然后把 test 三挂上去是没有问题的, 然后我再挂的话就不行了,因为它父类上面已经加了一个这个特性的,所以它这个子类也适用。 ok, 那 么讲到这的话,其实这五点就已经讲完了,目前你肯定对这个阴谋 beeper 还是很 陌生,是吧?没有关系,你现在只要记住这个类就是 unit 提供给我们的一个非常关键的类, 继承了它就能挂载,然后有一堆的规则必须要遵守的,那你只需要记住这些内容就可以了。好,那我们这个第二个知识点,这个 monologue 积累我们也基本上认识了,那我们接着就来讲解我们的下一个知识点。好,我们下一个知识点是什么?我们展开看一下。 下一个知识点是这个不继承 moral behavior 类。那我们来看这个不继承 moral behavior 类有什么相关的内容。那么这个知识的重点是什么呢?就是虽然现在 unit 提供了一个叫 moral behavior 类,继承了它就可以挂在到对象上面, 但是也不是说我们现在不能够写不继承 model behavior 类,你要知道我们要根据我们的需求来决定是否继承这个 model behavior。 那 我们这儿要讲的知识点主要有以下的四点。首先第一点,不继承 model 的 类,这个 model 就是 我们 model behavior 的 一个简写哈,你明白什么意思就行了, 只要不继承 model behavior 的 类,就不能通过这种拖页然后挂载的形式进行关联。 那么第二点,不继承 model 的 类,想怎么写就怎么写,如果要使用需要自己去拗它, 因为我们知道这个继承了 model behavior, 我 们挂载了进行关联,那当游戏运行的时候,其实它会自己去拗这样的一个对象,你可以这样理解,就相当于它帮助我们去创建这个对象了,但是如果不继承 model behavior, 现在我创建一个脚本,哈,我创建一个 test 四, 好,这个脚本我们创建出来,虽然它会默认地去继承某种 behavior, 但是我们完全可以像刚才一样把这个继承关系取消了,然后把这里面的这些生命周期函数也删除了,那么这个就是我们自己定义的一个类了。 那么如果我们想要用这个类,我们可以直接去拗它,就没有关系的,就是和我们之前 capp 里面的规则是一样的, 就是除了继承 monologue 类我们不能拗以外,其他的类只要没有继承这个 monologue, 我 们都可以想用它的话,就直接去拗这个对象就行了。你看 test 四,我现在要去声明一个对象就拗, 然后这样就可以去拗出对象,然后我们就可以使用里面的成员变量,用面向对象的思想去开发就可以了。所以没有继承 monologue 类和以前是没有任何区别的,你想怎么用就怎么用。 好,让我们来看。第三点,就是不继承 model 的 类,一般是单立模式的类,用于管理模块或者是数据结构类,用于存储数据, 那这个是怎么去理解呢?好,我们这种不继承 model behavior 类,就意味着它不能够和我们场景上的这些游戏对象进行关联, 而我们之后进行游戏开发的时候,其实都是基于 unity 里面的这个机制,以这种演员对象的这种概念来进行开发的。比如说,比如说只要这里面有一个玩家,那这里面肯定有一个对象 啊,那么这肯定就有一个和它关联的脚本,那么一般情况下这种没有继承 model 的 类就不会和这个对象进行关联,而它更多的就会以一个管理类的形式去存在。比如说我们可以写成一个单立模式类来管理所有的怪物,就管理场景上的这些所有的怪物对象或者玩家对象, 然后还可以用于作为数据结构类,比如说我们可以把这个 text 四写成一个专门表示数据的类,比如说我现在声明一个关于玩家信息的,比如 public int 这个 age 年龄是吧? public string, 然后 name, 然后再 public 这个 six 波尔,然后 six 好,就是各种各样玩家的信息,然后我们可以在继承了陌陌这些类里面,比如说某一个类是表示玩家的,那这里面可能有玩家的属性,那我们就可以把这个 test 四 作为它的一个成员变量,你看和我们之前的写法是一样的,成员变量声明,那么这个 t 就 可以理解成可能这个 text 三就是一个玩家信息,那这里面有一个数据结构,就是表示玩家信息的数据,那我们就可以通过这种形式来使用。我们没有继承 model 的 类, 所以这个地方你就产生一个大概的概念就行了。以后我们在真正开发的时候,用到这些内容的时候,我相信你就能够更深刻的明白它是什么意思了。现在你先产生一个印象, 然后我们来看第四点,就是不继承 model 的 类,不用保留默认出现的几个函数,就是刚才你看我们新建的这几个类,是吧?创建的这几个一个脚本,你看我再创建一个 test 五, 好,然后这个脚本里面创建的新脚本,他默认这里面都会出现一些函数,我之前就讲过,这些函数叫生命周期函数,如果你没有继承默洛彼哈尔,那这些生命周期函数对于你来说就没有任何的意义。 这个一定要记住,就是如果你没有继承它,那这些函数也就都都给他删了,因为对于你来说就没有任何意义了。 好,那么讲到这的话,那其实这个第三个知识点也就讲完了,那其实综上所述的话,你就感受到了继承和不继承他们有什么区别?最大的区别就是继承了才能挂,不继承不能挂, 然后继承了不能溜,然后不继承的话只有溜出来才能使用。 ok, 就 记住这些关键点就可以了。那我们接着就可以来讲解之后的知识了,我们来看下一个知识点。四, 执行的先后顺序。这个是什么意思呢?就是你看哈,现在我们场景上这些对象都挂载了一些脚本,那这些不同的脚本之间,比如说 test 和这个 test 二,还有这个 test 三,当我们真正运行游戏的时候,这些脚本谁先执行谁后执行啊? 我们其实目前是没有办法控制的,但是我告诉你,其实是可以去设置它的,比如说我们选中这个脚本,你看在 inspector 窗口这儿出现了这样的一些信息,这下面是这个脚本里面的具体写的内容,这上面你可以在这儿去打开这个脚本,你看 open 就可以打开它,然后还有一个选项,旁边这有一个什么,你点击一下,你看这个选项里面其实就可以打开一个脚本的一个执行列表,一个顺序,一个清单。你看我如果在这写点一个加号 啊,你看这就出现了很多的脚本,有,这下面全都是 user 的 脚本,都会出现在这有 test, test 二, test 了三,然后你选择一个, 那你看这有一个 default time, 就是 默认时间,在这个默认时间之前,有一些系统自带的就是一定会先执行的一些脚本,那么在这个默认时间之后,就可以来设置一个执行的先后顺序了,这个时间越小就越先执行。那你看我现在再加一个这个 test 二, 那么当他们同样挂载到场景上时,然后点击运行的时候,这个 test 总是会比这个 test 二先去执行这里面的逻辑。好,这个地方了解一下就行了, 以后我们用到的时候再来细讲,因为目前我们没有讲生命周期函数的知识,所以这个知识点我们不太好来演示,我们下节课讲了生命周期函数过后,再来给大家演示这的设置会造成一些什么影响。好,现在我把它重置了, 我们把它关掉了,只要记住选择脚本,在这右上角可以来设置它们的执行顺序就可以了。好,那么现在我们的这个第四个知识点也就讲完了,那么接着就是第五个知识点,这后面这两个知识点其实不是今天的重点, 了解一下就可以了。好,第五个知识点是默认的脚本内容,这个是什么意思呢?你看哈,我们现在随便新建一个脚本,它出来的是固定的,是吧?都是这样,继承默洛 beaver, 然后有两个这样一个叫 start 的 函数,一个叫 update 的 函数,那么这些其实就是 unit 里面默认的一个创建的模板,你可以这样去理解它,这个模板我们是可以去修改它的,但一般情况下我们不会改它,但如果你要改的话,在哪改呢?你可以在我们的这个 unit hub 里面 好打开它,然后来到我们安装里面,可以看到各个版本的引擎,是吧?然后点击这上面,我们是可以看到这个版本安装到哪的,然后点击在资源管理器中显示 好,你就可以打开这个版本的 unity 安装的路径,然后在这个 etter 这个文件夹当中,这上面啊有一个 data 啊,你进到这个 data 里面,这里面有一个 resource 啊,再往里面进,你看我这都写了路径的,然后下面还有一个 scripts 这个 templates, 然后进去过后,你发现这里面有很多的这种 txt 格式的东西,那么它们是什么呢?仔细看哈,这很多东西你没见过,但是第一个这个八十一,你看这个东西肯定见过。 new behavior scripts 是 什么?就是我们创建的脚本的时候默认的名字,你现在其实可以用文本编辑器给它打开, 然后你就会发现,发现什么?发现这显示的内容,其实就是我们新建脚本的时候默认显示的内容,如果你想要改变它的话,你可以在这里面进行修改,但是你要用我们的那种管理员模式去打开它,不然你可能保存不了, 但一般情况下啊,我们不会去改它,你看这个地方,这个地方 script name 什么意思?就是动态变化的,就是当我们去改名的时候,我们名字变了,然后这个名字也就变成我们的那个文件名了。 好,当然一定是你创建的时候就把名字改好。好,那么这个就是我们第五个知识点。好,那么讲到这的话,那我们今天的所有知识点就算是讲完了,那我也不好给你复习一下,因为复习的话也就是把这几点都给你念一念,我觉得没有任何意义, 我会把这个图这些知识点都全部啊发给大家啊,大家可以下载下来去看。今天一定要核心掌握的知识就是继承默洛 beheber 的 区别, 还有他们的这个创建规则,这三点知识点是非常重要的,另外四五两点知识你作为了解就可以了。好,那么讲到这的话,那我们今天的内容就讲解完成了,那么同样给大家留了一些习题。 好,这个题型就三道哈,你可以进行一个截图,然后来进行一个练习,我会在下一个视频当中来给大家讲解,那么今天的视频内容到这就结束了,谢谢你的观看,敬请期待我的下一个视频再会。

好的,我将用一个视频,一十分钟之内快速的带你入门。 unity 怎么去使用我们的 unity 啊?我们 unity 下载好了,打开一个项目大概是长这个样子,然后可能你的布局会和我的有点不一样, 我这里是一个二 d 的 项目,当然其实在游戏开发里面二 d 和三 d 的 区分并不是很大,比如说你看我把这个二 d 的 图标打开之后 关掉之后,这一样的也是啊,咱们的一个场景,三 d 的 一个场景。好,我们一个窗口,一个窗口来进行介绍,我们比较核心重要的是第一个 hierarchy 窗口和我们 sense 窗口,这两个窗口你可以理解为一一对应, 这个场景里面有的所有东西都会在我们的场景窗口内去进行看到。那比如说你新建了一个项项目之后,它一定会有一个相机,然后对应的会有其他的东西,当然这个更详细的一部分我后面会去进行讲到,我这里只是快速的来带我们进行入门,好吧。 然后这是我们的一个 game 窗口, game 窗口这边你可以发现你什么都点击不了,这是我们游戏运行时候可以看到的一个视窗的窗口,你可以在这里面去进行玩你的游戏,去进行一些互动。 ok, 这边是我们的 inspector 面板, inspector 面板你可以理解为其他开发软件里面的细节面板或者什么之类的。比如说像我现在是点到了我的 main camera, 所以 这边是我对于我的相机的一些参数和组建。 ok, 这细节的部分我后面也会跟你们讲到。然后下面这个部分比较重要的是两个窗口,一个是 project 面板,一个是 console 面板, part 面板你可以理解为就是我们的项目工程文件夹,你可以在这里点开右键修 in folder, 你 就可以看到我们这个项目 资产文件夹里面的所有东西,我们后面会把我们所有东西放在这里面,我们的场景,我们的素材,我们的代码好。第二个比较重要的是 console 面板, console 面板就是你在游戏运行的时候,这里会给你报错。好,我们的几个窗口,大概了解完了之后,我们可以来看到上面这部分用到比较常见的 啊,大家都知道在一个文件里面,上面这部分很多东西都是不会用到的,所以我这里就讲我们会用到的东西。第一个 打开文件文件这个部分,如果你在以后要把这个游戏做好之后打包出来,最常用到的是这个地方, build settings 就是一个项目的一个设置,你会打包成开发成什么平台,那我们就在这边设置好了,然后再进行 build, 这个部分细节的我后面也会讲。第二个就是我们的编辑,编辑这里面比较常用的是两个,一个是 project setting, 一个是 preference, project setting 里面就是有我们项目里面的所有的设置,比如说我的渲染管线,还有我的一些输入设置,物理属性啊什么之类的一些设置。另外一个是 parents 偏好偏好设置,这里面其实也只是一些颜色设置,比较重要的是这个东西 终端工具级的设置,有很多新入门的朋友,他这个地方会出一个问题,就是他写好了代码之后,这个代码双击点开,他可能没有办法打开编辑器,或者打开了编辑器之后,这编辑里面都没有报错,这里对应就要选择你自己的那个编辑器,他才会进行打开,然后并且报错,好吧? 然后这两个部分就是这个样子,然后这里有 assets, 然后有 game object, 这个地方都不用管它,这个地方你看它的名字是不是和我们这个地方名字一模一样,那相对应的就是这边右键可以新建的东西,所有的就是我们这个的地方的东西。好,这 game object 就是 我们的物品, 它你仔细看一下,这地方可以 create empty, 有 二 d object, 三 d object, 那 这里右键是不是和我们这上面的 game object 长得一模一样,所以相当于这两个是不用管的,这 asis 是 在这里对应的,然后这个 game object 是 在我们的场景里面去进行对应的,我们在这里去进行新建就可以了。 然后这边是 component, component 是 在 unit 里面比较重要的一个概念啊,它的组建,这些组建会构成我们场景里面所有能做的一切事情, 包括我们这个东西能被看到,它可能会需要 mash, 会需要 ringer, 如果它需要去进行移动,它可能会需要一些 physics 属性,如果它有声音,有或者一些其他的东西在这里都需要用到, 但是我们也不需要在这里去创建它,因为我们一般比如说这是我的一个 object, 我 需要在这里去进行创建就可以了。可以看到这里有一个 add component, 看到了吧?好,所以相当于这三个都是我们一些 以后都会常用到了,但是我们都不会在这个地方去新建它或者去添加它,那我们就不管它,好吧?然后这个地方可以直接忽略掉,然后我们来看到 windows 面板,那什么是面板?我们这些是不是就是我们的面板?那我们常用的几个面板其实就都列在这里了。然后当然在你后续使用中,比如说你可能会要去做动画,可能会要去做虚拟帧的东西,那这里就可以去 点击打开我们的对应的面板面板,这个我们后面学到,或者是你需要用到的时候,你就再去网上去 问我要打开一个面板,我在哪找它就可以了。这里比较重要的两个东西是,一个是 asset store, 一个是 package manager, 这个就是我们的 unity 提供的资产商城,它点开之后会显示这个,你直接点 search online 就 可以了。呃,当然现在因为 unity 它其实已经退出中国了,现在在国内的 unity 是 一个环境引擎号, 这个地方有很多的瓜这,但是咱们可以不用管,因为咱们用的话,如果是用些本地的资产,或者是你买的资产,就不会在 uni 商城里面去买,那它对你的影响就不大。你先了解一下,因为这也是获取一个资产的一个途径, 我也也后面也会告诉大家怎么去找资产,就是因为我相信很多他是不会画画或者是不会建模的,他就是纯程序员的,那他怎么又去做自己的游戏呢?就是我们要善用资产,好吧,我们用资产去做我们的游戏可以了, 那我们这个先不管,比较重要的是我们的 package manager 包管理器,他一个项目里面他不会给我们提供所有的包嘛?那我们在用的时候我们就可以去 新增我们的包。比如说像我现在用的是一个 building 的 一个渲染管线,那这个渲染管线里面就有很多的东西是没有的,那我就会去后续地去增加我们的很多包,那你知道这个地方是去添加我们的包就可以了。比如说很多登记的包,你在这里就点到我们的 unity registry, 然后在这里去搜索就可以了。 上面这个部分基本上就给你们讲完了啊,这边 help 就 不用管它了。看到我们的游戏这个里面来教你们一些应该可以说是快捷键的部分,因为在 unity 里面我们也需要去进行场景建模嘛,就比如说一些白模的搭建, 那我现在是一个二 d 的 项目,你们可以先不用管,然后我现在是在 ui 的 一个窗口的部分哈,你可以,如果你是创建的二 d 项目,你可以和我一样把这个二 d 的 这个取消掉。 好,我们在我们的 sense 面板里面它有几个快捷键是什么?第一个就是,呃,使用鼠标中键滚轮去进行缩放,看我们的东西,那你说如果我在场景里面去新建了我们的 cube 或者什么东西,你找不到它怎么办? 第一,双击点它,它就会缩影到 ok, 或者是第二,按住我们的 f 键 find 也可以快速缩影到它。好,那我就以这个 q 来说,然后同样的你按住你的鼠标 alt 键,然后就会出现一个小眼睛 样子,你就进入了预览模式,这个时候你再按住中键,你就可以在当前这个视角去进行你的一个场景预览。 好,然后你按住你的鼠标右键也会出现了一个小眼睛,但这小眼睛下面有一个凸字的一个形状,这个是不是就很像游戏键盘上面的上下左右嘛?所以这个时候你按住你的 w、 s、 d, 你 可以在场景中去进行预览,场景中预览 ok, 然后按住 q 和 e 就 可以上和下行,然后这是这个部分, 这是场景中可以按的一些快捷键,你按住你的鼠标中间的滚轮,就是一个小手的样子,就可以去拖拽你的这个。呃,场景拖拽整个东西,好,这些是场景里面可能要知道的一些东西。好吧,这是按住右键可以拖拽的 ok, 然后下面一个就是怎么去改我的模型,就是我们的一个 q, 我 们现在的快捷键,因为里面快捷键是 w、 e r, w, e, r, 学过玛雅的应该对这个要稍微熟悉一点哈,我记得玛雅的快捷键和这个是一样的, 但是有很多其他的建模软件的快捷键不一样,比如说 blender 里面是 g、 s、 r 去控制它的移动缩放好, w 就是 我们的移动, 可以在不同的轴向去进行移动。好,我们的 e 就是 我们的旋转。好,我们的 r 就是 我们的缩放。好,你看我这里去修改我的数值的时候,这边 insect 面板里面是不是在 transform 这个铺部分,它会有数值的改变,这个是 scale, 然后这个是 rotation, 然后这是我们的 position, 看到了吧,所以相当于这个就是我们的细节面板,在 transform 这个部分它就会 去改变它的一些东西。哎,这个地方差不多你就把 unity 里面所有的能用的东西你都知道是怎么进行使用了,好,我们又可以回到我们的。呃,二 d 这个部分,或者说回到我们的 ui 这个部分,还可以再给你们说一个比较好玩的就是, 呃,为什么我这里突然变得这么糊啊?啊?好,影响不大。比较好玩的就是在里面会多一个快键,是我们的快键 t, 你 可以看到 w e r 一 样可以进行缩放, t 这个地方是有个图标这个样子,呃,如果你是作图比较熟悉的话,这个应该是 就稍微要了解一点了。我一般在二 d 里面,我会喜欢使用 t 去进行修改这个图片大小或者是缩放去控制它,好吧,就是大概这样子。然后你看我这边点了之后,我这边细节面板里面有很多东西,包括有很多可以实现的功能,那我们也已经说了,我是想要在十分钟之内告诉你 这个东西怎么去搞。 ok, 好 像现在可能已经超过十分钟了,所以这些细节的东西我会在后面的课程里面一步一步的告诉你,我会用一些小型的项目告诉你项目怎么落地,然后这些东西怎么去进行使用,包括怎么去进行写代码,好吧。

小游戏如何发布即盈利模式?你连游戏的发布渠道和盈利的方式都没搞清楚,怎么就开始做游戏了呢? 今天一条视频,用最直白的话,把盈利方式、国内的上线资料还有准备途径全部给你讲明白,记得点赞、收藏,评论区留下,你的问题我都会一一回复。我们先说小游戏, 现在抖音和微信两大平台,因为用户基数大,变现能力强,所以铺天盖地的游戏。游戏的引擎一般是 unity、 莱雅、白鹿。微信平台配套自由小游戏开发工具,可直接制作游戏。 抖音平台额外支持高的引擎开发,具体的接入方式可以看官方文档。小游戏分为两种模式,你必须知道, 因为这两种模式影响着游戏上线时资质、材料和开发者认证。一个叫做 i a a 游戏应用类广告,一个叫做 i a p 游戏应用类购买。你光听名字就知道 i a a 游戏通过广告分成包括激励视频广告,用户观看广告可以获得游戏内奖励。第二种是界面广告,品牌产品广告会在游戏暂停或者关卡切换时弹出 ip 游戏通过内购道具进行盈利,售卖皮肤道具包这类虚拟物品,通过平台官方支付接口完成交易。我们首先来讲 i a a 游戏,也就是广告收益游戏, 这也是普通人最容易实现的。抖音、微信都支持个人注册认证发布游戏,在微信只有以下两种情况,需要提交计算机软件授权登记证书。申请方法我后面会讲,第一,游戏名称包含英文或者软件字样。第二, 涉及品牌、公众人物合作等内容。在抖音只要发布游戏,就必须提供计算机软件注册登记证书。有意思的是平台官方可以代办软注,不过需要付费游戏审核通过后还有备案流程, 平台会一步步指引操作难度不大,所以 i a a 模式门槛最低,简单操作就能上传游戏,靠广告赚取收益。接着是 i a p 游戏。 先说结论,个人无法发布 i a p 游戏,因为涉及付费内购多项资质,个人没有资格申请,只有企业主体才能办理需要准备的资质材料。第一,计算机软件授权登记证书,这是基础。第二,网络游戏出版物号。第三, i c p 备案资料。抖音不同地区要求的材料略有区别, 除此之外,还要接入中宣部网络防沉迷认证系统,如果是授权改编类游戏,还要额外补充对应授权材料。整套资质里,最难办理的就是网络游戏版号,二零二五年到二零二六年四月,平均每月下发仅一百五十个左右, 看着数量好像不少,但国内头部游戏厂商数不胜数,独立开发者很难分到名额,更何况很多人连企业主体都没有。网络游戏版号申请难度极高,想玩小游戏。还有一部分人做单机手游、端游这类网游,想上架 type type 这类平台,这里单独说下, type type 平台不参与游戏收益分成,仅收取百分之一手续费。先讲单机游戏,在 taptap 完成开发者注册认证,按照官方文档指引上传游戏,签署合作合同,每月统一结算收益,同时支持上架 dlc 拓展内容。 如果是带内购的网络游戏,全套资质要求和前面 i a p 小 游戏完全一致,所有材料都要完整办理。以上就是国内各主流平台上线游戏需要准备的全部资质资料,大家一定要提前选好适配的开发引擎, 不要等游戏全部开发完成再筹备上线手续流程会非常麻烦,有任何问题都可以在评论区留言交流。


哈喽,这里是二进至二,师傅,我们今天是学习二 d 动画,骨骼动画这个部分我们可以在网上去找一张参考图,去绘制一下我们的一些角色,然后我绘制了这样一个角色,然后将你绘制的角色导出成 png, 直接拖入到我们的 unity 里面,我也是第一次做这个骨骼动画,所以我们一块来学习一下哈。 首先需要去处理一下你的图片,那首先我们默认的就是要改改成 spread 模式,然后进行 spread editor, 你 改了之后要去进行 apply, 然后在这里面去找到谁呢?找到我们底下这的 skin editor。 好, 那这里就可以去对它进行一个绑股了。首先第一步先去绑定骨骼 cret bones, 你 点击的第一个骨骼点是它的根,骨骼点后面都会以这个去移动,所以我们这里可以选择它的 身体去作为他的根骨的点。好,我这里直接去进行点击,这是我的身体,这可能是我的腿, ok, 然后我想要在这里引一条出来,这边对应是我的左腿, ok, 这应该是我的左腿,然后我在这里处理好,然后你还可以处理的更细致,比如说把脚给加上,然后这边处理连接的是我的右腿, ok, 右键左键就是点击去进行建立,然后这边腿部这边确定好了,我们又点到头部这边,头部这边是不是就可以连接到我们的角色的头?好,就是往上, ok, 然后这里弄好了,我们这里又对应我们的左手和右手,这个应该是我的左手,这是我的右手, 然后进行绑定右键,然后这边对应出来是点击, ok, 这样就基本上全部绑定完成。好,绑定完成之后,你可以看到这是你的根骨骼点,然后这对应下面是你的一些子节点, 是大概是这样一个样子,然后同样你也可以去改他名字,如果你改了名字之后,可能会方便你去进行记忆。 ok, 我 们骨绑好骨骼之后,我们下面一步直接去进行自动地去进行一个 mash, 直接 generate, 大 概是长这样子,但自动的部分它可能会有一些这样没有切到的样子,会有一些偏差,你就直接点到 edit, 然后去把这些拖动一下,让它去贴合你画好的东西,然后这边就随便去贴合一下, 可以稍微处理看一下,去删除一些不不必要的一些节点。好,那你处理好了之后大概长这样子,下面一步进行一个刷权重,上面就是去拆分它的 mash, 上面去进行刷权重,那同样我们也是自动去刷一下这些权重, 好为它去进行 generate 生成。大家全是长这个样子,你可以稍微去处理一下它,感受一下它有没有一些什么问题。 好,我们处理好了之后,我们直接去进行 apply 去记得应用一下我们刷整理好的东西。好关闭当前的一个 sprite, 将我们的 player 拖到我们的场景中。 ok, 拖到场景中之后,我们这里需要去给它添加组建,添加二 d animation 中的一个 sprite skin, 这个组建 好添加后,组建之后,我们这里给它去添加 bones, 我 这个地方因为我已经去进行了 spread 处理,所以就添加 bones 的 时候,它就会自动去贴合它的骨骼。看到了吧?那因为我现在画的这张图片是拆分开来的,所以我还需要去将我的这些物,这些部分给它结合起来。 好了,这个人画的其实有一点比例非常奇怪哈,那我们这样拼好之后,我们下面一步就可以来去制作我们的动画了,那我们就点击到我们的玩家,然后直接去进行 get create 这个 animation, 然后我们直接点击到我们的录制这个部分,就会和我们之前讲过的真动画就很像了,相当于你录制的时候去移动它的关节点,移动一些部分,它就会实现一个真动画的效果。那比如说我这里点击录制,然后点到这个关节点,我说让它 旋转一下,比如说我的第一帧可能就是正常站姿的一个帧数。 ok, 这是我的第一帧, 它的原理会和我之前跟你们聊到过的是一样的,就是它是一个循环动画,所以你得保证它第一针和最后一针它是一模一样的。比如说我到我的第二针是我的的一个抬腿动作,我要去进行走路嘛?好, 这比如说这是我的第二针,然后可能手臂有一些自然的浮动, 可能大概这个样子。然后我这个地方我确实没有做过这个真动画,所以现在很奇怪,但是你们可以看到它能动起来了。 ok, 如果你们和我一样,也不知道怎么去 k 这个骨骼动画,你们可以去网上找到一个 呃姿势图,根据这个姿势图垫在这个图片下面,一帧一帧的去 k 它,这样就可以了,然后可能会要稍微费一点时间, 大概是这个样子。当然这里同理,你不仅仅是可以去 k 你 的角色的动画,你也可以拿它去使用,去 k 一 些其他的动画,比如说一些抽象的一些交互小物品啊什么之类的,让它们会有一些比较好看的效果。好吧,那就动手做起来吧。

你学了很久 unity, 但是还是做不出游戏,或者做出来了,但是不好玩,不完整,也不像一个真正的项目。你以为自己缺的是技术,但很多时候真的缺的是怎么把一个想法真正的落地。 所以我打算开一个新的系列,游戏制作踩坑。 hello, 好 久不见,今天不讲考研专业课了,我会以一个在游戏培训行业阴暗爬行三年的老油条的身份出现 这个系列里面。我不会只讲 unity 怎么写代码功能怎么实现,或者某个系统怎么做,因为真正的问题其实是啊,为什么很多人学了很久还是做不出来自己的游戏?为什么很多项目一开始有想法,最后又变成了一堆功能,一堆半成品,一堆做不完的东西? 为什么有些人做项目会越做越乱,有些人却能一步一步的把东西全部做完?因为真正重要的从来不只是技术,而是怎么做设计,怎么做项目规模,怎么规划开发流程,怎么让一个想法真正的变成可以玩的东西。 所以后面这个系列我会慢慢聊,游戏设计、 unit 开发、独立游戏交互装置,还有很多很多我这些年踩过的坑,以及怎么把一个项目从作业变成作品。可能一开始我还是会讲一些很基础的 unit 的 内容哈,但是我更想聊的就是一个项目怎么一步一步的长出来。 我可能不是你刷到技术力最强的那个,但是我应该是,嗯,最会帮你把一个想法真正做出来的人。