最近用Cocos Creator 开发微信小游戏,构建发布到微信上,用安卓手机预览打开后加载到100%就不动了,开始以为微信开发工具版本的问题,后来用苹果的手机测试了一下,发现也有同样的问题. 仔细分析了下问题: 由于本游戏项目资源大,超出了微信小游戏的打包的要求4M,所以把资源都放到了远程服务器,另外我的服务器还没有加到微信小游戏平台的可信任服务器中,这就要求微信端需要开启调试模式来预览.下图是开启调试模式的入口,开发的小伙伴一般都知道. 但是发现苹果手机的用户可以随时打开调试模式,而安卓的点…
观看官方教程,地址 传送门: http://docs.cocos.com/creator/manual/zh/publish/publish-wechatgame.html CocosCreator接入微信小游戏 腾讯视频 导出小游戏和设置res服务器 教程视频:https://v.qq.com/x/page/c05255stri7.html…
今天在写小程序,发现小程序的图片image如过mode设置为widthFix的话, 加载图片会被先拉伸,后恢复正常 我的处理方法是,给他一个初始的height值,或者就直接 height:auto…
肯定有小伙伴遇到过这个问题:加载的数据是一堆HTML 标签这就尴尬了,因为小程序没有提供 webview 来加载这些 HTML.但是不用慌,小程序不提供我们可以自己造个新轮子,自己造不出新轮子咱们找到一个合适的轮子拿来用!这里用到的轮子就是这个:wxParse.他的介绍可以去 github 主页学习,这里简要记录使用过程.(项目地址链接) 本文由百牛信息技术bainiu.ltd整理发布于博客园 接口是截取的网易新闻的新闻详情接口,数据格式大家自行格式化观察.这里在做 HTML 处理的时候遇到了两…
目录结构如下,只要图片按正确的方式放入小程序的开发工具的项目中,即可在wxml文件中用内联样式或者image标签都可以引用本地的图片. 步骤一:微信开发工具 打开项目 步骤二:新建个文件夹(放项目的一级或者二级目录都可以),然后把图片拷贝到这个目录下. 注意:一定要用你从 微信开发工具  打开的项目window窗口完成新建文件夹和把图片copy到这个目录下的这两个步骤 步骤三:相对路径去访问图片,可以用style样式的方式或者image标签 而外: 不能用wxml样式去引用本地的图片,不会报错,…
先用cocoscreator实现游戏逻辑 在cocoscreator项目里可以调用微信小游戏api 在cocos里面判断小游戏的运行环境 if (cc.sys.platform === cc.sys.WECHAT_GAME){ wx.aaaaa() } 纯js代码都可以在微信小游戏里使用,所以cocos creator里也可以调用为微信小游戏api,jq代码不行,纯在兼容问题…
一.前提 微信小游戏,对游戏包体的大小有严格是限制,上传文件大小<4M,但是本地缓存文件有50M空间,也就是说我们可以将一些资源放到网上,然后缓存到本地. 二.官方概念 文件系统 文件系统是小程序提供的一套以小程序和用户维度隔离的存储以及一套相应的管理接口.通过 wx.getFileSystemManager() 可以获取到全局唯一的文件系统管理器,所有文件系统的管理操作通过 FileSystemManager 来调用. 文件主要分为两大类: 代码包文件:代码包文件指的是在项目目录中添加的文件.…
本文由云+社区发表 使用一个简单的游戏开发示例,由浅入深,介绍了如何用Laya引擎开发微信小游戏. 作者:马晓东,腾讯前端高级工程师. 微信小游戏的推出也快一年时间了,在IEG的游戏运营活动中,也出现了越来越多的以小游戏作为载体运营的活动类型,比如游戏预约,抢先试完等等,都收到了非常良好的效果. 在支持微信小游戏的游戏引擎中,Cocos,Egret,Laya都对小游戏的开发提供了很多强大的支持.前段时间正好抽空研究了一下这块的内容,现做一个总结,针对如何使用Laya引擎开发微信小游戏给大家做一下…
一.微信分包加载 微信分包加载教程 嘛,因为原来的4M太小了,满足不了小游戏内容的需求,现在提升到了8M.这8M可以分包加载,而不需要一次性加载8M. 如果是老版本,则分包加载不起作用,会一次加载8M内容,用户等待会比较久. 二.Egret的解决方案 如何利用微信小游戏的分包加载机制突破4M代码包体积限制 三.官方Demo分析 Egret官方demo下载 根据官网demo,在小游戏主项目和resource同级目录下新建stage1文件夹,并放了3个js文件,分别是tween.js,main.js…
发布为微信小游戏后,在微信工具中测试时总是提示加载retry to load TheRed.fnt,并以error告终.由于没有任何出错信息,无奈之下只好阅读源码.对BitmapFont的处理分为两个部分,一是下载x.fnt文件并加以解析,成功后会将x.fnt替换为x.png并再次下载.在微信工具中一步步地debug,最终定位到是在MiniAdapter.parseXMLFromString方法中调用: (new window.Parser.DomParser()).parseFromStrin…
给商品列表页面添加一个上滑触底加载下一页的效果,滚动条触底之后就发送一个请求,来加载下一页数据, 先在getGoodsList中获取总条数 由于总页数需要再另外的一个方法中使用,所以要把总页数变成一个页面全局参数. 数据请求回来,要对data中的数组进行拼接,而不是全部替换,如果你把新的数据替换原来的数据,那么上一页的数据就没有了,所以不能够直接赋值,故要对data中的数组进行拼接,而不是全部替换, 输入wx-showToast…
前言 这是一次利用 three.js 开发微信小游戏的尝试,并不能算作是教程,只能算是一篇笔记吧. 微信 WeChat 6.6.1 开始引入了微信小游戏,初期上线了一批质量相当不错的小游戏.我在查阅各处的文章时候,发现其中有几款是基于 three.js 开发的,目前火爆朋友圈的<跳一跳>就是其中之一.这引起了我的注意,想起几年前也做过不少 WebGL 的尝试,于是禁不住想要弄到微信小游戏平台上试试. 准备工作 最新版本的 three.js: 首先应该具有一定的 three.js 开发经验,有之…
最近在公司开发游戏,使用cocos creator做微信小游戏,遇到一个很恶心的问题,如图: 如图所示,微信的广告位被iphonex的底部bar给弹出了一点位置,没有靠在底部. 在这里不得不吐槽一下微信的小程序接口还有个恶心的地方,那就是他的广告style没有bottom,right属性,使得置底部必须使用算法计算.也就是winsize.height-广告高度(realheight),居中是winsize.width-广告宽度/2. 而就算如此,在Android和iphone普通手机上是没有适配…
一.前言 微信小游戏中最魔性的'跳一跳'就是基于three.js 引擎开发的 源码放到github上了:GitHub地址   请自行下载. 二.下载 three.min.js 打开页面,复制代码到本地 三.引用 使用如下方式在小游戏中引用three let THREE = require('three.min.js的路径') 四.开始 创建3dgame.js文件 需要注意的是,在微信小游戏中并没有'ImageBitmap'这个全局对象,所以在加载纹理贴图时会报错,此时需要修改源码 let THR…
欢迎大家前往腾讯云+社区,获取更多腾讯海量技术实践干货哦~ 本文由腾讯云数据库 TencentDB 发表于云+社区专栏 随着微信小游戏的爆发,越来越多开发者关注到MongoDB与小游戏业务的契合度. 腾讯云已为多个爆款微信小游戏提供服务,腾讯云数据库团队在多年MongoDB运营&支持微信小游戏服务经验总结,MongoDB产品经理李晓慧在7月26日在厦门举行的<腾讯云GAME-TECH游戏开发者技术沙龙>上,为广大开发者分享了腾讯云MongoDB在小游戏中的实践应用,帮助刚刚走进小游戏开…
本文由云+社区发表 6. 动画 6.1 创建伞兵对象 在src目录下创建一个新目录role,用来存放游戏中角色. 在role里创建一个伞兵Soldier.ts对象文件. module role{ export class Soldier extends Laya.Sprite{ constructor(){ super(); this.init(); } init():void{ var img:Laya.Sprite = new Laya.Sprite(); img.graphics.draw…
微信小游戏中,用 THREE.JSONLoader 直接加载本地的 json 文件,报错.估计是跨域访问的问题 解决:把 json 文件放到服务器上,通过 url 来访问. 临时测试的话,在本地起一个 http 服务器 python -m SimpleHTTPServer 8080,然后通过 http://localhost:8080/xx/yy.json 访问,localhost 改为本机 ip 方便在手机上预览…
前言 微信又更新了,从更新日志上来看,似乎只是一次不痛不痒的小更新.不过,很快就有人发现,原来微信这次搞了个大动作——在小程序里加入了小游戏.今天也是朋友圈被刷爆的缘故. 看到网上 有人弄了一个破解版的,于是自己也跟着网上的案例整了一下,感觉挺有意思的. 游戏如下: 来玩游戏 劳动成果 用Kotlin破解Android版微信小游戏-跳一跳 跳一跳 微信小程序可以玩游戏了,我们来破解一下<跳一跳>这个官方出品的小游戏吧. 思路 用usb调试安卓手机,用adb截图并用鼠标测量距离,然后计算按压时间…
参考: RES版本控制 使用 AssetsManager 灵活定制微信小游戏的缓存策略 一.我们的目标 目标就是让玩家快速进入游戏,然后根据游戏的进度加载相应的资源,并可对资源进行版本控制.本地缓存.热更新. 如果美术改一张图或者策划修改一个配置文件就要发布版本再审核,就比较麻烦了. 所以方法3是我们要实现的目标. 翻看Egret的教程,提供了RES版本控制和缓存资源来个教程.下面窝来试试能不能实现方法3. 二.先来说说RES版本控制 RES版本控制使用插件resplugin.ts,对资源的名称…
phaser与eget, laya, pixi.js本质上没什么区别. 都是渲染引擎.  其它的都是配角.  phaser的特点是.代码容易理解 功能比较全面. 个人比较喜欢phaser的地方 tween,path,深度排序 下面来一步一步的学习phaser,以及用phaser快速移植小游戏 修改代码: 微信小游戏不支持blob, phaser加载image的方式需要修改. 添加适配器. 官网上下载最新的weapp-adapter. 其实仅需两步就可以支持微信小游戏了. 一些基本的功能点: 1.…
.Net Core ORM选择之路,哪个才适合你   因为老板的一句话公司项目需要迁移到.Net Core ,但是以前同事用的ORM不支持.Net Core 开发过程也遇到了各种坑,插入条数多了也特别的慢,导致系统体验比较差好多都改写Sql实现. 所以我打算找一款 性能比较好 功能比较完善 方便以后可以切换数据库(经过我对老板的了解这个功能非常重要) 并且要有一定用户基础的ORM 参赛ORM 能够参赛的ORM必须要有以下个条件 第一.功能方面要比较完善 第二.Github需要有一定人气并且最近有…
一.使用 AssetsManager 灵活定制微信小游戏的缓存策略 官网教程:http://developer.egret.com/cn/github/egret-docs/Engine2D/minigame/usingcache/index.html 这个缓存策略是干啥的? 假如一个游戏30M.微信小游戏4M游戏包,还有26M每次游戏都会去服务器下载,不会缓存.为此,微信提供了50M本地缓存,这26M可以缓存起来,不需要每次加载. 二.实际操作一遍 1. 增加ResSplitPlugin插件…
之前有看到微信小程序<跳一跳>别人用python实现自动运行,后来看到别人用hash码实现<加减大师>的自动答题领取娃娃,最近一直在研究深度学习,为啥不用机器学习实现呢?不就是一个分类问题吗 如何实现自动答题微信小游戏<加减大师>? 思考: 图像识别吗? 如何建立特征工程? 选用什么算法? 一.图像特征工程 如何获取手机游戏上的图片? 使用adb命令截取手机屏幕: 在PC端和手机端同时运行APowerMirror软件,将手机投屏到电脑上,然后使用Pillow包中的截图方…
Egret5.2.2版本发布微信小游戏后,在开放数据域有一个默认排行榜.这个文件夹代码+图大小就22kb. 排行榜的效果就是示范用的,很丑...带翻页. 代码如下,基本就是使用canvas渲染了一个排行榜. 好处是不需要额外新建另一个Egret项目来实现排行榜,减小了代码体积. 坏处是canvas手动绘制排行榜,没有egret的eui可视化编辑,非常的不方便. 代码很长,慢慢看.... /** * 微信开放数据域 * 使用 Canvas2DAPI 在 SharedCanvas 渲染一个排行榜,…
微信小游戏 demo 飞机大战 代码分析(三)(spirit.js, animation.js) 微信小游戏 demo 飞机大战 代码分析(一)(main.js) 微信小游戏 demo 飞机大战 代码分析(二)(databus.js) 微信小游戏 demo 飞机大战 代码分析(四)(enemy.js, bullet.js, index.js) 本博客将使用逐行代码分析的方式讲解该demo,本文适用于对其他高级语言熟悉,对js还未深入了解的同学,博主会尽可能将所有遇到的不明白的部分标注清楚,若有不…
微信小游戏 demo 飞机大战 代码分析(一)(main.js) 微信小游戏 demo 飞机大战 代码分析(二)(databus.js) 微信小游戏 demo 飞机大战 代码分析(三)(spirit.js, animation.js) 微信小游戏 demo 飞机大战 代码分析(四)(enemy.js, bullet.js, index.js) 本博客将使用逐行代码分析的方式讲解该demo,本文适用于对其他高级语言熟悉,对js还未深入了解的同学,博主会尽可能将所有遇到的不明白的部分标注清楚,若有不…
推荐阅读: 我的CSDN 我的博客园 QQ群:704621321 我的个人博客 最近事情特别多,今天终于实现了排行榜功能,记录下来大家一起学习学习. 一.调用默认排行榜 首先我们需要了解: 1.白鹭开发文档(开放数据域):http://developer.egret.com/cn/github/egret-docs/Engine2D/minigame/openDataContext/index.html 2.微信小游戏开发文档(关系链数据):https://developers.weixin.q…
今天给大家分享一下微信分享转发功能,话不多说,直接干 方法一: 1.在egret中打开Platfrom.ts文件,添加代码如下(当然,你也可以直接复制粘贴) /** * 平台数据接口. * 由于每款游戏通常需要发布到多个平台上,所以提取出一个统一的接口用于开发者获取平台数据信息 * 推荐开发者通过这种方式封装平台逻辑,以保证整体结构的稳定 * 由于不同平台的接口形式各有不同,白鹭推荐开发者将所有接口封装为基于 Promise 的异步形式 */ declare interface Platform…
用egret + p2 做一个类似投球的小游戏,坑大致如下: 1.p2引擎与egret坐标不同注意转换,横坐标没什么,纵坐标egret.y = stageHeight - body.position[1]*factor 2.p2物体的原点为中心点,而egret显示对象的原点为左上角,设置display.anchorOffsetX = display.width/2;display.anchorOffsetY = display.height/2 3.p2的单位与egret像素单位的factor设…
在微信小游戏中,好友排名数据是能在关系数据域操作,整个关系数据域只会返回一个最终的sharedCanvas,并且这个canvas不能调用toDataURL()方法,所以要展示好友排行榜的话只能在关系数据域中将信息画在sharedCanvas上面.对于排名信息的分页,比较常见的做法是加一个上一页下一页按钮.例如好友数据共有500条,默认为第0页,一页展示10条的话,就将0-9条数据画到排行榜页面上.点击按钮的时候重新设置当前是第几页,再重新绘制10条数据. 有上一页下一页按钮的分页做法比较简单,容…