粉丝90获赞367

大家好久不见呀,我游乐王子又回来了。这期我们来实现如何通过按钮去切换场景天空。我新建的一个空项目来为大家演示一下操作。首先在面板中又见新建一个空对象,命名为 chensky, 选中一命名好的空对象,右键添加按钮,按钮重命名为 etc。 复制粘贴一份出来,按钮重命名为 skynight。 这里修改文本为早上, 这里修改文本为晚上。 现在可以看到场景中的按钮位置,需要重新调整一下 位置,可以按自己的需求去进行摆放。 修改 按钮大小,宽两百,高六十,文本大小改为三十。 另外一个按钮操作相同, 选中 chesspe, 将事先编辑好的脚本拖拽进去。 这里是设置白天天空何处?我们选一个早上的天空, 这里是设置晚上天空何处?我们选一个晚上的天空, 这里设置早上按钮这里将 sky day 拖进来这里设置晚上按钮这里将 skynight 拖进来这里浏览一下代码,需要原文件可看评论区处获取 运行项目即可实现。通过点击按钮切换天空场景。 今天的分享就到这里了,记得一键三联哦!

但现在这个时候这个按钮他还没有一些逻辑,然后你怎么让现在这个按钮他能和某些事件对应上?我们可以也是先在这个交往文件夹里面,我们可以新建一个 文件夹,然后这个文件夹就要的是 ui, 然后这里面可以新建一个 c 上府的脚本, 然后这里面的话我们可以先把这些不需要内容可以先删掉。我们现在是要想实现这么个功能,就是当我玩家按下了这个开始游戏之后,就进入到我们现在游戏的这个主场景里面来,就是我们之前 所有的那个操作都按在主场这里面,我们主场这里面会有这个敌人生成,然后会有这个游戏地图,我们就需要先引用一个内容,云庭恩真点 sc eneses met, 然后顾会使用一个接口来 实现这个场景的切换,然后这边是先写上一个方法 void, 然后把命也是公开的一个冰凉,然后我们可以在里面可以写一个第八个信息,第八个点 log, 然后我们现在是要进行一个设置,就是我们可以回到我们运营里面,然后给我们开始游戏这个按键上面给他绑定上一个代码, 然后绑定完之后,这个时候你可以在这个 batte 这个组建里面会有个昂克力克,然后点击下这个加号,点击完之后你可以把线这个代码给他复在这上面来,然后可以选择一个函数, 你可以在这个拜他一问,记住我们现在这个代码名称到这个内容里面,然后可以选择一个内容,就是选择这个我们刚刚所新建这个方法,我们刚刚新建的方法名称就是这个开始游戏按钮,然后选择之后,这个时候我们再点击开始游戏,我先点击这 开始按钮,然后点击这个开始游戏这个按键,你就能看到在我们现在屏幕里面就会出现这个开始游戏的这么一个 debug 信息,就是你可以通过这种方式来设置我们现在这个按钮,它的试键就是你首先可以先新建一个脚本, 然后新建完一个叫本之后,这个时候你可以创建一个方法,然后这个方法必须得是一个公开的一个方法,然后公开这个方法之后里面可以写些逻辑,然后写完这个方法之后,这个时候你可以把线这个代码可以拖动到线这个物体,现在试图里面, 或者是你也可以另外也可以新建一个物体,然后把这个代码给拖到现在这个地方来,然后把代码拖着之后,你可以选择这里面一个方法,然后这个方法就是我们刚刚新建这个方法, 然后当你点击这个开始游戏之后,这个时候晕醒就回掉,我们现在这个方法就可以执行现在这个内容。好,我们先只是输出了一个第八个信息,然后我们现在就要使用另外一个接口 来实现这个场景切换,就是现在这个 cs manager, 然后这个 cs manager 里面的话,他会有一个接口,然后我们可以使用线这个接口里面的一个点 load 这个方法,然后 cs 这个方法,然后输入一个场景的名称, 然后输入这个场景名称之后,我们就可以来加载这个场景,然后再加上之前的话,我们还得先确认几个事情,首先就第一个就是我们现在这个场景的名称,他是否是叫刚刚那个名字,然后可以点击我们这个 sense 里面,然后这个会有这个奥特多 sense, 我们最好还要把它改个名字吧,给他改名叫做是 m a i n s c 一人一,刚刚那个名称是英挺,他新建时候默认那个场景名称啊,然后把这个名称给他改一下,然后改完之后这个时候我们还做另外一个操作,就是我们需要把游戏导出之后,我们现在想要进行游玩的场景,我们需要在比如的赛艇里面 这个范文件里面,然后有一个导出设置里面需要选择这个添加公开场景,我们得把当前这个场景给他添加到我们现在这个列表里面,这个时候我们再可以进行这个 sans manager 这个 loses 这个接待场景, 然后之前那个 man since 的话,那个主要场景是已经被添加过了,因为他是我们一开始游戏创建的时候一个默认场景,所以这边已经有了这个内容了。然后我们现在这个场景是我们自己新建的,就在自己人工手动的给他添加一下,然后另外这里面还会有个序号, 这个序号就是当我们游戏开始之后,他默认所加载一个场景和顺序,我们可以把它往上给移动一点,这样子我们游戏一开始进入之后,他就会默认先进到这个 stacss, 就我们先开始游戏这个界面, 然后我们点击这个场景,然后可以点击一下开始游戏,然后点击这个开始游戏,这个时候我们就会切换到我们 游戏这个基本里面来,然后另外的话还会有一个退出游戏的一个按钮,我们可以把这个按钮给他直接复制一下,然后往下移动一点,然后把取名为是退出按钮,然后把他的文本给他改一下, 然后这里面这个按键的这个事件的话也要更改一下。我们回到这里面,然后会再新建一个方法, 然后这边会执行一个 app 推身点,然后点击这个退出游戏,这个接口的内容就是表示我们游戏的退出,就是当我们按下这个案件之后,这个时候游戏就会执行这个退出的这个命令,然后我们就离开这个游戏了。 然后我们现在是游戏引擎里面,所以说现在这个接口在我们按下按钮之后,他是没有作用的,我们就可以先写上一个第八个信息,然后这样子我们现在这个游戏主界面就已经写好了。


