單元測試-記分板(ScoreBoard)
2022-06-30
在遊戲專案-穴穴逆(Acupoint Reverse)中,記分板的判定,是遊戲結束很重要的一環。但為了測試分數與評級而一直去遊玩遊戲,顯然是不切實際的。為此,我專門寫了一個將每個關卡的滿分都計算進去的函式,用以快速確認遊戲關卡的結算評分是否符合預想。
在遊戲專案-穴穴逆(Acupoint Reverse)中,記分板的判定,是遊戲結束很重要的一環。但為了測試分數與評級而一直去遊玩遊戲,顯然是不切實際的。為此,我專門寫了一個將每個關卡的滿分都計算進去的函式,用以快速確認遊戲關卡的結算評分是否符合預想。
遊戲專案-穴穴逆(Acupoint Reverse)的轉盤,是比較特別的遊戲行為之一。實現的方式為,建立四個參考點,捕捉游標(或手指)軌跡,並分別取Magnitude作為距離。當觸發轉盤時,以最近的參考點為出發點,向下一個參考點滑動游標。根據指定的方向(順時針或逆時針),判斷玩家是否正確轉動圓盤。
在遊戲專案-穴穴逆(Acupoint Reverse)中,由於遊戲時間、打擊點、音樂播放三者息息相關,因此計時器的使用相當重要。在接觸啟動專案之前,我起初並不曉得一般Unity的計時的Time.DeltaTime,與音樂的播放時間會存在較大的誤差,使得打擊無法正確判定。經過調整後,改由AudioSettings.dspTime取代。並在遊戲進行時,以時間點控制打擊音符的方式,並透過一些即時的運算補償,使打擊點與時間可以與時間對應。