Todo el sistema es una curiosa proeza de ingeniería. Externamente, recuerda a un voluminoso visor de realidad virtual montado sobre un bípode. El jugador debe acercar la cabeza al visor para ver el juego en acción.

Esto es lo más lejos que llegué intentando fotografiar la pantalla y la carcasa al mismo tiempo. ¡En realidad, los juegos se ven muy nítidos y a tamaño completo!
Internamente, la historia es bien distinta (y bastante complicada). Por esa razón, creí conveniente empezar por explicar cómo muestra imágenes esta consola, para luego adentrarme en el hardware interno.
Proyectando una imagen
Al encender el Virtual Boy, verás dos imágenes monocromáticas en rojo (una por cada ojo) a través del visor. ¿Todo claro hasta ahora? Bien, aquí viene lo interesante: esta consola no tiene pantalla. Lo que ves es más bien una ilusión, así que veamos con más detalle qué está pasando realmente.
Los temas implicados en esta explicación (óptica, fenómenos visuales, etcétera) pueden parecer complejos al principio, así que he elaborado varios diagramas para hacer esta sección un poco más inmersiva.
Escáner

Diagrama principal del escáner, que muestra cómo la luz de los LEDs llega a los ojos del jugador.

Vista aérea de la consola. El primer interruptor es el 'control de enfoque', y debajo está el 'dial IPD'.
El gran volumen de esta consola se debe al escáner, que ocupa una parte significativa del interior. El escáner es la zona del Virtual Boy responsable de mostrar imágenes. Consta de dos unidades de visualización, cada una de las cuales proyecta un frame de manera independiente (en total, dos frames: uno por cada ojo).
Una unidad de visualización es donde ocurre toda la 'magia'. Consta de los siguientes componentes:
- Una unidad LED: Contiene 224 LEDs rojos apilados verticalmente, junto con el circuito necesario para controlar cada uno.
- Una lente: Refracta la luz de los LEDs.
- En la parte superior de la carcasa del Virtual Boy hay un control de enfoque que permite acercar o alejar la lente de los LEDs. Esto permite al usuario ajustar la consola según su distancia focal (para evitar imágenes borrosas).
- Un espejo: Refleja la luz de la lente y la dirige hacia los ojos del usuario. Además, este componente oscila de forma continua gracias a un motor de bobina móvil conectado a él. El servo control —una placa independiente— controla dicho motor mediante pulsos eléctricos a 50 Hz.
- En definitiva, es una zona muy compleja y delicada de la consola. Por eso, se incluye un fotointerruptor adicional (un tipo de fotosensor). Este informa al servo control sobre la oscilación del espejo, que a su vez monitoriza y aplica las correcciones necesarias.
Junto al control de enfoque hay un dial IPD (un mando giratorio), que ajusta la distancia entre las dos unidades de visualización. Esto sirve para adaptar las pantallas a la distancia interpupilar del usuario.
Mecánica

Animation available in the modern edition
Visualización simplificada del ángulo del espejo oscilante a lo largo del tiempo. El eje Y indica el ángulo y el eje X representa el tiempo. Los LEDs izquierdo y derecho están activos durante los intervalos rojo y azul, respectivamente. Durante el intervalo gris, ningún LED está activo. Por simplicidad, la velocidad angular representada aquí es constante (en la práctica es variable).
Ahora que hemos identificado cada componente, veamos cómo el Virtual Boy consigue presentar imágenes a nuestros ojos.
Quizás no te habías fijado antes, pero no hay ninguna pantalla de matriz de puntos. ¿Cómo es posible entonces que veamos imágenes bidimensionales a través del visor? Al igual que un monitor CRT, las unidades de visualización aprovechan la forma en que percibimos las imágenes:
- Los espejos oscilantes permiten que una única columna de LEDs se desplace horizontalmente por nuestro campo visual. El ángulo del espejo se orienta estratégicamente para proyectar los LEDs en 384 'posiciones de columna' distintas (distribuidas por nuestro campo visual).
- Dado que la visión humana es logarítmica y el espejo oscila a 50 Hz (cada ciclo dura 20 ms), terminamos percibiendo 384 columnas de LEDs iluminándose al mismo tiempo hasta que el espejo detiene su oscilación. Esto es el resultado del efecto de persistencia retiniana.
- Todo esto se sincroniza cuidadosamente con el controlador de LEDs, que actualiza cada LED individualmente a medida que el espejo se desplaza ligeramente. Así terminamos percibiendo una imagen completa procedente del visor.
En la práctica, se deben cumplir ciertas condiciones para que estos principios funcionen:
- Los LEDs solo deben funcionar cuando la velocidad angular del espejo es estable (es decir, cuando el espejo no está cambiando de dirección). Esto puede entenderse como el estado activo de un monitor CRT.
- Ahora bien, la velocidad angular del espejo no permanece constante en la práctica. Como el espejo no puede cambiar de dirección instantáneamente, los períodos 'estables' están sujetos a fuerzas que alteran su velocidad. Para gestionar esto, el Virtual Boy almacena en memoria una lista de valores llamada Column Table, que especifica cuánto tiempo asignar a cada intervalo de columna. Esto ayuda a equilibrar los períodos de exposición de la 'columna de LEDs', tanto los excesivos como los insuficientes.
- Por último, no hay que olvidar que todo este proceso ocurre dos veces, ya que hay dos unidades de visualización (una por cada ojo). Por desgracia, las dos unidades no pueden recibir energía y datos al mismo tiempo, por lo que cada una opera en períodos de visualización distintos (desfasadas 10 ms). Nosotros no lo percibimos; ¡otra ilusión más!
Pantalla

