指哪打哪的遊戲是如何實現的? 揭秘光槍背後的原理
2020年03月04日17:35

  玩射擊遊戲使用鍵盤和鼠標好一些?還是使用手制好一些?在面對這種問題時,相信很多人都會毫不猶豫地選擇鍵盤和鼠標,因為這種操作方式相比於手制操作更加精準。但其實還有一種更加原始、更加直接、更加容易上手的操作方式被大部分玩家所遺忘,那就是指哪打哪的光槍。不知道有多少朋友好奇過,為什麼一把塑料玩具槍衝著屏幕來一槍,就能夠擊中遊戲中的角色?那麼今天硬核的AGamer就來與各位聊聊隱藏在光槍背後的秘密吧。

  第一代光槍與《打鴨子》

  早在FC紅白機時期,就已經有光槍外設的存在了。與FC同捆發售的光槍外設具有手槍的外觀,因此在日本的命名為“光線銃”,而歐美的名稱則是“Zapper”。雖然它不是第一款光槍,但卻是第一代光槍中名氣最大的一款。儘管外形看上去是“槍”,名字裡面也包含“槍”,但它並不是真正的“槍”,只不過是一個攝像頭罷了。

  Zapper光槍

  那麼攝像頭是如何當做“槍”來使用的呢?大名鼎鼎的光槍遊戲《Duck Hunt》,也就是國內俗稱的《打鴨子》,相信絕大多數玩家都比較瞭解,下面就用《打鴨子》來分析一下第一代光槍的原理。

  經典光槍遊戲《打鴨子》

  首先要知道的是,對於遊戲來講,屏幕並不是一整塊的大區域,而是會被分為NxN的小區域。當玩家扣動光槍扳機時,屏幕會變成全黑色,這是用來檢測光槍是否正對著屏幕。隨後屏幕中的鴨子(目標區域)會依次變成白色,除了當前的鴨子是白色外,其他區域都是黑色。同一時刻最多隻能有一直鴨子變白色,這是為了保證當前檢測鴨子的唯一性。所有鴨子輪流變白一遍後,畫面恢復正常,整個過程大約持續0.1秒。在這段時間內,光槍中的攝像頭會去檢測正對著的物體是否是白色,如果是白色則判斷射擊命中鴨子,否則就判斷射擊落空。

  4個狀態

  這種檢測方式雖然巧妙,但是也存在著弊端:

  1。因為光槍中攝像頭只判斷正對著的是否是白顏色,無法判斷光槍正對著的精確位置,也就是說在檢測瞬間對著白紙開槍也是會被系統判定為命中的。

  2。這種遊戲的原理註定要利用屏幕閃爍才能實現,因此目標越多,閃爍就越厲害,對眼睛的傷害就越大。

  實際效果

  第二代光槍與陰極射線管

  到了SFC超級任天堂時期,光槍也隨之得到了升級。但是第二代光槍Super Scope必須配合採用隔行顯示的CRT(陰極射線管)電視(俗稱“大腦袋”或者“大屁股”電視)才能使用。這裏知識點比較多,讓我們一步步來瞭解。

  SFC的光槍Super Scope

  CRT電視的圖像顯示原理

  CRT(Cathode Ray Tube,陰極射線顯像管)電視裡面有一根真空管,一個或多個電子槍。當電子槍射出的電子束轟擊螢光屏上時,就會讓屏幕內測的螢光粉發光,眾多的發光點按照一定的規則排布就形成了圖像。

CRT電視原理
CRT電視原理

  螢光粉受到高速電子的轟擊時會吸收能量,其中的電子會從低能級躍遷到高能級,但由於高能級非常不穩定,馬上又會從高能級回到低能級,並將能量以螢光(光能)的形式釋放出來。這就意味著電子束轟擊屏幕所能維持的發光時間是很短的,想要讓屏幕穩定的發光就必須持續發射電子束。

