No, te equivocas, no es así como funcionaban los espejos de Duke Nukem 3D.
DN3D utilizó un motor de portal . Una unión entre dos sectores cualquiera era arbitraria hasta cierto punto, y cuando el motor de renderizado llegó a un portal, sabía que tenía que comenzar a renderizar otro sector en ese sentido. El sector detrás del espejo era básicamente un marcador de posición para lidiar con una peculiaridad en el motor: el único punto del sector era ser más grande de lo que sea que se "refleje". No contenía ninguna geometría real. De hecho, funcionó más o menos de la misma manera que los "portales" funcionan en el Portal, excepto que el Portal (basado en sí mismo en un motor de portal) crea los portales en tiempo de ejecución y tiene un límite de cuántas veces pueden volver a aparecer los portales (es decir, A -> B -> A -> B -> A ...), mientras que Build (DN3D) simplemente se bloqueaba cuando su pila se desbordaba si apuntabas un espejo a otro espejo.
Es obvio lo fácil que es poner en práctica un espejo con que - hacer un portal que los puntos atrás en la habitación. Esto significaba que renderizar el espejo costaría exactamente lo mismo que renderizar la habitación en sí, lo que da un gran rendimiento y consistencia. Siempre y cuando no apuntes un espejo a otro espejo, eso es. Si mira a través del código fuente del motor de compilación, verá que no hay espejos de manejo de código en absoluto; no es necesario que haya uno, porque así es como funcionan los portales NOTA: en realidad, hay código para voltear los píxeles renderizados: simplemente no voltea la geometría y todos los diversos sprites y efectos. Sin embargo, el editor tenía que poder hacer estos portales "falsos", mirando hacia atrás. Si desea obtener más información sobre el motor Build bastante inteligente, Fabien Sanglard hace un excelente análisis en las partes internas del motor Build . Todo el motor ha sido abierto y portado a plataformas modernas también, aunque el antiguo todavía funciona perfectamente en Windows 10 (probado para usted: P). Muchos de los juegos basados en Build también han sido de código abierto y / o rehechos.
¿Por qué ya no se usa esto? Bueno, algunos motores ya no prefieren portales, por ejemplo. Es complicado aplicar muchos hacks gráficos y optimizaciones: no puedo señalarle nada específico, pero una gran cantidad de postprocesamiento depende de hacks que no funcionarían en un verdadero motor de portal (hacen muchas suposiciones que ya no aguanta) Este es básicamente el mismo tipo de problema que estos juegos tienen con las imágenes estereoscópicas: los hacks ya no funcionan.
Lo más importante, los espejos se volvieron más complicados. Pueden tener formas y texturas complejas, pueden estar en el suelo (también conocido como "agua"), etc. Si bien todos esos problemas se pueden resolver en un motor de portal, RTT se convierte en la opción más simple en algún momento, y las GPU son lo suficientemente rápidas para manejarlo
Sin embargo, incluso con todo eso, hay muchos juegos con aceleración 3D de hardware que hacen cosas "reales". De los juegos más antiguos, Quake 3 o Alien vs. Predator, por ejemplo. Hasta donde yo sé, los juegos de motor Source aún usan espejos "reales". Si espera que las personas se acerquen al espejo, y puede garantizar que no haya demasiadas superficies reflectantes al mismo tiempo (por ejemplo, a través del diseño de nivel), los espejos de portal siguen siendo muy atractivos.