Animation available in the modern edition
Ilustración simplificada de cómo funciona la primera unidad LED durante períodos concretos de tiempo. Observa cómo los LEDs muestran columnas del frame buffer durante las fases activas.
A diferencia de los chips de vídeo anteriores diseñados siguiendo el modelo de los CRT (como el PPU y el VDP), el Virtual Boy no renderiza los gráficos al vuelo. En su lugar, el chip gráfico envía el frame procesado a un frame buffer en memoria. Después, cada columna del frame se transfiere al conjunto de LEDs para su visualización.
Cuando la placa de servo determina que es el momento de mostrar, el chip gráfico transmite columnas de píxeles del frame buffer a los 224 LEDs apilados verticalmente, de manera cuidadosamente sincronizada. En consecuencia, los LEDs muestran 384 columnas durante el período de visualización, dando a la consola una 'resolución de pantalla' de 384×224 píxeles.
Además, es necesario almacenar dos frame buffers, ya que cada uno irá a una unidad de visualización diferente. El subsistema gráfico también emplea doble buffer y otras particularidades (que se detallan más adelante en la sección 'Gráficos'). Por ahora, basta con recordar cómo se envía un frame digital a los LEDs.
Períodos activos

Animation available in the modern edition
Otra ilustración simplificada, esta vez mostrando cómo la oscilación del espejo desvía la luz de los LEDs para que el usuario perciba finalmente un frame completo.
Como consecuencia de este diseño, hay períodos de:
- Visualización activa: Durante este tiempo, los LEDs leen una imagen del frame buffer y nada puede interrumpirlo.
- Visualización activa 2: Idéntico a la fase anterior, pero ahora la segunda unidad de visualización está activa.
- Reposo de dibujo: Un período en el que ningún LED está activo y la velocidad angular del espejo es inestable.
Este ciclo se repite 50 veces por segundo (de ahí la tasa de refresco de 50 Hz), lo que significa que para cada frame, la CPU y la GPU tienen aproximadamente 10 milisegundos para actualizar la imagen que verá el usuario. En la práctica, los ingenieros de Nintendo implementaron una solución más sofisticada. Lo ampliaré en la sección 'Gráficos', pero por ahora espero que tengas ya una idea clara de cómo el Virtual Boy se las ingenió para generar imágenes con hardware de bajo coste.
Comentarios finales
Esta ha sido una breve explicación de cómo la óptica puede transformar una única línea vertical en una imagen. Si tienes (o has leído sobre) el Virtual Boy, puede que te preguntes cuándo entra en juego la imagen tridimensional. Quiero aclarar que ninguna de las explicaciones anteriores tiene que ver con ese efecto. Lo menciono porque en el pasado he visto afirmaciones que sugieren que los espejos oscilantes son la causa del efecto de 'percepción de profundidad'. Sin embargo, a partir de la información que he recopilado durante este estudio, creo que esa afirmación es incorrecta.
Dicho esto, creo que es el momento de adentrarnos en el fenómeno 3D...
Creando una visión tridimensional
Durante la campaña de marketing del Virtual Boy, hubo mucho alboroto en torno a la capacidad de la consola para proyectar un 'mundo 3D'. No me refiero a imágenes con polígonos 3D (como las de las demás consolas de quinta generación), sino a la percepción real de la profundidad.
En pocas palabras, el Virtual Boy se apoya en la imagen estereoscópica para lograr esa ilusión . En general, este sistema no solo jugueteaba con nuestra visión para proyectar una imagen completa: ¡también conseguía que ciertos dibujos parecieran más cercanos o más lejanos que los demás!

Unidad de visualización izquierda.

Unidad de visualización derecha.
La técnica empleada es muy sencilla: cada uno de los dos frames mostrados (uno por cada ojo) contiene elementos ligeramente desplazados en horizontal . Así, al verlos con ambos ojos, estos desplazamientos crean la ilusión de que algunas partes de la imagen están más cerca que otras. La profundidad percibida depende de la dirección en que los elementos están desplazados.
Los objetos desplazados hacia el centro de los ojos del espectador (hacia la derecha en el frame izquierdo, y hacia la izquierda en el frame derecho) parecen más cercanos; los desplazados en sentido contrario parecen más lejanos. Por último, los elementos sin desplazamiento horizontal se perciben como situados entre los dos extremos. Esta técnica se conoce como paralaje estereoscópico.
Uno de los inconvenientes de la estereoscopia es la fatiga ocular. Esto se mitigaba gracias a que los juegos incluían una función de 'pausa automática', que recordaba al usuario hacer descansos cada 30 minutos. Nintendo también incluyó varios mensajes de advertencia en su embalaje y documentación para ayudar a prevenir problemas graves. Aun así, no existía ninguna opción para desactivar el efecto 3D.