本期视频给大家带来的是 unity 二零二一点三的基本开发知识讲解。 首先打开浏览器,进入 unit 官网 unit 点 cn 右上角登录自己的应急 id, 如果没有的话,记得创建这里,我们直接登录, 点击下载 unitty。 在这之前我们需要安装 unity harbor, unity harbor 是用来管理 unity 项目 图以及对应的编辑器版本。这里我们选择 minus 系统,点击下载,双击安装即可。这里我们安装过了,所以不再安装。 我们来看一下 hub 的界面, 在这里我们可以看到自己的项目以及编辑器版本。这四个是我比较常用的版本,大家可以用作参考。 本节课我们需要用到的是二零二一点三点二六,下面我来看怎样安装。第一种方法 是在 hobb 里边安装,直接点击安装编辑器,安装对应的版本。 第二种方法是回到官网里边,点击长期支持版本,点击二零二一,点击三点二六,它后面的 hub, 从 hub 下载, 它会自动回到号码当中,这里显示我已经安装过了。我们换一个其他的版本,比如说三点二七, 点击搜号吧,下载稍等片刻,它会自动盗用这 的安装菜单。 在这里我们要提前说明, unity 使用的是 set up 语言,所用的开发工具是 vs, 那么我目前用的是二零二二的版本,我也比较推荐这个版本。这里我们只需要一个即可,所以我们取消 在下方的平台。第一个安卓平台,如果你需要开发一个安卓平台的项目,记得勾选 下方的这个 windows, 这个是我们需要必须要勾选 开发一个以 windows 平台的一个项目, 中间的文档,记得取消,如果不取消的话,它的安装会比较慢。下方的语言包我们记得勾选简简中文,点击安装即可。 如果安装过程中发生的这种警告,你可以把它停止安装,再重新安装添加。重新添加模块 可能是由于一些网络的原因会安装失败,一般多次安装之后就会解决这个问题的。 下面我们来创建一个新的项目,点击新项目,选择三点二六的版本核心模板,选择三 d 项目名我们取为 house, 位置可以自行选择,在这之前我先回退一步,先把它复制过来。 安装这个编辑器的时候,我们可以选择位置,可以把这个放到自己 d 盘,一定要不要,一定不要放到 c 盘,当然 可以在这个里边点击配号设置,选择项目位置,安装位置,下载位置以及一些外观许可证。 如果发生了这个许可证过期的现象,记得添加。选择一个免费的或者是学生版,也可以选择序列号。我们再回到刚刚的新项目, cross 三 d 核心模板 p n 二六 这里我们取消这个版本管理。版本管理这个是需要一个团队 多人协作的一个,我们不需要,取消即可。点击创建项目, 我们稍作等待。 当编辑器打开的时候,你的界面可能和我的不一样,在这大体上都差不太多,我们可以先点击右上角的这个布局,我们选择默认 来绑上一个统一性。 首先我们来认识一下界面左上角层级面板,在这个里边有场景, 有 main camera, 一个摄像机,一个 directional light 定向光中线是一个场景的一个视图,顶部是工具栏以及侧栏。方向标 右侧是个检查性面板,我们经常称呼它为详细面板。 左下角有个项目选项卡,里边有 assess 文件夹一个场景, 我们可以通过拖动下方的这个圆点可以改变它的这个大小。 控制台在这个里边会进行一些输出,有一些警告或者报错。游戏窗口,也就是我们点击播放的时候会呈现这一个窗口。 之后我们可以点击一下编辑首选项, 刚开始的编辑界面可能是全英文的状态,其实我们下载了那个剪辑中文包,我们需要点击这个, 如果是英文的话,他可能只是显示一个英文历史,我们把这个跟进去。语言 选择简介中文, 当你选择整体中文之后,你可能会发现只有部分这个文字变成了中文,那么这种情况你就需要关闭编辑器,重新打开一下, 我们再回到这个手选项, 在这个里边点击外部工具。首先查看第一个外部脚本变频器,也就是我们安装的这个 vs, 如果这个地方没有的话,你需要点击浏览找到你这个 vs 它的这个安装 它这个文件指定到 e x e 文件正常好像是一个 d e v 吧, d e v 为命名的一个文件, 在下方查看安卓,如果刚刚你勾选的这个安卓模块,你必须要去查看这一个地方是否有警告,如果有的话,说明你安装有错误,你需要把安卓模块卸载重新安装, 如果没有的话,就不需要管 在外部工具。这就需要注意这两点,第一个是他,第二个是他 必须要注意。 其次,如果你觉得这个整个变频器自己比较小的话,你可以点击这个 u y s calling, 在这个里边儿可以更改缩放, 使整体这个界面能够大一些,看起来比较方便。 那么下一步我们点击游戏窗口来固定一个分辨率, 默认它都是一个 free aspect 的这一个模式,我们点击它,我们可以选择一九二零乘以零八零或者四 k 的这 根据自己的电脑实际情况进行选择, 选择完以后把缩放的这个拉到左侧, 在它的右侧有一个 play focus 的,点击它里边 rack 最大。如果你不点击它的,它是默认状态下,比如说我们点击播放, 它会只在这一个窗口儿下进行播放,选择最大, 他会充满你的这个变声器。那么上方这三个播放 三个按钮,一个是播放,一个是暂停,这个是逐针播放。 好,本节课就先到这里,下期视频再见。


