最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

《游戲編程模式》筆記——游戲循環(huán)

2023-09-12 06:32 作者:黑白色的楓  | 我要投稿

什么是游戲循環(huán)

我相信絕大多數(shù)游戲并不是運(yùn)行后自動噼里啪啦的處理一堆數(shù)據(jù)后就自動關(guān)閉的程序。

游戲會等待玩家的輸入,處理數(shù)據(jù),最后把畫面渲染出來告訴玩家的輸入結(jié)果,即使不輸入,處理數(shù)據(jù)和畫面渲染也會一直進(jìn)行下去,直到玩家關(guān)閉整個游戲。

輸入、處理、渲染就構(gòu)成了最簡單也是最關(guān)鍵的游戲循環(huán)。

幀率

那么游戲循環(huán)的速度究竟多快才合適呢?

我們用實際的時間來測試循環(huán)的運(yùn)行速度便得到了幀率(FPS),越高的幀率意味著越流暢的游戲體驗,但是幀率會受到游戲本身以及運(yùn)行游戲的機(jī)器配置受到影響。

固定幀率

通常,可以把幀數(shù)固定為30FPS或者60FPS,這意味著每幀可以讓游戲處理更多的事情。

假設(shè)我們想讓游戲以60FPS運(yùn)行,每幀約16毫秒。只要我們能在這個時長內(nèi)處理完所有的事情,游戲就可以穩(wěn)定的以60FPS運(yùn)行,而我們需要在所有的處理完成后等待一段時間。

再進(jìn)一步,我們希望每幀游戲可以多處理幾次,更充分的利用每一幀的時間,我們可以讓處理進(jìn)行循環(huán),并增加一個步長,在步長追趕上真實時間后再進(jìn)行渲染。

這樣,我們充分的利用了每一幀的時間,但需要我們確定好一個合適的步長。

控制游戲速度的幾種方案

固定時間步長,沒有同步:

最簡單,我們只需要盡可能快的運(yùn)行游戲。游戲速度受游戲復(fù)雜度和硬件性能直接影響,游戲速度和游戲循環(huán)緊密相關(guān)。

固定時間步長,有同步:

比上一個方案復(fù)雜一點,需要在循環(huán)結(jié)尾增加同步點,使游戲不會運(yùn)行太快,這節(jié)約了一部分性能,對硬件比較友好。但是沒有分離處理和渲染,會是播放減慢。

動態(tài)時間步長:

通過動態(tài)步長,避免游戲運(yùn)動太快或者太慢,但會讓游戲變得不確定且不穩(wěn)定。

固定時間更新時間步長,動態(tài)渲染:

最復(fù)雜,也最具適應(yīng)性。以固定的時間更新步長,如果需要追趕上玩家的時間,可以扔掉一些渲染幀。

同樣可以避免游戲運(yùn)行的太快或者太慢,但也更復(fù)雜,需要在實現(xiàn)的時候?qū)懜嗟臇|西。需要將更新的時間步長調(diào)整的盡可能小來適應(yīng)高端機(jī)器,同時不至于在低端機(jī)上太慢。


參考

《游戲編程模式》

《游戲編程模式》筆記——游戲循環(huán)的評論 (共 條)

分享到微博請遵守國家法律
萨嘎县| 揭西县| 治县。| 德昌县| 灵武市| 彭水| 邹平县| 原阳县| 吉木乃县| 兴山县| 望奎县| 临江市| 泸定县| 英超| 旌德县| 金寨县| 红安县| 漠河县| 鄄城县| 股票| 长葛市| 澳门| 芮城县| 云林县| 云梦县| 杂多县| 江阴市| 黎城县| 宁河县| 资阳市| 疏附县| 忻城县| 汉源县| 平阴县| 灯塔市| 洱源县| 北京市| 万载县| 黄龙县| 滦南县| 安化县|