使用Unity版本为2020.3.15
代码交互
Unity调用Js方法
在项目Assets/Plugins
中创建game.jslib
文件
mergeInto(LibraryManager.library, {
Test: function () {
test();
},
Test2: function (name,isTrue) {
test2(Pointer_stringify(name),isTrue);
},
});
代码中执行
[DllImport("__Internal")]
private static extern void Test();
[DllImport("__Internal")]
private static extern void Test2(string name, bool isTrue);
Js调用Unity方法
myGameInstance.SendMessage("GameObject名", "方法名", "参数");
myGameInstance
在createUnityInstance
方法then
中获得
打包后自适应
unity-webgl-responsive
首先把responsive-template-2020
文件夹复制到项目工程Assets/WebGLTemplates
中,没有创建即可。
透明背景
1、设置相机参数Solid Color
中Alpha
值为0
2、创建.jslib文件,文件内容如下:
var LibraryGLClear = {
glClear: function(mask)
{
if (mask == 0x00004000)
{
var v = GLctx.getParameter(GLctx.COLOR_WRITEMASK);
if (!v[0] && !v[1] && !v[2] && v[3])
// We are trying to clear alpha only -- skip.
return;
}
GLctx.clear(mask);
}
};
mergeInto(LibraryManager.library, LibraryGLClear);
3、打包后设置background:transparent
即<canvas id="unity-canvas" style="background:transparent"></canvas>
4、不能使用HDR,使用unity版本为2020.3.15
加载闪屏问题
<canvas id="unity-canvas" style="background:transparent;opacity: 0;"></canvas>
然后unity加载完成执行
setTimeout(function () {
document.getElementById("unity-canvas").style.opacity=1;
}, 10);
去掉警告
Dotween警告,Tools/Demigiant/Dotween Untility Panel下log behaviour
设置为errors only
TMP警告 Project Settings/TextMesh Pro/Settings下Disable warning开启
使用Addressables报错 Insecure connection not allowed
在unity2022 .1.0a5以后的版本,系统设置默认不支持http请求,只支持https请求。
可以使用一下路径更改系统设置。
Edit -> Project Settings -> Player -> Other Settings -> Configuration -> Allow downloads over HTTP