那我们接下来来看一下怎样给场景添加 ai 的汽车,那么之前呢,我们的赛道已经固定好了啊,那这个赛道呢是不能再去进行编辑了啊,因为我们现在是这个免费版啊,如果想要在编辑的话,可以去 购买正版的这个收费板,那么我们现在呢这个车子呢已经是能够在这个赛道上呢啊去行驶,那么接下来呢,我们需要去添加一个 a i 的一个汽车,那么 a i 汽车我们可以看一下他是所在的位置是在哪个目录, 我们可以找一下 标准资源包,现在才写,然后里面的 vivo, 然后还是找到卡,在卡里面呢是 fax 啊。第二个汽车,这个呢就是 ai 的汽车,那么我们可以把 ai 的汽车呢拖拽到场景中, 然后呢我们把它摆放到 我们的汽车的位置,我们可以看下我们的汽车在哪里啊?在这 啊,这个汽车是可以旋转的啊,直接可以旋转位置, 那摆放好之后呢啊,注意把它高度呢调节到离开地面啊,如果稍微高一点没关系,他会掉在地面上,那么接下来呢我们来运行一下看一下 啊,我们可以看到这个车呢他会自动行驶啊,但是他是没有目标的啊,也就是说他会原地打转啊,那为什么原地打转呢?因为他的他的这个 ai 呢,其实很简单,也就是你给他设定个目标,他往那个目标开就行, 那么我们可以看到我们先把游戏停掉,我们先看看一下啊,我们可以我们可以看到啊,在这个车的 ai 的这个车的里面啊,跟我们的这个车的这个组件是一样的啊,但是呢在他这边呢多了一个叫做 car a i ctrl, 然后呢在这个卡 a i ctrl 里面呢,有一个叫做 他给他给,那么这个他给他呢,就是啊,他的目标,如果说我们修改了这个目标啊,他就可以朝着新的目标走啊,但是我们现在要他做一些复杂的事情,并不是说让他开到一个地方就结束了,我们是想让他能够绕着赛道开啊,那绕着赛道开呢, 可以看到他现在当前的目标叫做 vip, 他给啊,所以这个地方我们就不要去改他啊,不要去改他,我们改的是什么呢?改的是他底下的这个微 换一次揣克啊,揣克,注意,揣克是需要一个一个赛道的啊,也就是说一个赛道上面有一个一个的道路点,那么这些道路点呢,可以引导这个车去完成这个路线。 ok, 那我们现在呢就去创建一个 赛道,我说的赛道是不是赛道的模型啊?是他的那个赛道的道路点。 我们现在呢先新建一个空对象,在 gmox 这里创建一个 mt, 然后呢我们把这个 mt 呢给他改个名, 是啊, 叫赛克啊,这个是他的赛道,是他赛道,那么在这个 赛道就空对象的理念啊,接下来我们就要去见他的那个道路点,道路点,那么首先呢,我们先要去给他添加一个组件啊,选中这个赛克,然后呢在这里呢, 哎, comeond iadcome 添加一个叫做你可以输入一个, 这个呢就是一个组件啊, 是用来创建道路点的,叫 vipons。 好,然后呢我们就可以在他的里面啊,在这个 siri 这空对向的里面去创建道路点了,接下来呢我们在这个空对向上右键 threat mt chrigmt 创建一个空对象,那么在这边右键创建的空对象和这个上面菜单里创建的空对象呢?这个是一样的啊,但是在这边创建呢,他就可以作为这个塞克特的植物体。 然后呢我们把这个跟猫这个他的位置要摆放一下啊,这个很关键啊, 摆放一下他的位置啊,比如说我们 a i 的车是这两,是吧?那然后呢,我们就把它放在这个车的前面 啊,让他第一个点先去这个点,那么点的这个旋转方向有没有关系呢?其实是没有关系啊,这个这个是没关系的,没关系的 好,然后呢我们现在呢第一个碟摆放之后,我们看一下在三克,在这里我们选择他的副对象, 选择这个之前的那个空对象,这个也就是我们加过组建的那个空对象, 那么在这里呢,我一碰到这边呢,我们就需要去按他的按钮了啊,因为他的这个植物体他已经有了,他叫啊, 哦,就那也就是说他的植物体呢就可以被使用进去,被使用进去啊,我们先按第一个啊,这样子呢,这个第一个点就被添加进去了啊,然后选第二个 out 软件, 也就是说给他重命名,给他重命名啊,然后呢按照这个他的次序啊,放低所有的,好,然后我们按一下重命名,那么可以看到他的名字呢,就变成了,我一碰他零零零就是道路点,零零零,也就是这个,你看他名字变掉了, 好,现在呢他就已经被计算进去了,然后呢啊,当然现在只有一个点,对不对?我们还要进入到我已破你的零零零,然后呢用 ctrl d, 注意 用 ctrl t 去复制一个,我们换一层零零零去复制一个,然后呢把它调整一下位置啊,他现在是在弯道里,所以我们的那个点可能要多一点啊,让他往前移动一点之后呢,可以看到这两个点现在是 分开的,那么有了第二个点之后呢,我们再去选择付对象, 再去选择扶对象,然后呢选择这两个按钮,还为什么每次都要这样做一遍呢?如果说你一一起做好,就是整个赛道的这个植物体的点一起摆放好 是可以的啊,但是呢他的顺序呢,在自动命名的时候有可能会不对啊,所以说我们应该是一个个来是最保险的啊,然后第二个 好了之后呢啊三 uzi 凹翘用进去了,并且凹凸润嫩哎,这样子第二个就会变成零零一,而且有趣的事情发生了啊,这里会出来一个什么出来根线, 这根线呢?就是啊,两个点就连成线了啊,他就是帮助你去识别这个道路点,当然这个是可以改的啊,可以改的。好,那接下来我们再去创建一个在零零一这里,注意在零零一这里我们去恳求地, 然后再移动一下啊,如果说是大直到你可能就一个点就行了 啊,当然在移动的时候要注意这个,哎,从侧面看一下啊,是不是钻到地底下去了啊, 所以要把它抬起来啊,要把它抬起腾空一点没关系,但是最好是不要在地面的下面啊,包括刚刚的那个点零零一,零零一呢,也有点偏低了,是吧?你也可以把它抬起来。 ok, 那么第三个点复制出来之后呢,在三颗的这里回到三个, 然后还是按照刚刚的 ipudio 七二的以及奥拓软件按顺序,第一个,第二个按钮都点击一下。 好了,我们现在看一下这个黄线发生了变化,哎,什么变化呢?他变成了一个圈 是吧?变成个圈,为什么变成一个圈啊?用三个点可以连成一圈啊,可以连成一个三角形,那么 一直增加点,最后呢,我们这个赛道就会变成一个环形区,注意我们现在不要把它运用到车子上, 而是应该是要不停的去重复这个动作,重复的添加点,然后摆放位置,一直到我们的整个的赛道摆放完成,然后我们就可以运用到这个车子里,运用到 ai 的卡里面, 然后我们再复制一个 ct, 如果是很直的直道呢?你可以啊,距离远一点啊,你只要保证他不会开出去就行。 大家注意要转一下视角,看看是不是串到地底下,然后他的位置呢?是不是正确。好,再次选择 sex, 然后我们按第一个,第二个, ok, 那么接下来就是我们具体要做成赛道了。



