文檔
參考鏈接:https://github.com/wechat-miniprogram/minigame-unity-webgl-transform?tab=readme-ov-file
環(huán)境
Unity 2021.3.15f1c1
Unity 2021.2.5f1c302 wxSDK
HybridCLR 5.0.0
YooAsset 1.5.7
CDN環(huán)境配置:
后臺(tái)配置白名單
YooAssets
微信小游戲注意事項(xiàng):
不支持同步加載。
不支持資源加密。
不支持多Package
關(guān)閉WebGL本地緩存
參考地址
因?yàn)槲⑿判∮螒蚱脚_(tái)的特殊性,需要關(guān)閉WebGL的緩存系統(tǒng),使用微信自帶的緩存系統(tǒng)。
YooAssets.SetCacheSystemDisableCacheOnWebGL();
注意:一定要禁止微信對(duì)資源清單版本文件進(jìn)行緩存(文件名稱樣例:PackageManifest_xxx.version)
注意:如果未調(diào)用該方法,微信小游戲有內(nèi)存崩潰的風(fēng)險(xiǎn)!
針對(duì)微信對(duì)于文件緩存的設(shè)置方法看這里:資源緩存
我當(dāng)前使用YooAssets 所以設(shè)置忽略 .version
初始化不能使用 單機(jī)運(yùn)行模式,聯(lián)機(jī)運(yùn)行模式
只能使用 WebGL運(yùn)行模式
具體請(qǐng)看:https://www.yooasset.com/docs/guide-runtime/CodeTutorial1
不然會(huì)提示:
xception: HostPlayMode can not support WebGL plateform ! Please use WebPlayMode
at YooAsset.ResourcePackage.CheckInitializeParameters (YooAsset.InitializeParameters parameters) [0x00000] in <00000000000000000000000000000000>:0
屏幕適配
屏幕信息可以通過(guò) WX.GetSystemInfo(option); 接口獲取到
關(guān)鍵是獲取到之后如何使用。
適配相關(guān)的有3個(gè)參數(shù),SystemInfo.screenWidth
SystemInfo.screenHeight
SystemInfo.safeArea
如下圖所示,屏幕坐標(biāo)和 unity 不同,unity 中 ScreenHeight 是從下到山是 y 正方向,而微信中是 從上到下是 y 正方向。適配時(shí)候需要注意換算
問(wèn)題
1、引擎選擇
2、導(dǎo)出設(shè)置
轉(zhuǎn)換插件不能勾選 IL2CPP Optimize Size,勾選會(huì)導(dǎo)致 自動(dòng)設(shè)置為 Faster (smaller) builds,導(dǎo)致報(bào)錯(cuò)。
3、StreamingAssets
Unity 轉(zhuǎn)微信小游戲,使用的事 WebGL 平臺(tái),此平臺(tái)下的StreamingAssets 目錄不會(huì)隨著打包自動(dòng)進(jìn)入包體。需要使用動(dòng)態(tài)資源加載 aa、ab、yoo 等等方式加載。
AOT 補(bǔ)充元數(shù)據(jù)的過(guò)程不能再使用離線模式,只能使用正式模式或者直接放入 Resources 中加載,但是要注意放入 Resources 中會(huì)增加首包大小。
4、代碼里不能使用Thread類,Task.Delay 之類的方法需要換成其他方法,我這里有自己寫(xiě)的 job.make 使用攜程替換。
注意:
YooAsset 的同步加載方法LoadAssetSync 也不能用,因?yàn)槠鋬?nèi)部使用了Thread 的方式。
使用后報(bào)錯(cuò):
WaitForAsyncComplete failed ! WebGL platform not support sync load method !文章來(lái)源:http://www.zghlxwxcb.cn/news/detail-848928.html
至此所有程序代碼在微信開(kāi)發(fā)者工具中正常啟動(dòng)運(yùn)行,可以上傳成功。文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-848928.html
到了這里,關(guān)于Unity轉(zhuǎn)微信小游戲 HybridCLR + YooAsset 實(shí)踐的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!