Помните, раньше были у нас Денди? У счастливчиков — с пистолетами. И все ночи напролёт мне не давал уснуть вопрос: «Как же работает этот пистолет?»
Всё оказалось вполне даже просто, однако ответ на вопрос спрячу под кат, чтобы можно было не прощаться с культовой загадкой детства. ;-)
В пистолете (который, на самом деле, называется Zapper) встроен фотодиод, принимающий свет, а из-за длинного «дула» этот фотодиод становился узконаправленным. В момент нажатия «курка», весь экран на мгновение заливался чёрным, а спрайт мишени — белым прямоугольником. Если «дуло» было направлено на прямоугольник, засчитывалось попадание. Если же мишеней было несколько (NES поддерживала до 4, но это не точно), то мишени подсвечивались по очереди (подмигивая) и приставка вычисляла попадание, используя бинарный поиск.
В детстве мне никак не приходило в голову, что пистолет не излучает, а принимает.
Это одна из самых простых реализаций светового пистолета. В других приставках использовались и более сложные методы, к примеру учитывающие то, что луч (в ЭЛТ-телевизорах) освещает только одну точку в каждый момент времени. Приставка заливала экран белым в момент нажатия и отсчитывала время до засветки фотодиода. Таким образом, направление можно было вычислить более точно, а количество мишеней определялось «радиусом поражения» пистолета. Эта схема, к примеру использовалась в SNES.
Первый же световой пистолет был изобретён аж в 1936 году для автомата Seeburg Ray-O-Lite, в котором кинескопа ещё не было =). Надо было тоже целиться в уток, как и в известной всем Duck Hunt.
В видеозаписи игры Clay shooting, где нужно было стрелять по тарелкам (да, тоже из детства помню) можно заметить те самые прямоугольники.
Подробно можно прочитать, зная английский:
en.wikipedia.org/wiki/Light_gun
en.wikipedia.org/wiki/NES_Zapper
www.madsci.org/posts/archives/1999-07/932797371.Eg.r.html
ROM-образы игр для пистолета.
Телефон со встроенным эмулятором и специальными кнопками, чтобы играть в NES, SNES, GameBoy.
А самые ярые поклонники уток могут насладиться флеш-аналогом Duck Hunt on Flash.
Сам же подумываю прикупить настоящую, живую Денди, благо всего 400