好,这节课的话呢,我们来给大家实现一个 go scratch 的一个进度条,把整个进度条这一块呢给大家总结和说一下。 好,呃,那么首先的话呢,我们会分为三个点来给大家讲解啊。首先第一个呢是配置我们今天的显示模式为这种进度条的这种填充模式。第二个的话呢,我们来看看进度条的一些类型有哪些。第三个的话呢,我们就编写代码来实现一些倒计时,咱们怎么去做?好吧,来咱们就开始了。 好,首先第一个的话呢,我们来把这一个先把这个资源给他导进来啊,在这里的话呢,我导入一个这样的啊,棋牌常用的一些资源啊。我在这里呢新建一个咱们这个 gui, 在这里新建一个 gui 以后的话, 那,那在这个地方我在资源管理器当中显示一下,显示完了以后呢,我在这里呢就粘贴一下。好,粘贴来了以后呢,我在这里就有了,对吧?这两个东西。好,呃,有了这两个东西以后呢,我在这里呢创建一个咱们的这个空姐点啊,叫做一个座位 sit。 好,然后的话呢,在这里的话呢,我把这个背景 pk 呢给他放过来就是他了。嗯,好,接下来的话呢,我再把这一个进度条 timer 呢给他放过来就是他了。好, 呃,那么接下来的话呢,我们就来做这个 time 啊,好,怎么做呢?好,这里面呢,我就是一个八,对吧?一个背景呢?一个八就在这里。好,接下来的话呢,我们首先第一步啊,就是要配置精灵的显示模式。好,我们先来看一下精灵有哪些显示模式呢?有这个普通模式, 有这个普通模式,有这个填充模式啊,对吧?等等啊,来,我们一起来看一下精灵有哪些模式,精灵有哪些魔术呢?你就选择一个精灵节点啊,对吧?一个节点,一个精灵组件,然后呢这里有个 tap 啊, 大夫的话呢,有这个普通模式,九宫格模式,平坡模式和我们的这个啊填充模式费用的模式。 好,这里呢就是一共会有四个模式啊,我们先把它做好这个笔记好不好?好,那么第一个的话呢,我们的这个声孔呢,就是我们的这个普通模式。 第二个呢是我们的 surprise 啊, surprise 的就是我们的这个通常所说的九宫格模式,对吧?然后呢还有一个 tell, the tell 的话呢,就是我们的这个平铺模式啊,平铺模式好,然后呢这里面呢会有一个 field 呢,就是我们 这个填充模式,所以我们的进度条呢,就要采用这个填充模式啊,进度条呢是一种填充,所以我们采用的是填充模式, 好,按照这个比例来进行一个填充,采用的呢是一个填充模式。好,接下来的话呢,我们就来看看这个,那我就把它配成填充模式呗,配成这个 fu 的模式。好,那么这个时候呢,你会发现呢,我这里啥都没有了啊,等一下我来解释为什么 好,那么非偶的模式下面呢,就会有这个填充的类型,明白了吧?所以接下来的话呢,我们就来分析一下我们填充的类型有哪些类型呢?有水平填充,有垂直填充,还有我们的这一个圆形填充。好,我们先来看水平填 填充好,然后水平填充的话,这里有个起点是从零开始的,好有一个呢范围,那么这个范围呢,其实就是百分比,如果你是一呢,他就是全部百分之百的显示。 如果你是零点六呢,他就只显示,你看水平模式下看到没有?水平模式下呢,他只显示啊,这是我们的起点,非要大的在零这个地方,零呢,就在左边,对不对?零这个地方呢,就在左边啊,就就是他了 啊,这是我们的起点。然后呢,这里有个 feel 问句,如果你是呢零点六,看到没有啊,你是百分之六呢,他就显示百分之六十, 如果是一呢,他就全部显示完成,所以这个呢,就是我们的 hurry 啊,水平的这么一个模式啊,在这里好,那么同样的我们可以改几个东西,第一个呢,可以改这个起点 stat, 我就可以从 从一开始改起,好,从一开始这是我的起点,然后呢再往后面增零点六呢,就看不见了,对吧?那如果你把这个不要乱去改成负零点六呢?哎, 注意啊,他就会从这边开始往这边来,哎,反方向来,所以 feel range 的话呢,它有大小,还有方向往正往负,它是两个不同的方向,你可以控制起点和控制这个 feel range, 对不对?所以在这里呢,有个 feel start 和一个 feel range, 他们的取得范围呢,都是这个什么都是这个零到一,对不对?零到一啊?这样子的好,那么这一块的话呢,我们就有了。接下来话呢,我们就可以看垂直,如果你是垂直的话呢,按这个垂直的话,对不对?那我们就是这个样子的,比方说我们这里视力, 那好,这里是这个零点六啊,哎,他就是这个样子,从下面开始,你看非要是大的是零的话呢,从下面开始啊,走百分之六十的这个地方,哎,这个长度, 如果你是一呢,他就是百分之百,对吧?如果你是零点九呢,他就是百分之九十这样子的,所以这是垂直的一个进度条,所以他就包含了这个水平 啊,水平垂直,哎,这样子一个进度条,然后的话呢就会有一个扇形, 扇形的话呢就会有个中心啊,中心的话呢?零零是在哪里呢?是在这个左下角这个地方,这个就是零零的地方,哎,你一定要记住了啊,零零是在这个左下角这里,如果你想让他的中心为这个的话,对吧?他这里就是 左下角啊,就在这个地方,明白了不?左下角呢,就在这里。好,那么这就是零零。那如果说我们要做这种圆形的扇形的进度条,像我们的八分啊,这些东西怎么做呢?你就把这个呢改成零点五,零点五, 那么改成零点五,零点五的话呢,那么在这个地方我的中心呢就有了,明白了吗?这个地方的话呢,我的这个中心就有了零点五,零点五就是他, 看到没有零点五,零点五就是他,哎,那我这个地方的这个中心呢,我就在这里了,好,然后呢非要润举是零点九,就是百分之九十,对吧?好,百分之九十,他是什么意思呢?哎,他就是这个样子的,以这里面有一个扇形圆 啊,对吧?有一个这样的圆啊,圆弧在这里,然后呢百分之九十的话呢?哎,这是我的这个奇石角,这是起点 在这里百分之九十,我们一周是三百六十度,那三百六十度乘以零点九,那么就缺了这么多,明白了吧?这就是一个这样的扇形的一个圆形的这样一个进度条, 所以呢,如果你是零点五的话呢,你看他就只有走一半,如果是零点六呢,他就是走多少啊?你看零点六的话呢,就是一个圆形的这样一个东西,然后呢起点呢是在这里,终点呢是在这里,所以呢,这个范围扫过来就是 圆的一个零点六啊,这个扫完以后呢,你这个图片是什么呢?他就是一个什么,能理解吧?你这个图片是什么就是一个什么,好,所以这个呢就是我们的一个扇形, 所以我们很多的那种插圈圈的那种进度条,对吧?像我们的巴菲尔这些的话呢,我们就可以通过扇形来做它的一个百分比,能理解吧?通过扇形来做 他的百分比,好,那么这样子的话呢,我们就知道了这个进度条的这个进度的一个填充模式的类型,我们有水平,有垂直,有扇形。那么接下来的话呢,我们就来编写一个倒计时的代码,好吧,编写一个倒计时的代码,好, 好,我首先先建一个代码 来控制做进度条的什么精明节点,对不对? 精灵节点,那我将为了简单,我就直接把代码呢添加到这个进度条的精灵锁在节点上 啊,精灵锁在节点上, 好,如果说你的 正式的项目当中的话呢,你就可以直接把这个精灵所在的组建实力给他换得的到都可以啊,我在这里的话呢,就新建一个这样的代码,然后呢把它直接放到精灵这个控制条上啊,对吧?让他直接能够访问得到这个 surprise 的这个东西。好吧,那我就直接来开干了啊, 我就先建一个咱们的这个进度条,进度条的话呢,就 progress, 好吧,就这个样子的。好,那么这个时候的话呢,我就给他直接放到精灵所在节点的这个上面来啊,让他来控制这个精灵组建的进度的一个显示,来做一个倒计时。好,那么这个呢,就是我整个的这个点。 好,有了这个点以后呢,我就把这些乱七八糟的东西先给他拿掉啊,把这些乱七八糟的东西先给他拿掉,把这一注视都给他拿掉啊,好, 这些乱七八糟的都给他拿掉。好,那么接下来的话呢,我就是安漏的啊,安漏的 好,安漏的好。开始的时候,首先第一个呢,我们是做进度条,对不对?那么接下来的话呢,你要获取显示进度的精灵组建实力, 用力给拉精灵组建实力,所以这个时候呢,我们就会有一个 private progress 棒,对不对?他的类型呢?是一个精灵就可以了。 好, progress, progress 八好,那么这个时候的话呢,我们就是等于什么呢?点 get component 获取咱们的这个经典组件就行。 好,获取得到这个精灵组件以后呢,我们在这个地方呢,就可以来修改它里面的属性成员了。好,我们一起来修改修改。好吧, 那么修改的话呢,你可以有修改这个非要 star 的,非要 rang。 前面呢,我们已经给大家讲过这一个区别了,对吧?一个是起点,一个是方向,你可以修改起点 feel stop, 也可以修改范围 feel rang。 那前面的区别我们已经说过了, 起点在哪里?对不对啊?零呐,一对吧,你起点在在开始的地方呢,就是零,起点在终点呢,就是一,对不对啊?正一负一,顺时针,逆时针。比方说我们的非要乱挤水平的呢,这个正一呢就是从左往右,负的负一呢就是从右往左,对吧?垂直的。 那么呢,正一呢是从下往上,负一呢是从上往下,那么我们的这个扇形的话呢,我们的这个正一是什么 啊?上行的正一是什么?就是一个逆时针,对吧?哎,这是正一负一呢就是一个顺时针,所以这个呢,你的方向你要搞明白。所以有个非要 star 的,非要润举,非要润举的话呢,这里有个正副符号,你要特别的注意啊,表示呢,我们的这个方向,好,这个呢是我们的这个点, 所以呢,我们设置这个博格斯 respect 呢,我们就能够让他来干嘛了?来设置两个参数, 一般的话呢, feel star 呢,我们在这个编辑器这里设置好就行了,非要认证呢,我们要动态显示呢,我们就在代号里面来显示就可以了,比方说我要倒计时,好,那么这里面呢,我的 no ten 呢?我就可以是假设是 五秒钟,好吧,假设是五秒钟,好,那么,呃,我的整共的时间是五秒钟,或者是偷偷 time 啊,我的这个 number 呢,我是五秒钟,现在过去的时间,我是一个 pass time, 过去的时间, 对不对?我讲是是零,好,那么这个时候呢,我在啊,不对头,这里呢我就可以这个样子了。好啊,不对头呢,每次画面的刷新的时候就是他,对不对?好,那么这个时候的话呢,我就可以是这个样子了。哎,这是点, 嗯, this 点 pass the ten 加就会等于 dt, 对不对?然后呢不顺,我们的这个百分比的话呢,就是等于我们的偷偷探,对吧?得到这个百分比。好,得到了这个百分比以后呢,那我们就可以通过这个精灵来更新 这个,今年的话呢,就是我们的 progress 八点 feel ring g 就会等于咱们的这个跑线就可以了。好,所以呢,你不断的累加,对吧?这里面呢,我们要给个限制,如果这个 percent 呢等于一,那么我们这里呢是一,否则的话呢,咱们这里呢就是这个跑线,能理解吧?好, 那么这样子的话呢,我们在这个地方就有了,有了以后呢,我们来运行一下,走你。哎,你看五秒钟他就走满了。整个的一个进度条搞定。好吧,这个的话呢,就是我们整个的这一个啊,进度条, stay 啊,进度条 啊,对不对?进度条。好。然后如果你是倒计时怎么办呢?你要让它变少,那其实这个也非常简单,让它变少怎么办呢?嗯,一剪口线就可以了,所以这个时候呢,你再来看 变少,哎,他就变少了,对不对?倒计时最终呢变成了零,所以这个东西的话呢,你就自己灵活来控制和使用就好了。好,这节课呢,咱们就分享到这里啊,关注我的这个专栏的话呢,你可以学习到更多的 cosplay 的开发相关的知识。 好,谢谢,再见。
粉丝2317获赞4661


