遊戲為何總是卡?人眼成像背後的秘密
2023-10-25 14:55:16
泡泡網顯卡頻道10月30日 公元1000年間漢人發明的走馬燈也許是世界上最早應用到視覺暫留原理的東西了。燈內點上蠟燭,燭產生的熱力造成氣流,令輪軸轉動,輪軸上有剪紙,燭光將剪紙的影投射在屏上,圖象便不斷走動。因為大多在燈各個面上繪製古代武將騎馬的圖畫,而燈轉動時看起來好像幾個人你追我趕一樣,故名走馬燈。後來法國人保羅·羅蓋在1828年發明了留影盤,它是一個被繩子在兩面穿過的圓盤。盤的一個面畫了一隻鳥,另一面畫了一個空籠子,當圓盤旋轉時,鳥在籠子裡出現了。
究其原理,物體在快速運動時, 當人眼所看到的影像消失後,人眼仍能繼續保留其影像0.1-0.4秒左右的圖像,這種現象被稱為視覺暫留現象,是人眼具有的一種性質。人眼觀看物體時,成像於視網膜上,並由視神經輸入人腦,感覺到物體的像。但當物體移去時,視神經對物體的印象不會立即消失,而要延續0.1 -0.4秒的時間,人眼的這種性質被稱為「眼睛的視覺暫留」。
當年的宋朝人顯然沒有意識到視覺暫留的重大意義,時至今日,這種現象廣泛的應用在人們生活的方方面面,無論是之前的CRT顯示器,還是液晶或者等離子;無論是膠片,模擬信號還是藍光,數字圖像,無一例外用到了人眼的視覺暫留。
我們常說的「幀數」,就是在1秒鐘時間裡傳輸的圖片的量,也可以理解為圖形處理器每秒鐘能夠刷新幾次,通常用fps(Frames Per Second)表示。每一幀都是靜止的圖象,快速連續地顯示幀便形成了運動的假象。
關於「人眼不能分辨超過每秒30幀的畫面
後來人們通過研究發現,高的幀率可以得到更流暢、更逼真的動畫,要生成平滑連貫的動畫效果,幀速率不能小於8;每秒鐘幀數 (fps) 愈多,所顯示的動作就會越流暢,但與此同時,文件體積會變得越大。一般來說人眼能繼續保留其影像1/24秒左右的圖像,所以一般電影的幀速率為24fps。而對於幀數忽快忽慢的遊戲而言,平均30幀也算流暢了。
有些視頻甚至只有17幀
大家可能會問:既然對於人眼來說,遊戲30幀就流暢啦,那幹嘛還要到60幀,甚至是120幀?最近幾年越來越多的人有這樣的切身體驗:明明平均幀數超過30幀大感覺依然遠遠不夠,即使平均幀速率達到60FPS,依然不能杜絕卡頓的現象,這又是什麼原因呢?
通過研究測試,我們發現這是因為遊戲畫面的幀數並不像電影那樣間隔時間相等,而是忽快忽慢,所以肉眼觀察出30幀以上的遊戲,依然有卡頓現象完全可能!就這個話題,本文帶大家一起探索遊戲卡頓的秘密,揪出導致畫面延遲的元兇!