嗯,好了,那么接下来我们就要考虑这个,呃材质的一些一些特殊性啊,比如说反射,然后包括像灯光,还有就渲染,我们要考虑这些东西了啊,那么怎么样让这个 游戏的画面啊,或者说我们这个程序交互程序的这个画面能够提高一个档次,那么需要去给他添加一些东西,比如说,嗯, 灯光啊,那首先我们也需要添加一些灯光,是吧?那这边呢,其实我们还没有去设计过这个灯光啊,那我们可以简单的去设计一下,比如说,嗯,我们可以在这个 电视柜啊,电视,电视机这里啊,电视机这里我们可以放一些,可以放一些那个 呃射灯,电视机的这个上面可以放一些一些画,是吧?下面这边可以放一个电视机,然后呢?呃 床头我们可以有,比如说床头柜啊,上面有比如说台灯啊这些东西,但是我们现在呃还没有,还没有啊,那我们先在没有家具的情况下,我们先看看这个灯光,室内灯光怎么去做? 那么我们现在呢先加一些室内的灯光啊,在室外大家知道就是有一个天光,这个天光呢是呃模拟太阳的,他只要一个就可以了,那他是室外,但室外打到室内之后,室内没东西了啊,所以我们需要室内的灯光。那么在这边呢,我们需要去添加一个, 我们可以加一些三 d 的对象啊,比如说我们加一些,呃 圆柱,我们可以拿这个圆柱来模拟什么呢?模拟这个灯, 我们可以拿这个圆柱呢去缩小啊,那这个不需要网格啊,不需要那个胶囊碰撞体,所以在这边组件这边呢,选择齿轮,然后移除组件就可以。 我们放个小的筒灯,小的那个顶灯, 但是这个就是做作样子啊,这个东西其实你真的要发光还是要靠这个 灯光来做的,放在这个位置, 然后呢在这边呢,我们就放一盏真的灯光,是吧?当然我们在顶上,我们还需要有一盏灯啊,在顶上呢,一般来说有很多这个灯是那是掉灯,是掉下来的是吧?然后或者有一些是吸顶灯,我们简单一点,我们做个吸顶灯好了, 我们把这个刚刚那个圆柱体复制一下, ctrl d 复制一下,然后把它移动出来。 哎,我们做个这样子的灯,太大了啊,小一点 好,然后我们就考虑把这些灯打开,嗯,我们顶上这边电视机这边我前前面讲了可以放一些射灯,是吧?我们可以放三个,放三个圆柱啊,把这圆柱复制一下, ctrl d 然后复制出来,然后我们做这种 筒型的射灯, 还有一些旋转, 一般都是这个样子,是吧?然后有一根那个呃轴,把它撑住,把它再复制一下, 而且标准做法的应该应该是把这个三 d max 里面的这个模型啊,或者三或者玛雅里面做好的模型啊导进来啊,这标准做法,这边的这边建模其实是不是特别规范啊?只是说能够先简单的做一些效果 好,这个是一个灯,那么呃,我们做了这么多啊,现在就是有一点乱,大家可以看一下。呃,我们这个地方你看这些都是叫 cube 啊, sellinger 这些模型都没有去归类 啊,是什么是墙啊,什么地板啊?或者说我们这个就是,呃,房子啊,对吧?我们应该应该归归类,不然的话他越来越多,我们放那个,后面再要放一些细节家具啊,什么就越来越多乱了啊,所以我们这边要归下类了,因为这个灯,我,我做到这个灯,我想起来啊,我们这个灯 它有两个部件,这两个部件呢,它应该是连在一起的,应该是有一个副物体的,对不对?所以我们应该就是先整理好,先整理好啊,所以呢,我们建一个,我们现在建一个空物体啊,在这个场景中我们建一个空物体, 游戏对象创建空对象,创建一个空对象 game object 啊,然后呃,随便把它放在哪个位置,放在房房子中间好了,它就是一个什么,就是这个 里面的这些墙面啊、地板啊这些东西啊,我们就叫 building, 起个名字叫 building。 然后呢我们把这个这些,我们前面做的这些乱七八糟的这些 cube, 这些房子的这些东西啊,全都丢到 building 里面,全部丢进去, 全部丢进去。好,然后我们刚刚建的这些是什么呢?是灯光,是灯光,所以我们再建一个,再建一个空物体,创建空对象。好,然后这个呢,这个就叫做 light model, 为什么不叫直接叫 light? 因为我们这个 light 的时候,我们准备放真的灯光在里面,是吧? 这些都是 light 的模型啊,灯光的模型,所以你就把这些模型就拖进去。那么像这种啊,有几个部件的模型,我们还需要给他建一个服务器,或者呢?我们可以啊,把其中一个作为服务器,也就是说比如说这个桶 把它拖到这个,哦,不行,出问题啊,因为发生过旋转了啊,发生过旋转了, 如果我把这个投进去也不行,那我再建一个空对象,在这边游戏对象创建空对象,然后把这个空对象放到 放到它上面啊,作为一个副武器,这样子好,然后这个呢,把它拖到 light model 里面,作为整个 light model 的子物体,那这样子就整理好干净,是吧?那我们把这个 get mobile 的起名叫 sport light 是错了, sport light model 聚光灯的模型啊,丢进去好,那么这样子,这个复制的话,我只要复制它的附体就好了,主要就是放了,就是为了这个,然后你就 呃我看看啊,往这个方向打,它可以旋转,可以往下往下打一点,这样子 好,然后我们用 control d 再去复制复制它的负物体就可以了,对吧? control d, 那这个是打什么呢?就我们可以把这个地方放一些画啊,这个反正是挑高的,是吧?那个下面放个电视机,上面放一些画,那用那个灯光打一下,那么这个灯光呢?我就可以去见真的灯光了啊,我们接下来我们见真的灯光,我们看室内的灯光,你可以用 呃游戏对象,然后灯光你可以看一下,上面有这个。 呃,定向光,定向光,其实就是这个 sport light 啊,就是太阳,就是太阳。那么还其实我们是平时叫平行光的啊,他这个叫翻译过来的定向光。那么室内呢?我建议用这这种普通的灯呢?用点光源, 大家用过 max 的应应该会知道,这个就是像那个 max 里面的 almy 一样,就是一个点光源 啊。如果说其实我打光的时候应该不应该把这个打进去,是吧?这个我们回头我们呃要改一些东西啊,要改一些东西,就是说让这个灯光啊,不要去照 这个灯啊,因为我这样一打它有可能会把这个灯的影子给投上去,那其实是应该是这个东西本身法, 对吧?那这个我们回头改,那我们先把这些这个地方啊,我们再复制一个点框 ct 这样子好,然后这个地方呢有聚光灯啊,所以我们在这个上面 啊,我是按 f 居中的啊,然后我们在这个地方我们创建一个聚光灯,第三个啊聚光灯, 然后呢我们把这个聚光灯呢稍微转一下, 按住 ctrl 键我们旋转一下 啊,那么这这个聚光灯啊,他是有一些有一些参数的啊,现在他这样打下去呢,可能这个范围啊,就感觉会比较 比较这个,呃,光圈会比较小啊,我们调一下,调它的这个范围,把它从十调大一点 啊,不是范围范围,是他这个打的距离啊,不是范围,是看一下,是他的角度啊,角度,第二个,第三个参数角度啊,打成这样子是吧? 这样差不多挺好看的。好,然后我们把它 ctrl d 复制一下, 在 ctrl d 复制一下啊,这里出问题了啊,有同学会问,哎,为什么第三个灯就不亮了,哎,也许有的同学电脑上会亮啊,这个是根据电脑,呃,就是根据你这个里面引擎的设置里面来的啊,他是这样子,他的现在默认设置是他的实时灯光啊,就是 聚光灯他不让你多,他比如说你开车,你开车你放两个聚光灯实实的,是吧?那但是你这个舌头灯 如果说你要再多的话,他现不给你显示,但是你也可以把它调多。但是对我们来说呢,我们是看最后渲染的效果,因为这些东西都是不动的,不动,所以我们渲染一下,那渲染的话或者说烘培啊,烘培的话 这个所有的灯光它都是会最后会显示出来,所以这个地方其实没关系,没有关系的,那大家就,呃把这些灯光呢给它复制出来,复制出来,然后把位置呢都摆放好啊,我们然后我们再去调这些后面的这些细节 啊,大家记得要存一下啊,这个我们做了这么久啊,都没有保存过啊?这个尽量大家习惯性的按一下 ctrl s, 虽然说 unity 不太容易崩掉,但是呃,也说不准,是吧?万一有一个什么程序开启很大的,然后内存不够了,一下崩了, 所以大家存一下。好,现在把灯光摆放一下。