好,这节课的话呢,给大家来操作一下 cosplay 的如何来做这个 ab 包的一个资源加载啊,就是把 ab 包里面的资源呢,通过代码来读取出来,对吧?好,那么整个的话呢,我会分为四个点呢来给大家讲解。首先第一个呢,我们准备好速成, 准备素材的话呢,我在这里呢就是做了一个非常简单的一个这样的素材啊,这个素材的话呢,大概就是这个样子,我这里呢有一个小的拍进去, 然后这里呢有个 game 的文件夹, game 的文件夹下面呢有一个这样的扑克的这样一个图集,这里有很多对应的扑克牌,还有呢一个我们的这个背景啊,在这个地方。 好。呃,那么接下来的话呢,我们就来做这个 ab 包的资源加载。做 ab 包的资源加载的话呢,首先第一步你就要配置好 ab 包。好,那么这个原则是什么呢? 配置 ab 包的原则到底是什么?我先把这整个的这个给他拉大一点点啊,配置 ab 包的这个原则,等一下我把它改大一点点,改到二十吧,可能大家会好看一些。好, 接下来的话呢,我们来看一下配置 ab 包的原则。首先第一个的话呢,我们会把我们会按照资源的这个用途来分成不同的 ab 包,这样的话呢,哎,我们更新的时候 更方便,对吧?哎,如果你把所有的资源都放到一个 ap 包里面的话呢,到时候你更新一个 ap 包,对吧?你所有的资源都要更新 ap 包可能会比较大,同时的话呢,更新的时候也不方便,那么这个时候的话呢,我们会一般会细化咱们的这个资源包的一个颗粒度,那一般我会怎么分呢?做游戏的时候我就会把它分为基 来啊,分为送的呀,哎,分为咱们的这个游戏的这个资源呢,因为我们的角色啊,凯尔可德啊这样的东西啊,凯尔可德啊,对吧?还可能会有一些特效啊与范特啊这些东西,所以呢,你就按照文件夹来分这个 a 一包就可以了, 所以你看我在这个地方的话呢,就会有一个塞的白格子,就是我所有的这个资源包,然后呢下面呢就来分我的这个文件夹,那么 在这里的话呢,我的就是一个这些扑克的话呢,我就属于这个 game 的这个文件夹,所以呢我就可以来放一个,对吧?一个 game 的游戏的这样一个资源的一个文件夹。好,那么一般的话呢,我就按照这种文件夹来配,照咱们 ab 包就可以了, 怎么配置呢?其实非常简单,对吧?那接下来的话呢,我们来看如何配置啊?第二步的话呢,如何配置好?那这个其实就非常简单了,点击下这个文件夹,那么在这里的话呢,就会有一 一个选项叫做配置为邦的,你勾选上就可以了。好,然后呢,在这个地方的时候呢,会有一个邦的的名字,默认的话呢,就跟他这个文件夹的名字呢,其实是一样的, 你当然也可以自己来定义这个这个文件的一个名字啊,比方说你要定义成 migan 都是一样的,好吧,定义成这个 migan 都是一样的。好,那么这个的话呢,我们就是配置为一个 ab 包就可以了,你勾选上他好不好?勾选上他就 ok 了, 好,勾选上他以后的话呢,看你这个 ab 包就已经配置成了,明白了吧?所以这个地方的话呢,如何配置?就是非常简单,勾选上我们的这个 ab 包选项, 然后给这个资源文件夹呢,命一个 ab 包的名字啊,命一个名啊,命名,这样子的命名,这样子就是 我们的 ab 包的这个名字,默认就是我们文件夹的名字,对吧?默认就是文件夹的一个名字。好,那么这个呢是我们的第二个点 绘制完了以后呢,接下来我们就要加载 app 包,我们收获如何加载这个 app 包的资源呢?其实我们都是在代码里面加载,对吧?代码里面加载,接下来的话呢,我们就来加载我们的资源包, 这个时候的话呢,我们就先建一个这样的脚本就可以了,比方说我们是 reach manager, 好吧? reach manager, mg 啊,好, reach manager, 这样子啊, mg 啊, 哎呀 mg 啊,这样子。 race manager, race manage。 这里的话呢,我们就可以来双击打开一下,打开了一下以后的话呢,我们把这些乱七八糟的东西呢给他都去掉啊,把这些乱七八糟的东西呢给他都去掉,所以 这里面的话呢,我们是把它改一个这个好,然后呢就就把这些东西给他拿掉啊,把这些给他拿掉好,拿掉了一下以后的话呢,我在这里就干掉了啊,干掉了一下以后呢,我就直接开搞吧,然后说昂路的, 对吧? onload, 嗯,就他好, onload 的话呢,我就在这里。好,第一步的话呢,我们首先是要加载 ap 包,加载 ap 包怎么加载呢?那这个时候呢,我们是有一个全局单例, 这个单例呢,他是小写开头的,而塞得 manager。 我们前面讲过啊,小写开头的都是对象型,对吧?那么大写开头的就是类,它是一个呢?呃,塞得 manager 的类型 啊,他这个的话呢,是一个实力,他是一个这种类型,而这个实力呢,他是一个全局的单例。所以在这里 的话呢,我们是通过他来做,通过他啊,多了多写了一个 s, 对吧?通过他来做好,通过他来做的话呢,我们来导入一下就行了。所以呢,你从这个引擎里面呢,把这个赛德曼的这个单例呢给他倒进来就可以了。所以在这里的话呢,就是我们的全局的一个单例,他是和赛德曼的类型, 所以你就转到他的定义呢,你去看一下呢,他的类型呢,其实就是在他 man 上去,他是一个全局的一个单例,明白了吧?好,所以这个我要跟大家讲清楚。首先呢,我们第一步就是要获取这个单例,对不对?好, 接下来第二步的话呢,我们就是要调用 api 接口来加载我们的 ab 对象。好, ab 对象加载出来以后是什么呢?是咱们的这个 accept minorja 点邦的类啊,是一个这样的类型,所以这个时候呢,比方说我们 ab, 那他的类型呢,就是俄塞特曼呢,就点邦的类,你要注意他的类型是什么,好不好?哎,在这里。好,那么这个呢,就是我们的类型是俄塞特曼呢,就是邦的类。 好,那么如何来调这个 api 接口来加载咱们这个 ab 的一个对象呢?那这个时候是这样子的,是我们的额塞特曼呢,就点 no 的邦的,哎,就要用这个 api 接口好, no 的邦的,所以它是一个异步的接口, 哎,只有家长成功以后,他才会有一个回调,在回调里面你才能使用这个帮的资源,能理解吗?啊,有些同学掉完马上就使用帮的,这是不行的,所以你只能在回调 里面来加的这个,这使用这个邦的的志愿,好,那么这个结构怎么加载呢?首先第一个呢,就是我们邦的的名字,邦的的名字好,那么这个名字呢,就是我们上面配的这个,对吧?就是上面配的这个,那我在这里头配的是什么呢?配的是这个 game 默认的这个 game, 所以在这里的话呢,我们帮着的名字呢,就是咱们这个店。然后呢有一个回调函数,回调函数的话呢,我们啊现在的话呢,经常会使用这个 number 表示来做这个东西 啊,回调函数呢,他也有参数,第一个参数呢是 arrow, 第二个参数呢就是我们的资源类型,那如果成功的话呢,就是我们三十八呢,就点方的类型,明白了不? arel 的话呢,就是我们的这个字母串,能理解吧?好,所以这个呢就是我们的回调函数,也就是说当我们加 在这个 ap 包加载成功以后,就会回掉咱们这个回掉函数,然后呢如果有错误,那 arrow 就不为空衣服, arrow 就表示有错,我们就可以 reap 就可以了,如果呢,你要调试的时候呢,你会打印一下这个错误是什么, 否则的话呢,就表示你加载成功了,就表示你这个加载成功了,明白了吗?哎,就就表示你加载成功了,那这里面的话呢,就是我们的这个邦德啊,就表示你加载成功了,所以这个时候呢,你就可以是邦德,等于这个 ab 这样子你才可以使用这个帮的,只有回掉,只有回掉产生了以后,回掉完成了以后你才能使用这个帮的,那我们很多同学在这个 下面就开始使用这个帮的,哎,这个是错误的,你要注意一下,因为这个时候当代码因为一步对不对?一步加载,当代码执行到这里的时候,代码执行到 这里的时候,可能 ab 包还没有加载完成,能理解吗?所以这个时候你在这里只能在回调里面来使用这个帮子,而不能在外部 这里搞完以后马上使用这个邦的,明白了吗?马上使用这个邦的啊,这个是错误的好不好?哎,就是这个点你要特别的注意啊。好,那么这样子的话呢,我们的邦的对象呢就加载成功了,邦的对象加载成功 以后呢,一般我们为了这个准确啊,我们可以加一个打印,加一个打印来看一下这个帮的对象是否成功加载,所以你携带吗?每一步每一步啊,你要啊,非常的怎么样?有条不稳,不要着急啊, 我们很多同学猴急猴急的是吧?那这个不行。好,那么这样子的话呢,我们就可以来打印一下这个帮的就可以了,来运行一下,走,你按一下咱们的 f 一十二。好,呃,那么这个时候呢,我们是, 呃啊,这里面少了一个东西是吧?少了一个脚本啊,应该是我先把这个脚本是上一节课的给他拿掉。嗯,好,接下来的话呢,我再看看我有没有来接挂这个脚本啊?可能没挂,所以呢,你写的这个没什么用,我们把它挂到这 卡文字这里来来,再来运行一把,按一下 f 一十二。好,那么这个时候你看帮的对象咱们就打出来了,明白了吗?帮的对象咱们就打出来了,你看这就是我们的帮的对象,就把它打印出来了,哎, 就把它打印出来了。好,那么这样子的话呢,我们就把这个帮的对象已经加载完成了。好,接下来的话呢,帮的对象加载完成了以后,接下来我们就要到第四一步,就是加载 av 包中的资源对象, 要加载 ab 包中的资源对象啊,那么接下来呢,我们就把它里面的资源对象呢给他加载进来。好,加载哪一个资源呢?大家可以随便选一个啊,在这个 ab 包里面呢,我们会有这种图集,图集里面有张小图, 那我们就把这个图集读取的到,然后通过图集来加载这个小图,好吧,然后呢再把这个扑克牌 来的这个啊这个图片给他换过来,好不好?哎,我们来把这件事情给他做了,首先第一个的话呢,哎,我们从这个根帮的里面给的这个帮的里面啊来加载我们的这个图集。好,这是第一步, 第二步的话呢,我们从图集里面呢获取小图,好吧,哎,第三一步的话呢,哎,我们使用小图 替换什么?哎,小图替换我们的这个扑克牌的一个显示好不好?哎,把这件事这几件事情呢给他做了。好,首先我们从这里加载图集, 加载图集咱们怎么加呢?好,有了这个帮的以后呢,我就编写一个函数, no 的这个 sprite atlas atlas, 艾特来斯,艾特来斯,对吧?哎,服装邦的好不好,哎,就这个样子,然后的话呢,我就把这个邦的呢给他拿过来。好,所以这个样子的话呢,我就可以来写一个这样的函数, bread, 然后呢,漏的 我们的这个 surprise atlas throughout 咱们这个邦德,然后呢,这里面呢,就是我们的这个邦德啊,这里面就是我们的这个邦德。类型的话呢,就是咱们。呃 settlement 觉得邦德类型就可以了。好, 那怎么加载呢?同样的,从邦顿里面来加载资源也是一步的,你要注意这一点啊,也是一步的啊,也是一步的啊,同时的话呢,你要注意一下这个接口,这个接口呢,我们就是什么呢?就是我们的邦顿这个对象漏的加载 咱们的资源。好,那么这个时候呢,就是我们的资源的这个路径。好,这个路径呢,你要特别的注意 啊,是从这个斑的文件夹下开始算起的,不包含这个斑的文件夹的内容,就是说以半的文件夹为目录的起点开始的。所以 比方说我要加载扑克这个图集,那你就是直接加载这个扑克,然后类型是什么?这是第一个参数是我们的路径啊,所以 no 的这个 no 的这个结果呢,第一个参数就是我们的路径。注意,这个路径的话呢,你要特别的注意啊,是从这个方的文件夹开始的。哎,所以呢,我要加载这个 game 下面的这个扑克的话呢,就不要带 game 了,直接就是。哎, game 下面的这个扑克就以他 为这个啊,起始目录跟目录对不对?加这个扑克就可以了,所以这个呢,就是我的路径。那如果你在这里有个指纹键夹呢,你就加一个指纹键夹,对不对?哎,加一个这个指纹键夹,如果有指纹键夹啊,你就加一个指纹键夹,这样子来就行了, 但是呢,你的跟路径呢,都是从这个邦德尔开始的,能力解放。好,接下来的话呢,是我们加载的资源类型, 哎,自然类型。第三一个呢就是我们的回调函数,回调函数的话呢,第一个参数仍然是 l, 哎,第二个参数呢就是我们的资源,好吧,那么我们一起来看一下。好,那我们露的这是我们的名字,类型的话呢,咱们就是 agalis, 加载一个图集,所以是 surprise atlas。 然后接下来的话呢,加载成功以后呢,咱们的这个回调函数,回调函数 速的话呢,我们在这里呢,就是咱们的一个 arrow, 然后呢,这里就是我们的这个 atolize 了,对不对? atolizeatolize, 这样子的 ata, nice 啊, attes。 好, 这个呢,就是我们这个点 atoline 的话呢,它的类型呢,就是我们的 severattelats, 就是他看到没有,好,这样子,加载完了以后,纸也跟上面一样,只有回掉成功了,你才能使用这个 attos。 好,首先呢,我来判断一下,如果这个是一个 iro 的话呢,咱们可以打印一下这个 iro 啊,然后呢,咱们为证就可以了。 好,否则的话呢,那我们这个 atlas 呢,就可以用,然后呢, load sprite frame for run atlas。 好吧, atlas。 好,我就写一个这个 load sprite frame from atlas。 好, 接下来的话呢,我就写一个这样的一个函数,就是从我的这个 atales 里面,图集里面, atales 啊, atales 里面来干嘛呀?来,来,读取一个 subred frame 啊,来读取一个 subred frame。 怎么读取呢?啊?怎么读取呢?好,那么这个东西其实非常简单,我们就来看这个接口就可以了, 因为我们要换到扑克牌上去呢,就需要有一个嗯, surprise frame 对象。然后呢,这个里面呢,埃及男神是一个大图集,里面有很多小图, 所以呢,他这里有个接口叫做 get supreme, 只需要把小图里面的名字传进来就可以获得这个东西。所以这个时候的话呢,我们就是啊,握一个 cardsp, 对吧? code supreme 呢?等于 address 点 get superfriend, 然后呢,这个地方就是我们名, 那这个名字咱们怎么选呢?你的图集有了,这里就是名字,比方说我们是一个梅花沟,好吧,那梅花沟的话呢,我们的图集就是什么 c 十一了,对不对? c 十一,这个时候呢,我们就是 c 十一。好,有了这个卡的 sp 的话呢,我们就来给他换图, 换图的话呢,我在这里就拉一个精灵主见好不好?拉一个精灵主见就是我们的 spec 啊, compolent 就会类型的话呢,是咱们的这个 supreme, 哎,类型的话呢,就等于咱们这个 surprise, 然后呢,我就直接编辑绑定了啊,然后呢,这个地方就是咱们的 surprise 就可以了。 好,那么编辑绑定这里的来了以后的话呢,在这里就会多一个 surprise, 我要换给他换图。好,那么这样子的话呢,我就拿到了这个 surprise, 拿到了这个 surprise 的以后呢,我就可以给他换图啦,点 surprise the rain 的话呢,就会等于什么呢?就会等于我的怕的 sb。 好,那么这样子我画完图以后呢,应该就会变成了一个梅花沟。好,这个时候大家特别的注意,为什么会闪一下,先是梅花三,再是梅花沟呢?因为加载他需要时间,对不对?亦不加载, 一步加载需要时间。好吧,一步加载需要时间,所以这时候呢,你要特别的注意。好,运行的时候呢,咱们就会来闪一下。明白了,不,运行的时候呢,咱们就会来闪一下啊,来,走,你启动一下。 好,那运行的时候呢,咱们就闪一下。好,今天呢,这个呢,我们就分享到这里,需要咱们的圆码的话呢,可以关注一下咱们的这个专栏,同时的话呢,通过咱们的这个老师来领取咱们的这个元代码就可以了。好, 这一刻呢,咱们就到这里了,谢谢,再见。

