一、概述
接觸過游戲開發(fā)的人都知道,在游戲中,計(jì)時(shí)器是一個(gè)非常重要的工具,用來(lái)精確地控制游戲幀數(shù)和動(dòng)畫的播放。要正確實(shí)現(xiàn)動(dòng)畫效果,我們就必須記錄時(shí)間,尤其是要精確測(cè)量動(dòng)畫幀之間的時(shí)間間隔。當(dāng)幀速率高時(shí),幀之間的時(shí)間間隔就會(huì)很短;所以,我們需要一個(gè)高精度的游戲計(jì)時(shí)器。
在我們D3D11的學(xué)習(xí)過程中,會(huì)經(jīng)常用到計(jì)時(shí)器,因此設(shè)計(jì)一個(gè)具備基本功能的方便使用的計(jì)時(shí)器類很有必要。我們現(xiàn)在使用一個(gè)篇幅來(lái)介紹一個(gè)簡(jiǎn)單游戲計(jì)時(shí)器的實(shí)現(xiàn)。
二、計(jì)時(shí)和動(dòng)畫
2.1 系統(tǒng)高精度計(jì)時(shí)器
我們使用系統(tǒng)高精度計(jì)時(shí)器來(lái)實(shí)現(xiàn)時(shí)間的精確測(cè)量。為了使用用于查詢系統(tǒng)高精度計(jì)時(shí)器的Win32函數(shù),我們必須在代碼中添加包含語(yǔ)句“#include<windows.h>”。
高精度計(jì)時(shí)器采用的時(shí)間單位稱為計(jì)數(shù)(count)。我們使用QueryPerformanceCounter函數(shù)來(lái)獲取以計(jì)數(shù)測(cè)量的當(dāng)前時(shí)間值:
1
2
|
延伸閱讀
我想了解如何學(xué)習(xí) |