為什么電影24幀就很流暢 而游戲30幀卻卡的要命?
很多朋友或許都有這樣一個(gè)疑問:大部分電影的幀數(shù)都是24幀,播放起來(lái)非常流暢 ,肉眼根本捕捉不到任何卡頓現(xiàn)象;但是用電腦玩游戲的時(shí)候卻完全不同,只要幀率在60幀以下,總是覺得游戲變卡了,這究竟是為什么呢?
談?wù)撨@個(gè)問題之前,有必要先為大家簡(jiǎn)單介紹以下幀數(shù)是什么。
其實(shí)很好理解。幀數(shù)就是在1秒鐘時(shí)間里傳輸?shù)膱D片的量。通常用fps(Frames Per Second)表示。
每一幀都是靜止的圖象,快速連續(xù)地顯示幀便形成了運(yùn)動(dòng)的假象。高的幀率可以得到更流暢、更逼真的動(dòng)畫。每秒鐘幀數(shù) (fps) 愈多,所顯示的動(dòng)作就會(huì)愈流暢。
所以我們看到參數(shù)中的 “30幀” 其實(shí)就是說(shuō) “在一秒的時(shí)間內(nèi),拍攝30張靜態(tài)畫面,然后通過播放使其連接起來(lái)”,因?yàn)槿搜鄣囊曈X殘留特性:是光對(duì)視網(wǎng)膜所產(chǎn)生的視覺在光停止作用后,仍然保留一段時(shí) 間,原因是由視神經(jīng)元的反應(yīng)速度造成的。
反應(yīng)速度時(shí)值是二十四分之一秒(也就是說(shuō)播放每秒超過24幀靜態(tài)畫面,在人類肉眼看起來(lái)就是流暢而連續(xù)無(wú)卡頓的動(dòng) 態(tài)畫面),這也是電影等視覺媒體形成和傳播的根據(jù)。所以我們目前看到的電影基本都是24幀的。
那么我們的問題來(lái)了,為什么電影24幀很流暢,而游戲30幀卻卡的要命呢?其實(shí),主要原因就在于,電影和游戲的圖像生成原理不同。
電影的24fps,是每1/24秒拍攝一副畫面,如果你玩過相機(jī)的手動(dòng)設(shè)置,你應(yīng)該知道如果以1/24秒的快門速度拍攝一個(gè)運(yùn)動(dòng)的物體會(huì)“糊”掉,而正是這樣“糊”掉的畫面連起來(lái)才讓我們的眼睛看上去很“流暢”。
而游戲卻不用。游戲畫面不是按1/24秒快門拍出來(lái)的,而是每一幅畫面都是獨(dú)立渲染出來(lái)的,之所以跑成24fps是因?yàn)轱@卡處理能力不夠而“丟棄”了其中的一些畫面,這樣一來(lái)每?jī)煞嬅嬷g就不連續(xù)了,自然看上去會(huì)“卡”。
舉個(gè)例子,一個(gè)圓從左上角移動(dòng)到右下角,如果是電影,第一幀與第二幀可能是類似下圖這樣的:
二如果是游戲畫面,第一幀與第二幀會(huì)類似下面這兩張圖:
大家也可以拿電影中的快速移動(dòng)畫面截圖與游戲中的相比較,效果會(huì)更加直觀,例如這樣:
可以看出上面第一張極品飛車?yán)锏慕貓D,車速明明很快,但是如果我們截圖的話,還是清晰的幀。而電影中無(wú)論是車輛還是快速運(yùn)動(dòng)的背景都是虛化的。
簡(jiǎn)單來(lái)說(shuō),電影雖然幀率僅為24幀,但是每一幀都包含了一段時(shí)間的信息,而游戲則只包含那一瞬間的信息。
一個(gè)電影在一段時(shí)間內(nèi)曝光,畫面的每一幀,都包含有一段時(shí)間的信息,這段時(shí)間的長(zhǎng)度由快門時(shí)間決定,最長(zhǎng)不能超過1/24秒,所以視頻中每一幀包含信息量較大(幀與幀之間有模糊的圖像,這與人眼快速轉(zhuǎn)換視角也是相似的)。
而游戲里的每一幀只有這一個(gè)瞬間的信息,幀與幀之間的信息完全丟失了,所以必須通過更多的幀數(shù)來(lái)使圖像過渡自然,為了解決這一問題,一些游戲中也加入了模擬電影模糊效果的畫質(zhì)選項(xiàng)。
此外,幀與幀之間,間隔恒定:人眼對(duì)于動(dòng)態(tài)視頻的捕捉是非常敏感的,電影幀率是固定不變,肉眼很難察覺出異常,而游戲的幀率卻是很容易變化的。
如果手動(dòng)鎖定幀數(shù),顯卡會(huì)默認(rèn)渲染最高幀率,玩家觸發(fā)的很多劇情往往伴隨劇烈的畫面變動(dòng),這時(shí)顯卡的幀率就會(huì)出現(xiàn)下降,前后不一致的幀率很容易被肉眼捕捉,這時(shí)我們就會(huì)覺得,游戲變“卡”了。