¿Por qué los videojuegos no usan videos pre-renderizados como escenas cortadas, en lugar de cargar todo para crear uno?

Videos preprocesados: velocidad eficiente, memoria ineficiente.

Videos sobre la marcha: lentos, pero eficientes en memoria.

Las computadoras domésticas y las consolas de videojuegos actuales son tan rápidas y están optimizadas para la representación de gráficos en 3D, que la velocidad de representación no suele ser un problema.

La memoria siempre es un problema. Si una gran cantidad de videos pre-renderizados hacen que el juego necesite un DVD adicional, ese es un costo de producción real. Cargar esos activos desde un dispositivo lento (por ejemplo, un disco duro) lleva tiempo, por lo que el uso adicional de memoria cuesta velocidad.

En la década de 1990, cuando las computadoras eran mucho más lentas y tenían mucha menos memoria, trabajé en un ambicioso proyecto para Accolade que involucraba a muchos personajes moviéndose. El motor gráfico desarrollado internamente tuvo problemas para representar todos esos personajes en tiempo real, por lo que recomendé pre-renderizar la animación … hasta que hice los cálculos.

En aquel entonces utilizamos gráficos de 256 colores, por lo que 8 bits por píxel, un byte. Un render 2D de un personaje puede tener 80 píxeles de alto y 50 de ancho, por lo que son 4000 bytes. No está mal. Ahora haga que el personaje camine: 16 cuadros en cada una de las 8 direcciones (con la esperanza suficiente para engañar al ojo y pensar que el personaje puede caminar libremente en cualquier dirección). Eso es 128 x 4000, así que ahora tenemos hasta medio megabyte. Define otras 4 poses por personaje (correr, arrodillarse, extender la mano, etc.), así que multiplica por 5 para obtener 2.5MB. Ahora multiplique por 50 caracteres posibles, y son 125 MB. Eso es sin ningún código, gráficos de fondo, etc. Los tiempos de carga para todo lo que habría impactado negativamente el juego.

La conclusión fue que no podíamos incluir todos los personajes en el DVD o en la memoria con todas las demás cosas necesarias para el juego. O necesitábamos acelerar el motor de gráficos en 20X o más, o hacer grandes recortes en el número o la calidad de los personajes. Estaba discutiendo con el director sobre el mejor camino a seguir (recomendé menos personajes) cuando Accolade canceló el proyecto junto con varios otros y redujo el tamaño.

Más recientemente, utilicé una cinemática renderizada previamente para mi nuevo juego, Hero-U: Rogue to Redemption, y se veía bastante bien. World of Warcraft utiliza cinemáticas pre-renderizadas para momentos importantes del juego. Esa es una técnica que todavía se usa con frecuencia. Es fuerte para escenas cinemáticas, pero carece de flexibilidad y ocupa mucho espacio de almacenamiento para el juego donde el juego no tiene el control total.

Como mencionó Daniel Super, el renderizado previo ocupa mucho más memoria que “cargar todo para crear uno”. Si ese no fuera el caso, no nos molestaríamos en renderizar juegos en tiempo real.

Pero en el aspecto de preferencia de negocios / consumidores, quería agregar otro punto: las escenas pre-renderizadas solían ser el estándar de la industria , y los consumidores lo odiaban . El mayor problema fue que las escenas renderizadas previamente permitieron valores de producción y calidad de imagen mucho más altos que los juegos en sí, lo que creó una incongruencia evidente. En mi propia experiencia, me hizo pensar: “ Eso se ve increíblemente bonito. Prefiero jugar un juego que se vea así que estos gráficos poco convincentes de 32 bits ”.

Uno de los ejemplos más famosos fue StarCraft . Las escenas de corte tenían valores de producción increíbles. Pero las unidades también estaban muy desproporcionadas con su aparición en el juego, y por una buena razón. Un crucero de batalla terran habría ocupado la mitad del mapa en el juego en una proporción realista, pero parecía francamente caricaturesco en una escena en su tamaño en el juego.

Un punto de inflexión importante fue el advenimiento de las escenas como mecánica de juego, a diferencia de los simples videoclips para ayudar a avanzar en la trama. Estoy seguro de que BioWare no lo inventó, pero se considera que sus juegos perfeccionaron esta técnica: convirtieron escenas en segmentos de juego para diálogos ramificados. De esta manera, no le robas al jugador su control sobre la narrativa (anteriormente, las escenas por definición eran partes de la trama con las que el jugador no podía interactuar), y les das algo que hacer mientras avanzas en la trama a medida que avanzas. consideran necesario. Debido a estas ventajas, y a la eliminación de la incongruencia gráfica antes mencionada, los jugadores no se rebelaron por los valores de producción drásticamente reducidos en relación con las escenas pre-renderizadas de antaño.

