五.非專業(yè)優(yōu)化
這邊先討論些非專業(yè)關(guān)於優(yōu)化的話題吧,如何優(yōu)化遊戲的方法很多,包括基本將場景上的靜態(tài)物件勾選static之類的(會移動有加動畫,例如我們主角本身別勾)
由於Sketchfab這網(wǎng)站有一點要注意的,下載前建議看一下Triangles / Vertices (簡稱tris / verts)值
想完全了解這值是甚麼請參考:
懶人包:像我貼這模組tris有944.6k以手遊來說真得太高了(PC沒親測),自己稍微測試一下,一個場景最好別超過400k,不然畫面會不太順暢。
若是值太高,有兩種解決方法
1. 再找個類似值又低的模組代替
2. 到steam下載一款叫Blender的軟體,載好後啟動(此方法會降低模組品質(zhì),使用前請斟酌)
然後確定下載的模組是哪種副檔名就import那種類型的(obj為例):
選擇要引入的目標(biāo)路徑找到obj後按下import:
接下來如何減少tris/verts可參考(雖可大量減少但付出代價就是降低模組品質(zhì)):
完成後再export就好了
有些場景已經(jīng)降低tris/verts後,仍有些輸出到手機上還是很卡,又花了些時間摸索,直到更改些關(guān)於lightmap的設(shè)定…
懶人包:某場景很卡的話建議將光源的Mode改Baked(注意此只適用於靜態(tài),若是會移動或加上動畫者不適用),然後至Window > Lighting > Settings 往下拉找到Mixed Lighting打勾,然後按下底下的Generate Lighting進行(記得將靜態(tài)勾statick,不然照完會呈現(xiàn)黑色),場景物件材質(zhì)越多執(zhí)行時間也越長CPU也吃很大,假如想降低光照時間,可到Lightmapping Settings中的Indirect Resolution設(shè)定成0.05之類的(預(yù)設(shè)2),照此設(shè)定我這邊放到手機上後就變得很順,若是結(jié)果不如預(yù)期更糟糕可以選擇ClearBaked Data將光照去除。
原本輸出放到手機上測試整個很卡,做了以上幾件事後順很多…
六.再提AI enemy
此次遊戲中的鬼怪仍沿用上一篇所提到的:
後來有稍微改了些程式所以會有不一樣的變化,雖然影片都有教但我將幾個可能會忘記加的提一下,整個敵人完成後再編輯時大概長這樣:
最外面的綠框是負責(zé)感應(yīng)玩家的(Box Collider記得Trigger),玩家在被感應(yīng)到敵人就會追上去,除非逃離感應(yīng)區(qū)(這些Box Collider都會隨著怪物一起移動),記得在敵人身上裝Nav Mesh Agent,不然敵人不會動:
至於這兩個script可以看上面影片&說明區(qū)取得,主要是敵人一開始會跟著有動畫的隱形物件走,感應(yīng)到玩家就追玩家,玩家逃離回去繼續(xù)跟著隱形物件:
然後這個跟敵人差不多寬的Box Collider則是玩家碰到就GG,而GG後要加上死亡動畫或是直接死亡則看自己要如何設(shè)計:
然後這是敵人可移動的範(fàn)圍(我是用3D Plane),鋪完後記得勾右上角的Static:
八.其它
過程中難免出現(xiàn)一些不應(yīng)該有的錯誤分享一下(看不懂沒關(guān)係此處可略過)
疑問.明明放了一個敵人也加上Nav,敵人會朝我衝過來但碰到我怎沒反應(yīng)?
解決.敵人身上box collider少勾trigger
疑問.增加一個UI按鈕但按一下卻變成好幾下?
解決.將程式碼中的GetButton 改成GetButtonDown
疑問.在某物件上加動畫然後執(zhí)行測試,物件卻沒任何動畫?
解決.找到物件上的Animation > 右上角點Debug > Legacy打勾
疑問.在某物件上加動畫然後執(zhí)行測試,卻顯示錯誤Null值?
最後再來匯整一下:
宣傳片使用:Sony Vegas Pro13
圖片或Logo相關(guān):PhotoShop
尋找教學(xué)或是程式碼相關(guān):Google或Youtube(建議使用英文搜尋)
翻譯相關(guān):Google / Google翻譯
記錄撰寫:Word / Excel
截圖:Bandicam
20210911更新懶人包 :
1.Build Settings 請勾選Build App Bundles(Google Play)
(如果是前幾年就發(fā)佈過的應(yīng)用程式可以不用勾,可以照以下的方法就好(Split Application Binary),更多可以參考這裡 : https://forum.gamer.com.tw/C.php?bsn=60602&snA=3915&tnum=1)
2.Project Settings中的Scripting Backend選ILI2CPP
(若遇到IL2CPP.exe Did Not Run Properly的輸出問題,需要額外安裝vs c++ build tools)
3.再勾選下方的ARMv7 / ARM64
4.API至少要30以上
(YT搜尋"Android Studio API30",後續(xù)幾年後的要求會越來越高)
5.Publishing Settings請記得申請一組Key並輸入密碼,不然無法上傳到Google Play
(詳細說明可至YT尋找"阿葉Google Play")
上傳GooglePlay:
接著如果要輸出成APK的話要記得載SDK與JDK要不然無法正常輸出
(我的SDK/JDK是在幾年前就安裝好的,當(dāng)初是不是去官網(wǎng)載的我也忘了~~”,總而言之,大家可以直接去官網(wǎng)下載,影片說明處有下載網(wǎng)址)
載完解壓縮後,回到Unity > Edit >Preferences > External Tools 將剛剛壓縮完成的路徑加進去。
平臺切換成Android(可能需要一些時間):
假如輸出出現(xiàn)紅字錯誤的話,錯誤的緣由也是百百種…,當(dāng)初輸出時也是遇到蠻多問題的~~”,譬如可能輸出完後跳出兩三條error,可能是將場景中的某個物件沒刪乾淨(jìng)或是更換SDK版本,建議可以將error紅字整個複製起來google找答案。
接著要做的就是開通Google Play Console
懶人包:Google搜尋Google Play Console進入網(wǎng)站登入Google帳號使用信用卡購買後臺(美金25元,一次性付清,之後要再上架第二款apk就不用再付了)
接著沒意外會來到後臺管理頁面:
接下來大家比較關(guān)心的是賣出的摳摳要怎麼匯到我們的帳戶(免費apk可無視),點左下角的設(shè)定>開發(fā)人員帳戶>Payments設(shè)定頁面裡的>收款方式,裡頭就可以設(shè)定你的銀行帳戶了
接下來呢..講述一下我在剛開始註冊使用這後臺印象是非常好的在心裡也是打了蠻高的分?jǐn)?shù),直到我要將APK上傳後續(xù)遇到的問題,整個印象是大打折扣唉..
首先要先通過審核前要做到:
l 商店資訊(apk名稱 / 說明 / 圖片 / 影片 / 網(wǎng)站等等)
l 內(nèi)容分級(詢問遊戲中是否包含情色或是暴力之類的勾選題,最後會自動幫你分級)
l 定價與發(fā)佈(免費&付費,以及定價範(fàn)本 / 廣告/ 提供給哪些國家下載)
l 應(yīng)用程式版本(詳情見下方)
統(tǒng)整一下要上傳APK的重要事項:
l APK若大於100mb會麻煩些
l API目標(biāo)等級需高於28
l 需支持32/64位元
l APK需包含金鑰(上面影片有教)
若以上你都沒問題,那恭禧你下面一大串類似抱怨文的…可以跳過了
登入後臺後建立一個應(yīng)用程式,進去後點選應(yīng)用程式版本,裡面有alpha beta 正式版本可以選擇,點進去同意金鑰後就可以上傳apk,此時的我內(nèi)心是蠻興奮的,結(jié)果出現(xiàn):
哪泥!? 我現(xiàn)在才知道…
此時的我去google查一下什麼是apk擴充程式檔,看了部分的教學(xué)文章頓時懷疑人生
直到我找到這篇才感覺有救了:
只要勾選publishing settings > split就能解決大於100mb問題了,於是我勾了重新輸出一次,再次抱著期望放上去結(jié)果:
上網(wǎng)查了下這api高於28原來是前陣子的新政策..,將build setting打開來看我的api:
上面記得放你sdk路徑
更新完後,再去看了一下還是沒有出現(xiàn)api28,然後我就想到我之前有載unity2018於是打開看了下竟有api28,所以我就花了些時間用2018去開啟專案(這邊要注意,假如要用別的版本去開啟,記得一定要先備份,否則升級過程或是後續(xù)error無法解決的話,心血也在一瞬間化為烏有),等了幾小時候完成了,剛開始一定會有些error此時先別緊張,把那些error紅字複製起來去google基本上都能解決,但lightmap的部份有許多場景都要重來,所以只能一張一張慢慢light…,此時我心想2017雖然沒有api28但是有個選項叫做automatic highest installed,想說會不會自己去抓api28勒,於是我又開啟了2017輸出上傳結(jié)果竟然成功了!!
上傳成功後,心想著這次覺得大丈夫了,興奮的我按下審核到了下一頁
FK!!
又上網(wǎng)查了下這是跟api28政策同時上路的有夠幹…,趕緊打開unity看2017似乎沒有支援到64位元的(需要有armv7 / arm64),這時的我想想趁這次機會乾脆直接升到最新的2019算了,於是先備份好,接著放了幾個小時升級完成了,打開setting頁面看了下:
總算是有我們要的了(armv7 / arm64),這邊分享一個教訓(xùn)…,圖下方有個x86別勾,我第一次輸出時三個全勾上傳到google play一樣說沒64位元,因為x86只有32沒64所以一樣偵錯 唉…,後來只勾上面兩個就過關(guān)了,接著會發(fā)現(xiàn)頁面左邊的選項會有很大的改變,之後就放著給google play審核個幾天(剛好雙十連假,看個幼女補充一下老僧的慾望)
其實還有種方式叫app bundle可以取代app/odd方法,只要輸出時勾選就能使用(版本區(qū)高於2018.3 beta),但我上傳後仍出現(xiàn)憑證不足的問題,上網(wǎng)查了下感覺心好累只好暫時勸退使用apk/odd就好了…
審核過了以後,商店資訊/分級該填的該選的都完成後,回到應(yīng)用程式下方點選開始alpha測試版,要做的就是成為測試人員,測試apk是否正常,點選頁面左邊的版本管理 應(yīng)用程式版本裡尋找你的上傳的apk(我從alpha開始,所以去alpha區(qū)找),點進去後
來到這裡,複製下方的接受網(wǎng)址,開個新分頁貼上後會詢問你是否成為測試人員,接受後就可以下載了(由於是測試版故不會扣除任何費用)
終於可以看到商店頁面了,真香!!==
可以用手機/模擬器測試是否正常,若想更改遊戲內(nèi)容需重新輸出,重新上傳即可(應(yīng)用程式版本右上角建立新版本),確定沒問題後,alpha頁面會有一個發(fā)布正式版(沒截到圖)能直接正式對外發(fā)佈,還有不論是更換版本還是正式發(fā)佈都需要些時間給google play更新。
這上傳的部分花了幾天的時間才完成…,原本預(yù)估10月初正式發(fā)佈結(jié)果搞到快10月底了= =”,希望大家也能順利發(fā)佈APK!!
成品:
講了許多,總歸一句...unity載最新版本就不會有這麼多問題了...
結(jié)論&其他:
結(jié)論:這遊戲也大概花了快半年才做好吧,期間仍會看阿津玩些恐怖遊戲,有些恐怖遊戲可能真的抱持著…隨便做一做就丟上平臺販?zhǔn)郏凑阗I了就買了這是你的選擇,此時買家可能會覺得自己是盤子,但我不想要這樣做,雖然我做的也是個小作品而已,在整體遊玩與優(yōu)化以我目前的實力是無法做到完美的,但我希望能越做越進步,學(xué)到的知識也越多,例如下一款想挑戰(zhàn)多人…也沒很多,大概能做到雙人連線的遊戲就算不錯了。
其他: 嗯…,若是不想耗手機電,可以用電腦下載模擬器來玩,現(xiàn)在手遊如此盛行,每個人電腦應(yīng)該都會有夜神/ BlueStack / 雷電之類的,我以BlueStack為例(測試皆正常),個人習(xí)慣配置如下:
普通模式:
WASD:角色移動
方向鍵:環(huán)繞四周
空白鍵:觸發(fā)事件
~:選單ESC
Tab:特殊道具
其它選項:使用滑鼠點擊
攻擊模式:
E:新觸發(fā)事件(原空白鍵變?yōu)樯鋼?
R:換彈匣
建議做完一款遊戲,有時間的話記得列一個Credit名單,可將使用過的網(wǎng)站 / 模型 / 音樂音效等等都列入其中,雖然不強迫但我習(xí)慣花些時間做一個完美Ending
送給想做遊戲的各位:製作的過程雖會碰上許多瓶頸,但…天無絕人之路,肯花時間一定能找到答案,加油!
再次附上些連結(jié),文章有時間再撰寫的完整些,一樣若是有玩家支持遊玩過程中有發(fā)現(xiàn)什麼BUG歡迎寄信給我,感謝各位花時間觀看!
FB粉絲頁:
遊戲宣傳片:
11/02:更新優(yōu)惠11/02~11/09將有七折優(yōu)惠 至於如何使用,先進後臺點選應(yīng)用程式>商店發(fā)布>定價與發(fā)佈>銷售活動內(nèi)可設(shè)定日期與折扣
像這樣:
若有紅字需更正,否則無法使用:
設(shè)定完後就會顯示在頁面上,跟steam一樣,冷卻時間30天