微信小程序启动优化

这篇博客详细介绍了如何在Cocos游戏引擎中针对微信小游戏进行优化,包括关闭分离引擎、修改Canvas.js、引入webgl_first_render.js、更新game.js文件以及在main.js中设置wx.FIRSTRENDER。内容涉及到webgl渲染、canvas操作和场景加载,旨在提升小游戏的性能和启动速度。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.关闭允许分离引擎

2.CocosDashboard_1.0.7\resources\.editors\Creator\2.4.3\resources\builtin\adapters\platforms\wechat\wrapper\builtin\Canvas.js

在Canvas.js

// 修改后

let first = true

export default function Canvas() {

  const canvas = first ? wx.__first__canvas ? wx.__first__canvas : wx.createCanvas() : wx.createCanvas()

  first = false

 

3.webgl_first_render.js网上下载

4.game.js文件添加

"use strict";

 

const { drawImg } = require('./webgl_first_render.js');

const data = wx.getSystemInfoSync();

wx.__first__canvas = data.platform != "devtools" ? wx.createCanvas() : null;

function render() {

  if (data.platform != "devtools") {

    if (wx.FIRSTRENDER) {

        drawImg('bg.jpg', gl);

        console.log("---------------------------render-------------------------")

        requestAnimationFrame(render);

    }else{

      GameGlobal.dycc= null;

    }

  }

}

  

  wx.FIRSTRENDER = true;

  GameGlobal.dycc =  wx.__first__canvas; //获取绘制二维上下文

  var gl = data.platform != "devtools" ? GameGlobal.dycc.getContext("webgl") : null;

  

  requestAnimationFrame(render);

 

require('adapter-min.js');

 

__globalAdapter.init();

 

require('cocos/cocos2d-js-min.js');

 

__globalAdapter.adaptEngine();

 

require('./ccRequire');

 

require('./src/settings'); // Introduce Cocos Service here


 

require('./main'); // TODO: move to common

// Adjust devicePixelRatio


 

cc.view._maxPixelRatio = 4;

 

if (cc.sys.platform !== cc.sys.WECHAT_GAME_SUB) {

  // Release Image objects after uploaded gl texture

  cc.macro.CLEANUP_IMAGE_CACHE = true;

}

window.boot();

5.main.js在加载完成后添加wx.FIRSTRENDER = false;

 cc.director.loadScene(launchScene, null, function () {

      console.log('Success to load scene: ' + launchScene);

      wx.FIRSTRENDER = false;

    });

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值