Siempre me pregunte como funcionaba la famosa pistola de mi querido Nintendo, y bueno me puse a averiguar un poco.
Voy a tratar de explicarlo de manera que cualquiera pueda entender.
Cuando jugábamos con esta pieza de alta tecnología (para los 80 – 90, la verdad era una pieza de alta tecnología) normalmente pensaríamos que eramos nosotros los que disparábamos a la pantalla usando esta curiosa pistolita, cuando la verdad es que funcionaba al revés. Era la pantalla la que disparaba a la pistola.
La solución fue bastante ingeniosa, y en términos de electrónica, bastante simple. La pistola cuenta con un fotodiodo en la punta, en el cañón. Un fotodiodo es un dispositivo electrónico que sólo permite el paso de corriente cuando recibe luz, en pocas palabras es un sencillo sensor de luz. Eso hacía a la pistola un sensor de luz apuntable.
Cuando esto pasa, el fotodiodo se encarga de detectar los cambios de intensidad. Si había un cambio de negro a blanco, el objetivo era marcado como «acertado», si no lo había, si sólo se quedaba en negro, no le habías dado.
El problema con esto es que para cuando había múltiples blancos como en el ejemplo de arriba y debía determinar a cuál le habías dado. Para esto el NES se ayudaba de la velocidad de refresh del televisor (en los televisores de tubos de rayos catódicos los renglones se van dibujando uno a la vez, de izquierda a derecha a una velocidad estándar).
La secuencia de dibujo de dichos objetivos indicará cuál de ellos ha sido el alcanzado tras 1 + redondeo Hacia Arriba (log2(cantidad de objetos)) refrescos (un refresco determina si alguno de los objetivos ha sido alcanzado) y redondeo Hacia Arriba (log2(cantidad de objetos)) para hacer una búsqueda binaria y decidir qué objeto ha sido el alcanzado). (WTF no entendí nada esta parte pero igual se las pongo).
Un efecto lateral interesante de este método es que en juegos mal diseñados, es frecuente que cuando un jugador apuntaba con la pistola a un foco y presiona el gatillo, el primero de los objetivos de la pantalla es alcanzado, cada vez. Juegos con un diseño mejor solucionan este efecto dibujando la pantalla de color negro y verificando que así no se acierta en ningún objetivo.