http://www.manew.com/thread-43998-1-1.html
代碼是顆樹
執(zhí)行有順序
Update函數(shù)的驅(qū)動是如何完成的呢?
這個東西就是主循環(huán)
**計時器**
因為每一幀開始到上一幀開始的間隔給你了。只要把他們累加起來,就是一個計時器。
這個計時器是最基本的一個邏輯,固定幀率在游戲中只是一個理想化狀態(tài),大部分情況下無法實現(xiàn)固定幀率。幾乎所有的游戲邏輯都涉及到計時問題,都會涉及到如何在浮動幀率時進行邏輯控制。
時間是連續(xù)累加的,請時刻記住這一點。
主循環(huán)與緩動
用定時器去驅(qū)動數(shù)值的變化,在一些情況下,被稱為緩動,dotween,itween,名字里有個tween的這類庫或者插件,都是做緩動的
主循環(huán)和狀態(tài)機
在順序執(zhí)行的程序體系中,狀態(tài)機依然是編程的基礎(chǔ)。
我們前面告訴過大家單步調(diào)試,
每一個斷點,就是一個狀態(tài)。
程序是由一個一個的狀態(tài)構(gòu)成的。
再從更大的尺度看,功能模塊和程序結(jié)構(gòu)的角度,狀態(tài)機依然是功能的基礎(chǔ),我現(xiàn)在處于主菜單還是戰(zhàn)斗菜單?我現(xiàn)在是在充值還是還消費?
同級別的功能某一時刻必然處于某一功能中,是我們的設(shè)計基礎(chǔ)。游戲框架從哪里開始,必然從狀態(tài)的分割開始。有些框架提供了一個比狀態(tài)機更高級一點的模式,
導航器,其實也屬于狀態(tài)機,
但是導航器記錄著之前的狀態(tài),可以NavBack。導航器模式是什么?隨便點開一個手機app,點一個功能,再點一個功能,然后按back,back,這就是導航器。