螢光原理
螢光原理

  電子槍並不是同時發出大量電子束同時打在屏幕上的,而是從電視屏幕的左上角開始,由左至右、從上到下以Z字型的軌跡掃過整個屏幕的。由於人眼具有視覺暫留現象(Persistence of vision),即在看到光的作用結束後,視覺影響並不立即消失, 而是暫留時間約為0.1至0.4秒(中等亮度的光刺激),於是便能夠將屏幕上的發光點識別為一幅完整的影像。

掃瞄束
掃瞄束

  隔行顯示與逐行顯示

  按照正常的思路思考,電子束應該就是一行接著一行地掃瞄的,但事實並非如此。CRT有PAL和NTSC兩種製式(區別見註釋1),這裏以國內國內使用的PAL製式說明,因為PAL電視垂直方向有625行掃瞄線,如果電子束一行一行地掃到最後一行最後一個點時,第一行第一個點可能早就熄滅了(帶寬不夠)。於是人們便想到了一個解決方式,那就是第一次掃瞄只掃瞄1,3,5的奇數行,第二次掃瞄只掃瞄2,4,6的偶數行,兩次疊加就能夠拚成完整的畫面了。因為這種掃瞄方式是間隔著掃瞄的,也就取名為“隔行掃瞄”(interlaced scan),而一行接著一行掃瞄的方式就叫做“逐行顯示”(progress scan)。

隔行掃瞄
隔行掃瞄

  常常聽到的480p和480i後面的字母就是表示掃瞄方式是逐行還是隔行。下面用一張動圖來直觀地表現一下這兩種掃瞄方式的差別,雖然用時相同,但是感覺卻是不同。假設顯示一張完整的圖(一幀畫面)需要10秒鍾,那麼在5秒鍾時,逐行掃瞄只能看到半個屏幕,剩下半個屏幕內容完全未知。但是隔行掃瞄已經可以大致猜出來要顯示的內容了,剩下的靠自己腦補就足夠了,無非就是一些細節可能猜不到而已(註釋2)。

逐行掃瞄與隔行掃瞄
逐行掃瞄與隔行掃瞄

  註釋1:

  PAL電視標準是:每秒25幀,電視掃瞄線為625線,奇場在前,偶場在後,標準的數字化PAL電視標準解像度為720*576, 24比特的色彩位深,畫面的寬高比為4:3, PAL電視標準用於中國、歐洲等國家和地區。

  NTSC電視標準是:每秒29.97幀(簡化為30幀),電視掃瞄線為525線,偶場在前,奇場在後,標準的數字化NTSC電視標準解像度為720X486, 24比特的色彩位深,畫面的寬高比為4:3。NTSC電視標準用於美、日等國家和地區。

遊戲外包裝標明製式
遊戲外包裝標明製式

  註釋2:

  隔行掃瞄上可能會使得二維碼顯示不完全,用手機掃瞄CRT電視上的二維碼無法識別就是這個原因。

隔行掃瞄無法識別二維碼
隔行掃瞄無法識別二維碼

  第二代光槍原理

  雖然光槍槍口看上去較大,但是真正感受光的元件接收範圍還是很小的,光槍對準屏幕的範圍略大於兩行掃瞄線距離,因此隔行掃瞄時可以認定為對準的就是一個“點”。當玩家按下光槍扳機時,電視會先按照隔行掃瞄的方式繪製一個全白色的幀,當光槍收到白色信號時,遊戲就可以計算出光槍對準的位置了。例如一行有10點,每個點掃瞄1秒,那麼當光槍在第25秒收到白色信號時,就可以推算出它在第3行第5列。當然這隻是為了便於理解的簡化模型,實際上還要考慮消隱時間、掃瞄線回歸時間等等。

紅色代表白色信號的掃瞄方式(簡化)
紅色代表白色信號的掃瞄方式(簡化)

  如果遊戲判斷光槍位置與遊戲目標位置相同,那麼就判定為命中了。這種光槍的優點就在於精確度更高,而且不會出現第一代光槍那種作弊漏洞。而採用這種方式製作的遊戲,也不用頻繁刷新畫面,也不那麼累眼睛。

