ライトガン

歴史

世界初のライトガンは1930年代、光電効果を用いた真空管が開発されたころに登場した。それがアーケードゲームに使われるまで時間はかからず、1936年に Seeburg Ray-O-Lite というゲームが登場している。このころのライトガンを使ったゲームは、動く標的に光電管が装着されていて、プレイヤーが光のビームを発する銃でそれを狙うものである。ビームが光電管に当たると命中と判定される。ブラウン管を使ったライトガンはこれとは全く逆に作用する。センサは銃に組み込まれていて、ブラウン管の表示制御とあわせ、銃の狙っている先が光ったタイミングを検出する。これは構造的に細くできるためライトペンに分化した。ライトペンは1950年代のリアルタイムシステムを目標として研究されたコンピュータWhirlwindで開発され、それをベースとした「冷戦の実戦」防空システムであるSAGEに実戦投入された。
1966年、セガ（後のセガ・インタラクティブ）初の世界的ヒットとなったアーケードゲーム「ペリスコープ」にも紙に描かれた標的を狙うのにライトガンの原理が使われていた。ペリスコープは初期の「エレメカ」ゲームであり、1回のプレイ料金が25セントとなった初めてのアーケードゲームだった。セガの1969年のゲーム「ミサイル」は電子音と動画をスクリーンに投影する方式を採用し、1972年の「キラーシャーク」では据付型ライトガンでサメを狙うのだが、ターゲットは後方からスクリーンに投影されている。任天堂は1970年に Beam Gun をリリースし、1973年にはレーザークレー射撃システムをリリース。1974年にはアーケードゲーム「ワイルドガンマン」をリリースした。1975年、セガは2人協力プレイ型の「バルーンガン」や「バレットマーク」をリリースした。

仕組み

ライトガンは名前の通り光を使ってディスプレイ上の狙っている位置を検出する。名前からは銃から光のビームが出ているかのように思われるが、実際にはライトガンは銃身内のフォトダイオードで光を受け取る。
当たり判定の方法は2種類あるが、基本的概念はどちらも同じである。すなわち、銃の引き金が引かれたとき、画面が一瞬だけ黒くなり、フォトダイオードは受光待機状態となる。その後画面上のターゲットの部分だけが白く表示されることで、狙いが合っていればダイオードがそれを受光してコンピュータが当たりを感知できる。これは一瞬であるため、人間の眼にはそのように表示が切り替わっていることは感知できない。

ターゲットの順次表示

最初の手法は、任天堂の光線銃シリーズで使われたもので、画面が黒くなってからターゲットを順次白く表示していくものである。コンピュータはダイオードが受光したタイミングとターゲットを表示したタイミングから、どのターゲットに当たったかを判定する。N個のターゲットが画面にある場合は二分探索によってこの過程を短縮する。最初の1回のリフレッシュでターゲット全てを表示してどれかに当たっていることを判定し、当たっていた場合にはその後最大 log₂(n) 回でどれに当たったかを判定する。
この方式では、設計がいいかげんなゲームでは、ライトガンに別の光を当てておくと引き金を引くたびに必ず当たりと判定されるという興味深い現象が発生する。うまく設計されたゲームでは全ターゲットが当たりとなっている場合を検出したり、完全に画面が黒くなっているときでも光を検知しているかをチェックする。

走査線タイミング

次の手法はナムコのガンコンやコンピュータ用のライトペンで使われているもっと精巧で正確な手法である。
この手法はブラウン管の表示方式に依存している。ブラウン管は電子線の走査によって表示を行っている。これを高速に行うことで人間の眼には一枚の画像として認識されるのである。プレイヤーが引き金を引いて光を感知したとき、コンピュータは電子線がブラウン管上のどこを照らしているかを計算してライトガンが狙っている位置を求める。あるいは、ビデオ信号をライトガン側にも渡して、ライトガンの中で位置を計算する方式もある。ライトガンが狙っている位置が分かれば、当たり判定は簡単である。
この種のライトガンは赤い光を無視する。赤の蛍光物質は緑や青よりも光っている状態が長く続くためである。また、当たり判定を正確に行うため、ゲームによっては引き金を引いた際のフレームだけを全体的に明るく表示するものもある。
プラズマディスプレイや液晶ディスプレイ、プロジェクタでは、走査は行わずに画面全体を一斉に書き換えるため、この方式は使えない。

