前言:
公司要做個很簡單的益智遊戲(拖拉物件答題),原本是做本地執行檔,後來改成web遊戲(不確定是給客戶host還是公司host),然後連假前同事問我能不能加個FB分享功能,出去爽玩回來後剛好做個小研究收收心XD。
瀏覽圖:
用我的Github page來Host,
網址(在game標籤頁那邊,等等要做遊戲prototype,內容物大概會不一樣)。網頁製作過程可以看
上篇。
作法參照這個影片,雖然他的目標平臺是安卓,但web也通吃。(在這之前看了幾個web版的教學都失敗
):
網站那邊需要填入自己Host的網址。試過用Gamejolt來host,不過沒有成功。
((網站網址只能設定一個,有點小氣
Unity打開 Facebook>Setting貼上自己的ID。
不知道在哪篇文章看到,說把Compression format改成Disabled能加快讀取速度。
(備註: 可解決網頁debug出現"ReferenceError: unityFramework is not defined at HTMLScriptElement.n.onload"的錯誤
輸出成webGL,整包丟在網頁目錄下,再用超連結連去該目錄下的index.html即可。
差不多這樣就能用了。
其他:
雖然分享按鈕程式碼可以設定title或內容等資訊,但根據官方文件來看,那些都已經不適用了,亦即contentTitle和contentDescription都設心酸的而已。
雜談:
實習的心得: 公司的需求不單單只是"遊戲"。甚麼都略懂一點比較好,至少在他人提出一個新功能的時候有能力判別該功能的可行性。
之前跟公司做的是手機APP內包含Unity遊戲,輸出成IL2CPP編碼,由外層App呼叫開啟,玩完後再由Unity呼叫App方法收回遊戲,做法可以參考官方文件:
安卓、
IOS。
不太知道APP端怎麼處理的,Unity這邊的處理是放一個全黑畫面的MainScene,上面有個GameObject隨便取叫"Start",上面掛著有StartGame(string _json_text_Info)方法的腳本。
APP開啟Unity時呼叫:
UnitySendMessage("Start", "StartGame", "json data");
再由Unity該方法做後續處理。(例如依照用戶資料切換scene)
Unity這邊遊戲結束時,呼叫"關閉遊戲"的方法,該方法並不是真的關掉遊戲,而是給外層的APP打一個pass。(若用Application.Quit()會連外層的APP一起關掉。)
安卓作法(關閉遊戲的方法在這裡統一叫做"callBackClick"):
IOS作法:
對,就只是call而已,實際切換回app就交給外層app工程師去處理了。
雜談2:
目前幫公司做最多的是AR的東西。
因為APP上架要維護,又要分安卓與IOS版本,所以公司偏向能用Spark AR做的都盡量用Spark AR做,但偏偏Spark AR腳本文獻很少,上傳FB濾鏡審查標準也很G8,有次某個濾鏡一直被退件,我就在備註欄用英文打"這濾鏡完全符合審查標準,而我下不了班就因為這個濾鏡一直審查不過。" 送出幾分鐘馬上多了4個違規事項給打發回來,有夠怕,看來審查人員也夠兇。
雜談3:雖然這款目標是放在web上玩,但同事也問能不能用手機玩、用手機瀏覽有沒有RWD功能等問題
(更新: 測試發現webGL會把手指當成mouse input,所以可以通用