SFC光槍遊戲
SFC光槍遊戲

  第三代光槍與紅外線

  隨著科技的進步,CRT電視逐漸被背投電視、等離子電視和液晶電視所取代,第二代光槍就很難有用武之地了。這時任天堂又推出了不依靠CRT電視就可以遊玩的第三代光槍,也就是2006年誕生的,以體感為賣點的Wii。與之前的主機與光槍配件的搭配形式不同,這次手制與光槍合二為一,既可以當做控製器,又可以當做光槍。

任天堂Wii
任天堂Wii

  Wii主機上的黑色條狀部件叫做感應條(sensor bar),裡面左右分別裝有一個紅外線LED。當用Wii手制的前方對準屏幕時,手制前方的紅外攝像頭會根據感應條中的兩個LED光源的位置進行計算,從而得出手制前方正對著的位置。需要說明的是,平時Wii手制與Wii主機是通過藍牙鏈接,而非紅外線,所以玩非光槍類遊戲沒有必要將手制正對著屏幕。

Wii手制配合支架
Wii手制配合支架

  如果Wii的感應條失靈了的話,也有一些奇葩方式來修復,其中一種就是使用兩個蠟燭來代替感應條中的紅外線LED。

蠟燭代替紅外光源
蠟燭代替紅外光源

  在一些大型電玩廣場里經常能夠看到光槍遊戲,《VR特警》和《死亡之屋》就是兩款非常流行的遊戲。其實街機光槍遊戲也有CRT顯示器和液晶兩種,前者的原理同前兩代光槍,後者的原理類似於Wii。

街機光槍遊戲
街機光槍遊戲

  拓展知識

  索尼在PS3和PS4平台都推出了相應的體感外設控製器PS Move,配合槍托可以當做光槍來使用,但是原理卻與前面提到的有所不同。PS Move前端配備會發出不同顏色光線的圓球,配套的PS Eye攝像頭會以2D影像辨識方式追蹤圓球位置。也就是說這種是通過攝像頭來進行捕捉,與微軟的Kinect的原理頗為類似。

PS Move
PS Move

  光槍遊戲興起與衰落

  光槍遊戲曾經風靡世界,但現在已經比較小眾了,這都是其玩法機製導致的。常見的光槍遊戲有兩種,一種是類似於《打鴨子》,場景固定,只能守候目標出現。這種機製註定了遊戲內容不會太深,放到一些娛樂場所供大眾遊玩或者比賽效果還是不錯的,但是長時間玩容易感到單調。

固定背景
固定背景

  另一種類似於《VR特警》,玩家雖然也只能等候目標出現,但是遊戲場景是變化的。玩家不能控製鏡頭畫面,只能根據遊戲自身進度進行前進、後退、轉身等等,因此這類也叫作“軌道式射擊”。

軌道式射擊
軌道式射擊

  軌道式射擊可以根據玩家的操作來決定接下來的行走路線,大大豐富了遊戲的內容。很多大型遊戲中心都會置備幾台這種遊戲,早年的《死亡之屋》和《VR特警》非常普及,之後也出現了屏幕更大,效果更好的《第一滴血》,近幾年還出現了可以坐在車上的《叢林冒險》和《海盜大冒險》,更有支持4人聯機、帶有駕駛艙的《HALO:渡鴉小隊》。一些玩家會因好奇心而體驗一下,但很少見到反複遊玩的。

《HALO:渡鴉小隊》大型駕駛艙
《HALO:渡鴉小隊》大型駕駛艙

  光槍遊戲可以說是時代的產物,在電子遊戲還處於早期階段時,使用手制遊玩射擊遊戲是比較困難的。光槍外設的出現讓玩家可以憑藉身體本能進行遊玩,指哪打哪的體驗非常好。但隨著電子遊戲不斷髮展,遊戲的操作越來越複雜,單憑光槍一個扳機鍵已經無法滿足遊戲的需要了,加上鍵盤與鼠標的出現,可以實現更加快速精準的打擊,光槍遊戲逐漸邊緣化,更加偏向體驗和休閑。感謝光槍遊戲在那個時代帶給我們的快樂,期待光槍遊戲在未來能夠有所突破。

  來源:AGamer

關注我們Facebook專頁
    相關新聞
      更多瀏覽