両手法の統合

ターゲットの順次表示方式のライトガンにはビデオ信号に対して正確に位置がわかるほどの精度を持たないものがあるが、上の両方の手法を組み合わせて用いることで精度を上げることができる。まず、画面を明るくして反応時間を確認する。このときコンピュータ側はどの水平走査線がライトガンで狙われていたかを把握するが、ピクセル単位の位置までは求めない。この程度であれば、高速なタイマは必要でなく、せいぜい15kHz程度である。ピクセルを判定するには5MHz程度の精度が必要となる。これに順次表示を組み合わせて当たりを判定する（つまり、ライトガンが狙っている走査線にかかっているターゲットを順次表示する）。

赤外線放射

ブラウン管以外の表示装置にも対応できるよう新たな手法が開発された。画面付近に複数の赤外線発光装置を配置し、ライトガンには赤外線センサを装備する。引き金を引くと、感知した赤外線の強さが本体に通知される。この強さは画面からの距離と角度によって決まるため、角度を検出するセンサがライトガンに組み込まれている。これらの情報から三角関数の方程式を解くと、画面に対する赤外線センサの3次元位置情報が計算できる。さらにセンサの向きに従って画面まで線を引くと、狙っていた位置がわかる。
これを単純化したものがアーケード機で一般に使われている。その場合、角度センサは無く、4つの赤外線センサを使用する。しかし、これは角度や距離が一定の範囲にないと正確な位置を計算できない。
また、別の方法として、3つ以上のそれぞれ波長の異なる赤外線発光装置（とそれぞれに対応した赤外線センサ）を使う方法もある。この場合、3つ以上の赤外線の強さの情報が得られるので、角度センサをライトガンに装備する必要がない。
逆にセンサを画面付近に配置して、ライトガンに赤外線発光装置を仕込む方法もあるが、位置の計算手法は同じである。
最近のアーケードゲームにはこの種の方法が採用されている。
なお、Wiiでは本方式が簡易的に実装されており、付属するセンサーバーもセンサではなく、赤外線発光装置である。一方Wiiリモコンには赤外線カメラが内蔵されている。
同様の技法はガンコン3やアーケードゲームでも採用されている。

CCDカメラ

アーケード筐体内のCCDカメラで、ガンコントローラの赤外線を常時読み取る。「クライシスゾーン」「ヴァンパイアナイト」「タイムクライシス3」にて採用。

イメージキャプチャ

現在研究が進められている方式。ユーザーが引き金を引くと、ほんの一瞬だけ画面上の表示が白と黒のピクセルの一見ランダムな並びに置き換えられる。ライトガンには高解像度だが視界が狭くピクセル数の少ないデジタルカメラが内蔵されている。暗号化されたランダムドット画像を捉え、その内容から画面上のどの位置に狙いが向けられていたかを求める。
ライトガン互換ハードウェアSinden Lightgunが採用したことでも知られる。

据付型

据付型の銃はアーケードゲームでよく見受けられる。筐体上の回転台に据え付けられたものであり、その動作原理はライトガンとは全く異なる。据付型は高価であるが、保守点検や修理が容易という利点がある。一種のアナログジョイスティックとして機能し、立ち上げ時に較正（照準あわせ）が必要である。
初期の例としては、セガ（後のセガ・インタラクティブ）の「シーデビル」(1972)、タイトーの「アタック」(1976) と「クロスファイアー」(1977)、任天堂の「バトルシャーク」(1978) などがある。据付型の銃を使っているアーケードゲームとして、サイレントスコープ、スペースガン、オペレーションウルフなどがある。もっとも、据付型であってもライトガン方式を採用したアーケードゲームもある。