上一节课的话呢,我们给大家讲解的这个 unit web request 这个主要的一个结构,对吧?以及使用他的你的这一个基本的三个步骤,好,那么接下来的话呢,我们来给大家来看看,我们要发送数据到服务器,我们要如何来做 好。上一节课的话呢?我们从百度上面直接把百度的那个网页的数据呢给他拉取下来,但是呢,有时候我们经常做游戏开发的时候,肯定光这样还不够,对不对?举个例子啊, 我可能得了一个很高的分数,我需要把这个分数存到游戏的数据库里面来,那这个时候你就需要把这个数据发往服务器,服务器就得要来处理你这个代码,然后呢再把你的数据存到咱们这个数据库里面来, 所以这个时候呢,我们有请求,哎,那么服务期就会有响应啊。接下来, 然后呢,我们就来给大家来编写一个服务器的 get 的一个响应,好来咱们的服务器代码,我们如何来编写的 get 的响应呢?调一下这个 app 的 get 函数,这个呢是我们的请求地址,比方说我们的这个不露的 啊,上传一个数据,好吧,不如说逮他,哎,就是我们的这个地址好,然后呢这个就是我们的处理函数,我有一个请求对象,有一个 response 的这样一个对象,能理解吗?哎,这就是我们一个注册一个的请求, 也就说我在这个地方还有一点 get, 就注册一个 get 请求,当我的客户端有向这个地址来发送一个 get 请求的时候,就会调我这个函数,客户端发过来的对象是我这个请求对象,我要回 数据给他的啊,就是我们的瑞士对象,比方说我的瑞士点正的,哎,我发一个想说博弈创维,哎, unit, weave request, 好,我发一个这个要回来,这是 rans 点剩的发回给我们的这个客户端。好,那么这个时候我们在这里的这个讲 hgdp 的请求,一个是请求,一个是响应,那么这里的响应地址就是什么呢? hgdp 他们的这个什么啊?幺二七点零点零点幺六零八零,然后的话呢? wta 不差了,明白了不,那么我在这里添加了一个响应地址以及函数的这个操作,当有这个地址的请求到这个地址来的时候,就会 响应得到这个函数,所以就走这里,明白了吗?好,所以这个时候呢,我们就可以在这个地方来加上我们的这个站点啊, hpdp, 二七点零点零啊,我在这里呢,给他,嗯,给他写几个函数吧还是,好吧,阿伊姆雷特在这里呢,是 get, 哇,盖的百度,哎,好吧,盖的百度啊,我,到时候呢你,你立马呢就好好看一下。好,那这里面的话呢,是我们的盖的百度 好,给的百度没问题啊,所以在这里呢,我们是给的百度。好,这样的话呢,我们是 get url, 这是 get 这个啊,不漏的推他 上传一个数据,哎,我就叫他就可以了,所以在这个地方呢,我就是扎的很很很 row, 然后 ten 咱们的这个艾特阿波罗蒂塔就可以了。好,那么这个地方呢,是我们的响应地址,你的服务器,你要往哪个服务器地址上来啊? 比方说二七点零点零点幺,然后呢这里是六零八零,然后呢这个就是我们夫妻要响应的这个地址啊, 阿布罗迪的,然后呢你就把它发过去,发过去的话呢,服务器给你回什么,你就在当漏这里能够拿得到。好,我们来看一下服务器给你回了什么,好不好?来对面呢,咱们还以后给他回一个数字啊,重新启动一下咱们的服务器, 进启动器啊,服务器改了以后呢,你一定要记得重新启动一下他,好吧,来这个时候呢,我们再来启动一次, 好,启动起来以后呢,你看这个时候你得到了,就是博弈创维 you need to web request, 哎,因为你从这里面回给他了, 明白了不?好。那么接下来我们如何来接收用户的数据呢?用户的数据都从这个 request 里面过来了,这个时候呢,我们就可以来打印一下我们的这个 request 里面的这个对象, 能理解不?打印一下我们 request 里面的这个 request, 这个对象,好,那你就能够看到到底扣当一个请求给我们发过来哪些数据?好,我们一起来看一下啊,好,然后呢我在这个地方呢,我 再来跑一遍,来启动一下,跑一遍啊,好,这里启动起来以后呢,你在这个时候,你看这就是我们打印出来的请求对象,你看这个里面就会有很多我们的这一些数据,包括他的说可以的这些东西,对不对? 好,然后的话呢,还会有我们的很多的一些像我们的这些 ul 啊,相关的一些东西,对吧?你可以看一下, 是不是看到没有我们的一些设置啊这些东西,所以这个呢就是我们 hdp 的一个请求,明白了不?请求的这个数据对象包含我们发过来的协议头啊,这些东西,你看 就在这个地方,我们的后斯特啊,对吧?我们的这个协议头啊,这些东西,然后呢他发过来是哪个东西发过来的?是用你的外部 request 发过来的,对吧? 哎,这些点,所以呢,我们就可以通过 rank 来拿到我们的数据。好,那我们如何来给我们的服务器来传一个自定义的数据呢?哎,那么这个时候呢,我们可以这个样子来做啊,注意, 如果你要带参数呢,你就打一个问号,然后呢用用户名,比方说等于这个 break, 用户名啊,假设你就等于这个 break, 然后呢如果还有其他的呢,你就加一个与密码,等于这个一二三四五六,他是这个样子的,好吧, 那这个样子有了以后呢?哎,我们要拿到后面这一节参数怎么办?问号就是我们的 curi 查询,所以呢我们就可以把这个查询的这个参数呢给他拿过来 curi, 嗯,就这个样子的 来跑一次,运行一下,可练一下啊,然后的话呢,咱们的这个 no 的起来,然后呢我们再往服务器来发这个数据传过去。好,这里面的话呢,还是回这个 sus, 再看服务器的打印,看到没有, 就把你的这一个用 name 名字 brake, 用八十万的传进来,那你就可以把这些数据呢写到咱们的数据库里面去, 所以这个时候你上传分数,上传什么东西呢?你都可以使用这个来进行一个请求,然后呢在服务器上呢写一个这样的响应,然后呢你在这里呢,再把它的这个数据呢横到数据库, 可以了。好吧?这一点的话呢,我们这里就完了,明白了没有?这就是发送数据到服务器,我们就给大家讲完了。好,那么今天这节课咱们就到这里了,谢谢,再见。走了,拜拜。

