2018-07-29 11:32:49來源:游戲觀察編輯:誠
7月28日消息,微信小游戲是今年國內(nèi)游戲行業(yè)關(guān)注的熱點(diǎn)之一,許多游戲公司和開發(fā)者都投入其中,推出了不少小游戲產(chǎn)品,據(jù)統(tǒng)計(jì),上線的小游戲作品已超過2000款。而在小游戲生態(tài)逐漸火爆的同時(shí),出現(xiàn)了越來越多的開發(fā)新手,他們?cè)陂_發(fā)小游戲的過程中會(huì)遇到一些開發(fā)問題,以下是對(duì)六個(gè)常見問題提出的解決方法。
微信小游戲一經(jīng)推出就受到了許多開發(fā)者的關(guān)注,目前已有2000多款作品上線。我們也在第一時(shí)間推出了微信小游戲適配解決方案,并持續(xù)優(yōu)化改進(jìn),同時(shí)整理發(fā)布了多篇關(guān)于使用白鷺引擎開發(fā)微信小游戲的FAQ文章(詳情可查看白鷺引擎公眾號(hào)歷史消息),但仍有部分新手開發(fā)者遇到了一些開發(fā)問題。為此我們?yōu)檫@些開發(fā)者夢(mèng)整理出了近期常見的小游戲開發(fā)問題,以供大家參考。后續(xù),我們還將持續(xù)的整理相關(guān)內(nèi)容,幫助開發(fā)者們更好更快的尋找到問題及解決辦法。
1. 微信公眾號(hào)可以關(guān)聯(lián)或跳轉(zhuǎn)微信小游戲嗎?
答:微信公眾號(hào)可以跳轉(zhuǎn)小游戲。實(shí)現(xiàn)方法與小程序跳轉(zhuǎn)差不多。首先需要先在公眾號(hào)后臺(tái)選擇“小程序管理”,添加要關(guān)聯(lián)的小游戲。
小程序管理界面如下:
跳轉(zhuǎn)小游戲
第二步,選擇“自定義菜單”綁定關(guān)聯(lián)的小游戲。
自定義菜單界面如下:
自定義菜單
第三步,若要識(shí)別玩家來源,是從哪個(gè)公眾號(hào)關(guān)聯(lián)來的,可以添加參數(shù)。
在自定義菜單中,找到“小程序路徑”,填寫上參數(shù)地址,格式為“?spid=XXXXX ”。
然后小游戲啟動(dòng)的時(shí)候通過wx.getLaunchOptionsSync()獲得參數(shù)(返回scene值)。
2. 調(diào)用egret.ExternalInterface.call就會(huì)出錯(cuò),為了接入渠道的sdk,把啟動(dòng)的activity改掉了。
答:這個(gè)報(bào)錯(cuò)不會(huì)影響app運(yùn)行,我們?cè)谙乱粋€(gè)版本里就會(huì)解決這個(gè)問題,使用新版本則不會(huì)出現(xiàn)類似報(bào)錯(cuò)。
egret.ExternalInterface.call
3. 由于浮點(diǎn)數(shù)運(yùn)算的原因,是不是沒法保證同樣的兩個(gè)條件,最終結(jié)果都是不一致的?
答:確實(shí)由于是浮點(diǎn)數(shù)運(yùn)算的原因,導(dǎo)致兩個(gè)結(jié)果不一致。兩種解決辦法:1. 結(jié)果取整數(shù)后再比較,但是這樣誤差很大。2.設(shè)閾值,兩個(gè)結(jié)果相減,小于0.1就判斷兩者相等。(推薦第二種方法)
4.用物理引擎的話,從輸入到得到最終結(jié)果中間有一個(gè)過程,那中間的物理表現(xiàn)會(huì)出現(xiàn)明顯的差異嗎?或者雖然有浮點(diǎn)數(shù)的精度問題,但其實(shí)差異不明顯?
答:需要分辨游戲類型, 一般2D小游戲,差異不會(huì)很明顯,例如像最強(qiáng)彈球類游戲,差異就不明顯。
5.對(duì)接小游戲時(shí)報(bào)錯(cuò),第三方腳本出現(xiàn)錯(cuò)誤
第三方腳本出現(xiàn)錯(cuò)誤
答:在使用Asset Manager之前,需要先加載配置文件,然后再用getResByUrl。若已經(jīng) 加載了配置文件,可檢查一下小游戲支持庫版本是否是最新版本。
微信報(bào)錯(cuò)都是第三方腳本錯(cuò)誤,但是還要看具體報(bào)錯(cuò)原因,例如下面這個(gè)報(bào)錯(cuò),就不是未加載配置文件造成的。可能原因是漏配了Tween。
報(bào)錯(cuò)原因
6.反復(fù)打開一個(gè)界面時(shí),并沒有重新加載圖集,但在移除界面時(shí)又進(jìn)行釋放操作,且這個(gè)界面本身不存在內(nèi)存泄漏問題,是什么原因呢?
答:可以在加載和釋放的地方打日志確認(rèn)。