egret

白鹭引擎EUI做H5活动 入门篇

两盒软妹~` 提交于 2021-02-18 10:47:57
前言: 本学习文档的目的是为了实现h5,或者简单的h5游戏,比如说,我们要实现一个可以左右,或者上下移动的场景的h5,在场景移动的过程中,会有相应的动画或者操作,我们通过 js 也可以实现,但是为了流畅度和更好的效果,还是需要借助一些引擎来实现,比如说 2d的渲染引擎 pixi.js 或者是本文档要学习的 Egret (白鹭)引擎; 作为刚接触游戏引擎的人,虽然没有相关使用经验,但是也听说过相关内容;几年前接触过 Cocos (游戏引擎),所以也只了解这么一个游戏引擎,最近随着h5和小游戏的发展,也听说了 Egret (白鹭游戏引擎),现在记录一下学习的过程,虽然现在还是一无所知,还是记录一下; 第一步: Egret(白鹭游戏引擎),第一步,[下载]( https://egret.com/downloads/engine.html )一下 Egret , 也就是 Egret Launcher,这是一个工具,可以帮助我们建立项目,也就是一个辅助的工具 ,不管是什么,先下载再说。 通过这个Egret Launcher 工具,我们需要再下载一下游戏引擎,我们在这个 Egret Launch界面中,找到引擎列表,然后选择一个版本的引擎下载,我这里下载一个,最新的引擎版本 5.2.29 ; 第二步: 通过这个Egret Launcher 工具,我们可以下载一下官方的编辑器 Egret

微信小游戏和白鹭引擎开发实践

你说的曾经没有我的故事 提交于 2021-02-18 05:20:50
前言 文章按照作者调研和开发顺序初步介绍和理解了微信小游戏和白鹭引擎,并产出了基于白鹭引擎的应用初始化程序 egret-wechat-start 。 以下是正文—— 微信小游戏 官方文档 如何开发和理解微信小游戏,先从官方文档和官方demo入手。 提供一个链接 https://developers.weixin.qq.com/minigame/dev/ ,可以快速浏览一下官方文档再继续看下面的内容。 这里对微信文档做个简单的理解总结,小游戏和小程序很多地方类似,都是提供了同一套微信Api,比如获取用户信息、toast等等,只是有部分提供的api不同。 小游戏对canvas做了封装,通过 wx.createCanvas() 创建画布, getContext 获取对象后,剩下的就是对原生canvas接口的操作了。 理解到这一点之后,我们就会发现小游戏仅仅是封装了下创建画布的接口,剩下的就是用户需要在画布里用原生canvas绘制了,并没有提供其他方便开发的功能。到此我们再看看微信开发者工具创建小游戏项目时,初始化的一个飞机游戏的demo。 是如上图的一个很简单的游戏,说下这个游戏的大致实现逻辑: 1. 绘制游戏区域,背景图片 2. 创建敌机对象,用户飞机对象,子弹对象 3. 控制3种对象载入画布和位置改变,控制背景图片移动,添加音效 4. 判断子弹碰撞,机身碰撞,并且生成对应结果

Egret白鹭开发微信小游戏(使用皮肤搭建UI,代码调用组件功能)

∥☆過路亽.° 提交于 2021-02-18 04:19:05
(1)新建皮肤,并命名如下 (2)根据实际情况自定义皮肤,例如: (3)修改名字为如下: (4)运行游戏会自动生成以下代码: (5)在default.thm.json中添加如下代码:(具体路径名字根据实际情况填写) (6)新建ts文件,添加如下代码,j即可调用皮肤上的组件。 注意;记得添加ts文件继承的类及实现方法。 来源: oschina 链接: https://my.oschina.net/u/4344778/blog/3873035

菜鸟教程 | Egret微信小游戏好友排行榜教程

筅森魡賤 提交于 2021-02-18 04:18:51
写在前面:随着越来越多的新人开始接触白鹭引擎,创作属于自己的游戏。考虑到初学者会遇到一些实际操作问题,我们近期整理推出“菜鸟”系列技术文档,以便更好的让这些开发者们快速上手,Egret大神们可以自动忽略此类内容。 今天我们分享的菜鸟文档将介绍微信小游戏好友排行榜的制作过程,包括创建项目并发布、微信开发者平台添加小游戏、打开开放域功能、主域和开放域通讯,以及ShareCanvas与原生Canvas的布局。 微信好友排行榜利用 微信关系链数据 实现一个简单的排行榜,此文档包含关系链数据、Egret平台数据接口、ShareCanvas离屏画布、原生Canvas布局。 创建项目并发布 创建Egret项目,使用Launcher发布,建议使用您个人 AppID (测试用的id限制很多功能,例如分享) 添加小游戏 设置 > 基本设置 > 添加小程序(能够通过审核即可) 打开开放域功能 使用微信开发者工具打开发布的微信小游戏,或在终端运行 egret run --target wxgame ,找到游戏配置文件 game.json ,配置如下,其中 openDataContext 使小游戏支持了微信开放域功能。 1 { 2 "deviceOrientation": "portrait" , 3 "networkTimeout" : { 4 "request": 5000 , 5

Egret白鹭开发微信小游戏排行榜功能

旧城冷巷雨未停 提交于 2021-02-18 04:02:36
推荐阅读: 我的CSDN 我的博客园 QQ群:704621321 我的个人博客 最近事情特别多,今天终于实现了排行榜功能,记录下来大家一起学习学习。 一。调用默认排行榜 首先我们需要了解: 1。白鹭开发文档(开放数据域): http://developer.egret.com/cn/github/egret-docs/Engine2D/minigame/openDataContext/index.html 2.微信小游戏开发文档(关系链数据): https://developers.weixin.qq.com/minigame/dev/tutorial/open-ability/open-data.html 实现的核心功能是在main.ts中添加代码 (1)添加全局变量 (2)定义排行榜按钮,加载排行榜资源 (3)给按钮添加监听事件 main.ts中全部代码如下: class Main extends eui.UILayer { private bitmap: egret.Bitmap; private isdisplay = false ; private rankBtn: eui.Button; private rankingListMask: egret.Shape; protected createChildren(): void { super

egret 白鹭引擎遇到的问题和解决方案

﹥>﹥吖頭↗ 提交于 2021-02-18 03:29:40
本文使用白鹭引擎版本是5.2.7 当前时间最新版 (截图时又出现了一版,迭代速度还是很快的) 1. 选择游戏开发模版 一定要选择ui模版,而不要选择game面板 game模版删去了theme和eui部分组件,如果你想自定义ui,还需要手动创建一个default.thm.json文件,挺麻烦的,因为他有自己专有格式,所以请尽量选择ui开发,一样可以开发游戏 game模版不包括红线范围内的文件 2. Main.ts 代码删除要小心 ui项目 Main基于 eui.UILayer game项目 Main基于 egret.DisplayObjectContainer 两个的区别在于game项目使用事件侦听来监控场景加载到舞台上 this.once(egret.Event.ADDED_TO_STAGE, this.onAddToStage, this); 而ui项目使用createChildren函数 3. 心跳 不可删,非内存回收,是用于在后台时对内核更新暂停。 egret .lifecycle . addLifecycleListener ( ( context ) => { // custom lifecycle plugin } ) egret .lifecycle . onPause = ( ) => { egret .ticker . pause ( ) ; } egret

Egret(白鹭引擎)——“TypeError: Cannot read property 'asCom' of null”

血红的双手。 提交于 2021-02-18 03:13:55
前言   相信我,这个错误新手都不陌生: TypeError: Cannot read property 'asCom' of null   还有,一定要看我上一篇,哦不(人家应该是报了这个错,才找到看到这篇文章的) 错误描述   项目背景:Egret+fairyGui   1.官方案例我可以跑通   2.一替换成自己的素材,就报这个错 分析   1.你真的替换成功了吗?   2.该改的地方,你都改了吗? 实操   1.把官方实例的素材,替换成你的素材      你从fairygui 发布,一定要选择二进制格式,不然最新的Egret 会报错哦   一定要注意 .fui 格式的正确引用 如图所示      2.找到 src/Main.ts 文件 (修改包名)     Egret 创建游戏场景,需要加载的包     这时候 ,你要根据你的fairygui 的包名来哦     这张图是 Egret          这张图是 fairygui              3.找到文件 src/MainPanel.ts     注释不要的东西          这个文件主要是实例里面 写的有些操作方法,因为是官方实例啊,你没有这些按钮啊,图片啊 等等等     你要改成你自己的东西 ,这些玩意 ,你肯定不需要,只要保留 fairygui的引用即可     还有啊!不要杠,先跑通demo再说

egret 发布ios记录

断了今生、忘了曾经 提交于 2021-02-15 13:25:31
根据官方文档 http://developer.egret.com/cn/github/egret-docs/Native/native/hybrid/hybrid/index.html 将现有的项目发布成Hybird。 发布成功之后,使用xcode打开xcworkspace工程。 然后点击运行按钮。成功调用启动了iphone模拟器,但是内容确实一片空白,即手机模拟器屏幕上显示的是一片空白。 到这里为止,我再次回到官方文档查看。 逐个排查工程模版。 1.默认工程是从本地启动游戏。 我没有做任何改动,那就是从本地启动游戏。 1.1 启动流程     1.1.1初始化EgretWebViewLib; [EgretWebViewLib initialize:@"/egretGame/preload/"]; // "/egretGame/preload/"是缓存目录,在应用的document目录下。    成功;      1.1.2检查游戏资源是否已经部署到本地服务器; [EgretWebViewLib checkLoaded:zipFilePath Host:host] // zipFilePath是游戏资源zip的绝对路径 // host是游戏映射到哪个url下,如host为"https://egret.com/game/",对应的游戏url为"https://egret.com

egret iOS微信浏览器默认不播放背景音乐

丶灬走出姿态 提交于 2021-02-15 12:16:08
egret iOS微信浏览器默认不播放背景音乐 最近在做一个小项目,用的是egret+微信浏览器环境,在安卓上运行没有任何问题,但是到了万恶的苹果上不行了,立马有问题了,BGM不能自动播放,查了一下发现是IOS系统为了节省用户的流量,禁止了audio标签的自动播放,哈哈哈,特么的,对用户真是太贴心了(不得不吐槽一下,都已经用上苹果了,还会在乎那几个流量费?)。本不想改了,但是这时候万恶的产品经理说,不行,这个必须要能自动播放。没办法,人在屋檐下不得不低头,百度一通,找到一个,一试还真行。在这里贴出来记录一下。 1.首先要在index.html这个文件里添加一个函数用于引导播放: function playsound ( sound , loop ) { if ( sound == null ) { console . log ( 'sound err' ) return ; } var times = loop ? 0 : 1 ; if ( typeof WeixinJSBridge != 'undefined' ) { WeixinJSBridge . invoke ( 'getNetworkType' , { } , function ( e ) { return sound . play ( 0 , times ) . volume = 0 ; } ) ; } else {

华为快应用2.0丨新能力、新场景赋能新生态

∥☆過路亽.° 提交于 2021-01-30 03:37:21
 9月11日,在华为开发者大会2020(Together)上,快应用2.0正式发布。快应用相关专家提出:“快应用技术经过了过去一年的发展,在许多方面有了巨大的进步。面向C端,我们升级了规范能力,开放了更多HMS能力。面向B端,我们优化了IDE开发工具,在线生成H5快应用、卡片工具。新场景方面,快应用2.0深化系统场景和HMS能力结合,带来更多更方便的场景入口,帮助合作伙伴和华为设备更深度融合。”   快应用的出现,以其轻量化、多场景互联的优势打通了多元流量池,帮助开发者占领流量高地。本次发布的快应用2.0版本涵盖了许多新功能和新场景,极大地提升了快应用的基础能力,丰富了快应用的使用场景。    新能力,快应用引擎规范升级   快应用发布上线1070规范,上线HMS帐号、支付、推送、广告等能力。开发者基于新的1070规范,可以调用更多的系统能力接口,设计发布体验更佳的应用。    新能力,与快游戏开发平台深度合作   华为快应用与3大游戏开发平台Cocos、Laya、Egret深度合作,3大开发工具集成华为快游戏开发组件,一站式完成开发发布,快速上线。    新场景,便捷登录华为帐号体系   便捷登录华为帐号体系,开发者只需在快应用中接入华为帐号便捷登录体系,即可提供较小的授权弹框界面,与快应用集成一体,用户更易接受。    新场景,快捷支付   快应用升级IAP 4.0