各位小伙伴们大家好,今天要给大家聊的就是如何让大家在三分钟之内就做出一个像我现在操作的这样的一个三 d 第三人称视角的游戏模型。 我们还可以把里面的人物替换替换成咱们自己建的模型,比如说我们上次用的这个死白搭们, 哎,这快速的就可以进行一个项目的设置,这里面的这个机器人是不是看着很眼熟啊?哎,对,他就是我们在 ccnma 群里面使用到的这个机器人,他们用的是相同的一个资源包, 对,这是说我说的资源包了,所以说他也不是我们一点一点从零开始创建出来的,而是直接从那个 ics 到里面下载选择,然后在我们这个 windows 拍 window package manager 里面直接下载安装的一个资源包,打开浏浏览器,先到 ss 道上面搜索,搜索什么呢? stattasss 就行了,或者说直接搜索 st prussycarct。 还有一种方式就是用我到时候在视频底下给大家发个链接,在当前这个视频下面我会把链接放上去, 你点进来然后添加,我这是添加过了,他就是显示在有问题中打开了,另外再找一个那种免费的三 d 场景,我这里面找到的是 fantasy for forest environment, 也就是一个叫什么呀? 森林的一个奇幻森林的一个环境包,他也是免费的三 d 的,非常漂亮,也是把它选中然后打开就行了,或者说直接那个 添加添加,然后咱们在拍成 mang 点里面就可以选就可以找到了,这个链接我也会给大家发到当前视频下面。好,这两个暂时就够用了。到我们这里面打开 packy manager, windowprodune manager 啊,搜索,我们先把那个四十 prise, 就是第三人称,是这种控制器给装上,第三人称资源给装上。所以说搜索 status status, ceopulsecometer 了。 ceopolitancocolcometer, 第三人称角色的一个 控制器。你第一次肯定是只有一个当唠的,你点击当唠的,然后再引炮的就可以了。我这因为已经 装过了,我就不再重复操作了,大家可以试一下,很快的,他这个也没多大,才七十多兆。然后再搜索刚才那个反差 c, 一般只搜第一个单词就足够了吗?哎,我这里面反他 c 这个单词开头的包,我以前装加的比较多。那他第一页显示不全,你看右下角有一个 显示多少,你给他显示选中哦,就是全选全显示,然后根据他的那个名字来找 fantasy environment, forest environment 这个 freedam。 你如果要前面加的这个资源包少的话,你肯定找的很快了,然后也是同样的,当 in pot 就可以了。进来以后我们在这个 fantasy forest environmental 中, 我把这上面东西都先删掉啊,他默认的应该就是这个样子, 把其他的暂时先删去,他默认是这个样子。在哪啊?在我们的 fantastic forest environment free example, 然后找 scene, scene 是哪一个?戴墨镜,你把他双击就可以打开,打开以后效果就是这样的,他是一个森林,包括 脆很多的脆,还有什么呀?呃,特瑞地形,包括太阳光,还包括一个开门网,但是那个开门网我们要把它删掉,你比如说我先给他添进去,复原他原来那个样子 啊,他原先这样有一个开幕点,有一个主的摄像机,但是如果我们想要用到那个第三人称视角,那个摄像机就是视角跟随我们第三人称那个操作的机器人的话,你需要把他这里面的主摄像机先给删掉,然后 在这个兔子里面有我们的 status 的一个新增的一个菜单,哎,这三项分别是 reinstore, dependence, 我们当时装上的第三人称呃角色控制器,它里面还需要 有一些其他的附带的一些那个基础包,比如说是新内莫逊这个摄像机包,还有一些其他的。那如果你要当时装的时候,他这些底喷 nos 包,也就是依赖包没有装好的话, 这第一项就是瑞 install 底喷 densis, 就是重新安装这一些我们当前需要的依赖包,我这装好了,你就不需要管他了。第二个是瑞塞特斯尔坡斯斯达特 m 圈, 这是就是我们现在要用到的把这个第三人称控制器,包括他里面那些呃角色了,包括他那个摄像机了,包括他所有用到的东西都添加进来。这三个游戏对象,开门吧,这两个都是 是开幕式相关的。还有一个就是 plarrmocherplarrmochur, 就是我们要用到的这个什么呀角色的一个控角色了,就是他的机器人,机器人本身, 那我们为了避免操作的时候出失误,我们可以把这个给他分成两个不同的模块, 先新建一个空的给猫不见他,给他命名为就叫头儿人吧,或者叫以外门他或者叫 level 来吧,然后重置啊,他这已经重置过了,然后把我们除了这三个以外的其他的给他拖进来,就是环境都扔 到这个 level 里面,在新建一个空的,看一下他的菩提性什么,这都是没有问题的,都是出水的,哎。给他叫 player, 然后把我们 第三人称,视角控制器这些新生成的三个游戏对象给他扔到这里面,然后来我们就暂时给他 点上这个手指,就不让他那个禁止触碰了,禁止勿碰到,我们再操作的话就没什么问题了。这些都添加进来以后,其实就已经完成了,我们直接点击运行就可以操作我们这个游戏角色,让他在我们这环境里面游走了, 哎,整个过程实际就这么简单, 光影效果,声音都是现成的。 好,我们进一步的再来看一下这个项目, fantastic forest environment free example, 这就是我们这个后面导入的这个场景环境, 也就是草地树之类的这个包他加载出来的这些内容。而撒弹 ss 是我们主要的核心的 三 d 的决策控制器,它相关加载的这些资料在这个根部路底下有一个什么呢? pdf 说明文档,把它打 打开,它实际上里面包含了一些进阶的操作,大家可以自行去学习一下,它里面包括那个 s 链接也有。 他不光是支持我们 windows 进行操作,就鼠标键盘操作,他因为使用的是新版的这种音铺的 system, 他还支持快速的切换到这种手柄和触屏,手柄就是游戏主机,触屏就是手机 平板都是支持的,在这里面讲如何来操作,如何来调整,我们想要使用它自带的就是斯德 plus and ctrl。 二、自带的一个测试的一个场景的话,是在 statusstops and ctrl, 然后 sins 底下有一个 playground 的信,把它双击打开。好,我们前面的 ceo 一下,哎,这个里面就是他自带的一个相当于白膜测试环境, 点击 shift 是 red, 左边 shift 加上这个方向键是 red 空格跳 重力系统什么的都做的非常好,包括声音。 你想要在这个里面测试一些,有些同学不是说想要做那个第三人称视角的那种射击游戏或者公 游戏,你前期就可以借助这个包快速的来进行测试啊。还有一些同学想要快速的构建一些那种项目,比如说毕业设计或者说期末大作业的话,借助这个东西也是非常方便的。 关于这个第三人称视角控制相关的一些具体细节,我们暂时不去多说,你包括这里面的每个参数的配置,他包含的有这个 啊, cinematon 包含的有这个新版本的 input system, 也就是控制输入,控制那一套系统,我们到时候把这个输入新的那种 input system 和 cinematon 这一套东西都给大家 说完以后,按部就班讲完以后再来把这个第三人称控制器给拆解一下,从零给大家还原一下 啊,但是他前提需要一些,呃,扩展基础知识不说扩展知识有些那种底喷能 cs, 咱们这知识也有那个前置的一些知识,要把那一块都先讲完了,才能很详细的给大家拆开。 所以这一次咱们先讲一下如何快速的把这个第三人称里面 机器人角色给他替换掉,替换成咱们自己做的模型,然后可以让大家快速的来完成一个那种预定的第三人称项目,或者说快速的进行一个你的场景测试等等的。 那怎么来做呢?首先我们把这个需要的素材给下了,我还是使用当初给大家讲这个动画导入导出的时候用到这个小蜘蛛人吧, 哎,小蜘蛛玩他本身这个模型是从一个三 d 网站上下来的,是这个文件 他虽然说是已经瑞给的了,但是他还不能够直接在我们这里面用他这个, 嗯,应该算是骨骼绑定,不太符合我们当前这里面的需求,所以最好的是你重新绑定一次,最好最简单的方式就是把这个三 d 模型从三 d 模型网站,当时那个是 把这个模型从这个 scatch five 网站上下下来以后,然后上传到 mixamo 上面,让 mixamo 自动的给我们进行一个骨骼的绑定, mixamo 进行这种骨骼绑定,再下下来我们就可以直接用了,你就不需要在那个设计器编辑器里面一点一点的给它绑定骨骼了,非常方便。那我来操作一下吧。先 ablot, ablot character, 那斯莱克特,凯克特 fell, 我们把这个解压出来,只需要上传 sous 里面的 fbx, 因为他其他的也用不上,是吧? texture 他有自动不会在这个 mixam 上面给你绑,你需要把这个 tax 线到时候放到 young 体里面就行了。 他有一个处理过程,这个实际上就是上传加那个绑定骨骼的这个过程,创建他里面的这种骨骼系统,这就是处理好之后的,你看他明显是有一个这种前后观望的一个爱豆状态,这明显就是已经骨骼绑定好了点。 next, 其实这里面预览的时候你就可以下载了,当烙的,我们这选中 ibx for youtube, 然后 pose 的话就 tpose 就可以。当烙的 好,下载完以后我们把它倒进去。 这块的话,暂时 先不管他导入,我专门在新建一个文件加就叫 specimen 吧,然后双击右键 饮泡腾牛 s 一个是这个 tex 圈,肯定全都需要,要不然的话是没有那个表皮的,我们先把 tax 圈扔到这里面,然后再导入导入我们刚才下载好的那个 谷歌绑定,你看你要先把他才放,放进来的话他直接就把这个皮就自动给你蒙上去了, 他在同一个文件夹自动就会找到了。如果你要是先没有这个胎线,先倒进来的是那个模型的话,他模型还是一个白模,那我们直接就可以把它拖进来。哎,可以用,我们暂时先不拖 我们。嗯,直接就把它绑绑住得了,但里面需要先更改了一点啊。 moderate, animation, material, 我们只需要动瑞格,瑞格把他的爱美信太普换成给我们拿的,然后 opla 别的暂时都不需要动, 别的都不需要动。然后这一块操作比较重要啊,选中我们的 pla r m 曲 点右键,在 profile 里面把它安排的 complete, 我们需要把它里面的这个机器人给他替换, 替换的话他本人这个不是 fab, 是一个浴室架,浴室架的话你没法动,你要一动的话,所有东西是不是都全动了?所以说我们先把它解绑,就是说当前这个游戏对象 和我们玉之剑解绑,保留他那个玉之剑里面所有东西,但是和玉之剑没有任何关联了,现在这就是玉之剑安排他的一个过程,这以前我们说过,然后点开他在 geometry 里面把这个 mch max, 就是把它本身这个模型给删掉, 然后把我们这个新的模型拖进来就行了,拖到这个我们吹底下,你看还有吧? 但他这个比较大,他当时设置的时候,我估计他用那个变音器可能是三 d max 吧, 他这种建模的时候的比例和我们用题里面不太一样,那你就根据自己的经验给他 skill, 你比如说我全部都给他射成零点五, 零点五,如果不够的话,零点五,零点五差不多了吧,零点五可能稍微有点低,零点七 啊,这样差不多,那你如果要是怕不太一样的话,你可以再把刚才那个模型放上,比对着来进行一个缩放,要等比缩放啊,缩放好以后 到这个 pla rm 圈上面把他的 avata 换一下,点开这个对象选择器,我们要把它换成这个 spatterman 上面这个他的 avata, 然后运行看一下 效果啊,是不是又可以了? 哎,这就是快速的把自己的模型替换到这个三 d 的第三人称视角的控制器上,它里面其实包含了挺多东西的,可以快速的让我们完成自己项目的初始搭建。