El uso de videos pre-renderizados como en el juego The Order 1886 puede ser cinemático ya que la transición es casi instantánea. Pero…

  • Si usa pre renderizado, puede ir bien, pero también puede ser horrible . Por ejemplo, si juegas a The Shadow of Mordor con la configuración más alta, cuando comienza la escena, la textura parecía barro en comparación con antes.
  • Más espacio. Piénselo de esta manera, ¿por qué los desarrolladores de juegos agregarían una escena separada cuando puedan procesarla sobre la marcha? La escena (que probablemente dure aproximadamente ~ 5 minutos) si se muestra en 1080p podría alcanzar fácilmente (y tomar el control) 200 Mb, y esos 200+ Mb podrían usarse para otras cosas.
  • Audio. Necesitas audio para una escena pre-renderizada y el audio usa una tonelada de espacio, ¿la razón por la que muchos juegos de PS1 usan múltiples discos? Audio. Intente grabar un disco PS1 en su PC y vea por sí mismo cuánto espacio se necesita para el audio.

¿Por qué los videojuegos no usan videos pre-renderizados como escenas cortadas, en lugar de cargar todo para crear uno?”

Solían hacerlo, pero eso fue antes de que la calidad de renderizado de los motores de juego fuera lo suficientemente buena como para hacer cinemáticas en el motor.

El video pre-renderizado ocupa una gran cantidad de espacio en el disco y en el disco del usuario, lo que no vale la pena para algo que probablemente solo verán una vez.

El renderizado en tiempo real es mucho más eficiente en cuanto al espacio, los modelos y texturas de alta resolución son bastante más pequeños que los archivos de video y pueden reutilizarse en muchas escenas.

Renderizar un video es más trabajo y proporciona una escena estática.

Usando el motor del juego, ya tienes todo listo, excepto animaciones y sonidos. Además, puede personalizar la escena en la medida que lo desee (mostrar equipo equipado, composición actual del equipo …).

La verdadera razón por la que las escenas pre-renderizadas han pasado de moda no se debe a la discrepancia de calidad en comparación con el juego (que se vuelve más pequeño a medida que los gráficos continúan mejorando). Se debe al espacio de almacenamiento.

Por ejemplo, un disco Blu-ray de doble capa almacena 50 GB de datos. Uncharted 4, que tiene escenas en tiempo real es de casi 49 GB. Simplemente no hay espacio para colocar enormes archivos de video de alta definición en el disco sin cortar otras áreas. El hardware moderno ha llegado al punto en que las escenas en tiempo real se ven perfectamente aceptables. De hecho, se puede argumentar que son superiores para la inmersión, ya que la cámara en el juego puede fluir sin problemas dentro y fuera de la cinemática y eliminar ese elemento de separación.

Se considera (legítimamente) un uso perezoso de los activos, tanto por parte de la base de jugadores como por numerosos desarrolladores. Lo que estás pidiendo era el estándar de facto para los videojuegos, y eso fue solo porque los sistemas no podían manejar la representación de tales escenas en tiempo real.

¿Por qué alguien querría escenas pre-renderizadas cuando se obtiene la misma calidad de las escenas que se representan en tiempo real? No veo ninguna razón lógica para querer escenas pre-renderizadas ahora que somos totalmente capaces de renderizar las mismas escenas con la misma calidad en tiempo real. (Muchos ejemplos excelentes incluyen TESV: Skyrim, Alien: Isolation, prácticamente todos los títulos recientes de Metal Gear (Guns of the Patriots, The Phantom Pain y Rising: Revengeance especialmente), Final Fantasy XIV: A Realm Reborn, Grand Theft Auto V, hasta Dawn, Sleeping Dogs y Prey, por nombrar solo algunos).

Hay muchas respuestas geniales aquí.

Sin embargo, me gustaría señalar cuántas escenas actuales involucran a un personaje jugador que puedes personalizar hasta cierto punto.

En el momento en que tu personaje puede usar una camisa verde frente a una roja, o puede tener diferentes escenas de corte pre-renderizadas equipadas con armas que salen por la ventana. A menos que la compañía realmente vaya a representar una escena de corte diferente para cada variación posible de su personaje o simplemente se ajuste por defecto a una apariencia particular para su personaje en escenas (lo que podría ser increíblemente discordante).

La razón principal para mantener las escenas de corte en el motor es para que te quedes en el juego.

Solían tener estas espléndidas escenas de corte con una iluminación increíble y efectos especiales y luego volvían al juego. El juego siempre se veía mal en comparación con la lujosa escena de corte.

También está el costo de construir, animar y renderizar escenas. Es un equipo diferente a los que hacen el juego, por lo que debes pagar a más personas.

Mantener la escena de corte como parte del juego en curso también le permite incluir al jugador en escenas de corte usando cualquier equipo que haya recogido. No hay forma de hacerlo usando cosas pre-renderizadas ya que necesitarías rehacer la escena con cada posibilidad de arma o de armadura.

Entonces, en resumen, es más inmersivo y más barato 🙂

Ellos usan videos pre-renderizados. Simplemente no lo notas.

Por ejemplo, la lejana introducción 4 está pre-renderizada hasta que llegas a la mansión del malo. Toda la escena del cruce fronterizo se renderiza previamente.