快捷搜索: 王者荣耀 脱发

Unity转微信小游戏与JS交互

微信小游戏JS交互方式:

1.自行创建calljs.js文件中添加定义,每次编译该文件都会被覆盖

export const CallJS={
  test:function(){
    console.log("test");
  }
}

2.在game.js中引入

import ./weapp-adapter
import unityNamespace from ./unity-namespace
import ./webgl.wasm.framework.unityweb
import "./unity-sdk/index.js"
import checkVersion, {canUseCoverview} from ./check-version
import "texture-config.js";
import {launchEventType} from ./plugin-config
import {CallJS} from ./calljs // 引入自定义JS调用代码

挂载到GameGlobal对象上,第32行下

GameGlobal.managerConfig = managerConfig;
GameGlobal.CallJS = CallJS; // 挂载

3.调用案例,小游戏侧无需实现,在Unity的胶水层定义

Unity自定义的胶水层代码会被编译到webgl.wasm.framework.unityweb.js中

点击按钮,在Unity中通过胶水层调用_Buy函数

WebGL的JS交互方式:

calljs更新方式建议:

建议在unity中将calljs做模板处理,不需要每次都修改index.html和game.js。只需要替换calljs.js文件即可。 WebGL模板修改WXTemplate或WXTemplate2020 小游戏模板修改WX-WASM-SDKwechat-default

经验分享 程序员 微信小程序 职场和发展