好,今天我们来讲解一下这个 cosplay 的精灵如何来换图,那整个的话呢,我会分为三个部分,第一个呢,准备好素材,然后呢获取图片资源,然后呢编写代码呢,实现咱们的这个换图。 好,今天换图的话呢,经常是我们初学者常常要遇到的一些问题,对吧?那么今天的话呢,我们就来测试一下。好, 首先第一个的话呢,我们准备好这个素材,这里面的话呢,我是以扑克牌为例啊,因为扑克牌的话呢,经常咱们也需要换图,对吧?这是一个非常常见的一个需求,所以呢,我们以扑克牌来进行一个为例来做一个换图。好, 呃,首先第一个的话呢,我们先把这个扑克牌的这个,嗯,这个精灵给他创建出来,好不好?那我先创建一个梅花山, 好吧,那这个地方的话呢,我就把它叫做这个什么呢?叫做扑克 car, 好吧,好,这是在这里了。好,那么这样子的话呢,我们就有了一个精灵,对吧?有了个精灵,有了个这个来显示咱们的这个扑克牌出来, 假设我要把这个梅花山要换成红桃山,咱们怎么做呢?那么接下来的话呢,我们就来换这个图, 那么换图的话呢,哎,首先我们是要代码来实现换图,对吧?你在编辑器,你没办法实现去换图,哎,你换完这个就是那个,你又没办法直接从梅花山到这个,对吧?除非的话呢,你又这样子拖过来,但是这个呢,就写死了这个东西。 所以的话呢,在这个地方我们换图的话呢,一般指的是在代码里面来进行一个换图,那么在代码里面进行换图,我们会有哪些思路呢?首先第一步思路的话呢,我们就是这个什么, 哎,这个编写新建一个代码,对不对?新建一个代码,哎,来进行换图,那么代码换图,你是要换哪个节点?哎?哪个经营组件,对吧?哪个节点?哪个经营组件? 仅仅组建上的这个图片对不对?所以这个东西呢,你要搞清楚。好,接下来的话呢?第二一个,既然你要换图,那么你需要拿到什么?需要拿到我们的图片资源,对不对? 你需要拿到这个图片资源,你需要拿到新图片的这个资源,然后呢你才能够换图成功,对吧?第三一个的话呢,哎,我们就是具体换图了,好,我们一起来看一下。首先第一个呢 话呢,我们来新建一个代码,来进行一个换图。好,那么我在这里的话呢,就来换这个,比方说我就随便新建一个啊,新建一个咱们的这个代码,比方说咱们新建一个咱们的 taps great, 好,叫做这个 surprise change, 好吧?啊?精灵这个啊,这个 imagine change, 或者叫做 imagine 一 match, 倩姐叫做一个图片转换好不好?好,那么这个时候的话呢,我们就可以把整个的呃,这个东西先给他删掉, 好,呃,有了这个东西以后的话呢,假设我们在这个代码里面,我需要来对这个精灵来进行一个换图,好,那么这个时候你要换哪个节点啊?在哪个节点上?哪个精灵组建上的这个图片,那么今年组建的话呢,他一般是节点的,那我们就得要获取这个节点,对吧? 所以我们第一步的话呢,就要获取节点,好,获取节点呢,我们可以通过这个场景查找获取,对不对?可以通过场景查找查找获取,也可以通过组建实力所在的节点来进行获取, 对不对?都可以。那么我们在这里的话呢,比方说我就把这个脚本呢放到这个节点下,那么在这个组建脚本这里的话呢,我们 res 点 no 的啊,组建实力指的就是我们的这个历史,对吧? 哎,组建实力指的就是我们这个 z, 然后呢 z 是点 no 的,那这里面的 no 的呢,就是我们的这个节点,能理解吗?所以在这里的话呢,我们就是啊漏了一下,好, 然后呢在这个地方,我们的历史呢,就是当前的这一个组建实力,也就是我们的一面几片级的这个组建实力。好, 那么这个主见实力呢?我们是把它挂到这个扑克炕的这个地方的,所以,哎,那么主见实力 this is no 的呢,是当前主见实力所在节点, 按照我们这个做法的话呢,那这个节点呢,就是我们的这个铺个盖子,对吧?铺个盖子就是他这个节点。好,那么 我们找到了这个节点啊,那接下来的话呢,我们就要找精灵组建实力,对不对?因为我们换图是换 surprise 这个组建实力的,这个 surprise free, 对吧? 所以接下来的话呢,我们就得要找这个精灵组建实力,所以握一个 surprise 呢,就等于咱们的这个什么 get acompolent 咱们的这个 surprise 这样子的。好,那么这样子的话呢,我们就找到了这个节点上面的 这个组建实力,然后呢对他进行换图呢,就是修改这个 sured ring 就可以了。好,所以呢,我们这个时候呢,就把这个什么哎精灵组建,你要 换图的精灵组件找到了,能理解吧?好,你就把你要换图的精灵组件给他找到了, 接下来我们就要准备好这个图片资源,那么图片资源的话呢,我们两种做法,第一种呢是编辑器绑定,第二一种的话呢就是什么我们的代码加载资源, 代码加载资源。好,那么我们呢还会有专门一期来讲这个代码加的资源,所以今天的话呢,我们来讲这个换换图片呢,我们就讲这个编辑绑定就可以了。好,那么接下来的话呢,我就来做一个专门的编辑器的一个绑定。好吧, 编辑绑定的话呢,首先我们定一个成员,比方说我们的一面积。好,那么这个类型的话呢,就是我们的 surprise, 啊,这样子的。 好,有了这个东西以后呢,我们要绑定到编辑器,所以呢我们是 at property, 把这个类型的对准一放, 这个时候的话呢,我们在这里呢就会拿到了你要换图的这个,哎,你要换图的这个图片的这个资源,比方说我们要把它换成方块,方块三,好吧,把梅花三 换成这个方块式按,所以这样子的话呢,我们就有了这个,有了这个以后,那你就拿到了这个资源,能理解吧?拿到了这个资源,所以在这里呢,我们的资源就准备好了, 最后的话呢,我们就来换图就可以了,那么这个换图的话呢,我们啊你去拖动这个东西的时候,其实就是修改这个组建实力的这个 数据成员,对不对?只不过呢,你是用可视化拖动过来的,那我们在代码里面如何来做呢?也是一样的,注意,在代码里面的话呢,这个地方一定是小写啊,怎么来的 fring, 为什么呢?在 coco 的里面,数据成员一般都是小写打头,类型都是大写打头,明白了吧,这个规律你掌握了以后呢,你就知道了,数据成员是小写开头, 哎,然后的话呢,我们的这个类型呢是大写开头,嗯,这样子的, 这个时候我们的数据成员呢,就等于我们 risky 就可以了。好,这样子的话呢,我就把这个图片呢给他换好了,所以我运行的时候呢,这个地方应该就变成了方块三,能理解吧。好,那么这样 这样子的话呢,我们整个的这一个精灵的换图呢,我就给大家讲完了,如果需要咱们本节课的这一个我们的这个代码啊,你可以直接来找到咱们的这一个啊,课程旁边的这个联系方式,直接来加就行了。 好吧,好,那这节课呢就到这里了,如果说想要学习更多的 cose greater 的一些啊,基础知识的话呢,也可以来关注我这一个专栏频道。好吧,那今天呢就到这里了啊,再见。

从零开始学游戏制作,我选择从 cocos 开始,经过在 b 站上看了大量的视频之后,终于开始动手写代码了, 因为又程序基础, js 语言已经会了,所以就直接跳过了脚本的基础。学习过程,先做一个按键盘来控制物体上下左右移动的功能,打开 cocos 编辑器,新建一个空白的二地项目,创建一个精灵节点, 然后新建一个脚本,脚本和节点绑定起来,打开脚本编辑, 先预览看下界面效果, 把这个方块改个颜色,编写方块移动的 代码,定义一个向左移动的变量,向右移动的,向下的,向上的。在 start 里面写键盘按下和松开的监听事件, 按下去的时候处理方法,按的哪个键往哪个方向能移动。 按键松开的处理方法,松开就停止移动。 物体移动的具体实现 运行,看看效果是否能移动,发现上下移动方向是反的。修改下脚本, 再来看看, 加个背景图片, 把移动物体变小一点,看看最终效果。

this with me with me。