¿Cómo evolucionan tanto los gráficos en el mismo hardware de la consola?

33

¿Es solo una cuestión de optimización de código?

¿Los desarrolladores de juegos planean comenzar poco a poco en un nuevo hardware, para tener espacio para evolucionar mientras crean una serie de ese juego?

¿Son los avances en gráficos de computadora lo suficientemente comunes como para suceder en la vida útil de una consola?

Roberto
fuente

Respuestas:

36

¿Es solo una cuestión de optimización de código?

De hecho, hay una parte de optimización en esto. Cuanto más se acostumbran los programadores al hardware de una consola, más aprenden a exprimir la calidad gráfica en él.

Pero está lejos de ser la única razón:

  • Los primeros títulos de consola se desarrollan en hardware y SDK en evolución, por lo que es difícil aprovechar al máximo una plataforma cuando aún no está estabilizada.
  • No solo los programadores necesitan adaptarse a las limitaciones de una nueva plataforma: es lo mismo para los artistas. Cuanto más maduro sea un motor, más artistas podrán adaptarse y refinar sus habilidades. La existencia de activos anteriores que se pueden iterar también es algo a considerar.
  • En general, las personas tienen más y más experiencia, no solo artistas, no solo programadores, sino todos. Y el tamaño del equipo crece, al menos en el mercado AAA. Poner a personas más experimentadas en una producción, si está bien gestionado, conduce a una mayor calidad.

¿Los desarrolladores de juegos planean comenzar poco a poco en un nuevo hardware, para tener espacio para evolucionar mientras crean una serie de ese juego?

Esa es una pregunta interesante. No creo que los desarrolladores de juegos dejen intencionalmente espacio para la evolución cuando trabajan en una nueva consola. Para mí esto es solo incidental. Pero tengo que ser corregido, tal vez algunos grandes estudios lo hacen estratégicamente después de todo, me gustaría ver alguna evidencia de eso (testimonio, ¿alguien?).

¿Son los avances en gráficos de computadora lo suficientemente comunes como para suceder en la vida útil de una consola?

Sí. Al menos regularmente .

Laurent Couvidou
fuente
2
SSAO y el sombreado diferido son algoritmos antiguos, simplemente sucedió que se descubrió que son posibles en tiempo real recientemente. SSAO (2007) es una implementación en tiempo real de un algoritmo de 10 años (AO precalculado), el sombreado diferido fue publicado originalmente por Deering en 1988
bobobobo
2
Está bien. Estos fueron adaptados al tiempo real durante la última generación de consolas; no significa que el concepto fuera nuevo, como explica Kylotan en su respuesta.
Laurent Couvidou
3
Creo que una parte importante del componente de optimización es que el hardware está más o menos garantizado para permanecer igual durante muchos años. Esto permite a los desarrolladores crear optimizaciones altamente específicas, y quizás aún más importante, para que valga la pena invertir este tiempo. Para una evolución de código interesante y similar, considere las demostraciones de C64 o Amiga escritas décadas después del lanzamiento del hardware original; muchos de ellos habrían sido inconcebibles en los años 80 y 90.
Daniel B
13

¿Los desarrolladores de juegos planean comenzar poco a poco en un nuevo hardware, para tener espacio para evolucionar mientras crean una serie de ese juego?

¡Ciertamente no!

Cuando me uní por primera vez a la industria de los juegos, le pregunté a un productor de [editor gigante del que definitivamente has oído hablar] esta misma pregunta. Me dijo que cada juego de consola que desarrollaba su compañía usaba el 100% de los recursos disponibles de la plataforma. Si bien esto probablemente no era la verdad literal, está lo suficientemente cerca.

En todo caso, los juegos de consola pasan la mayor parte de su desarrollo utilizando cerca del 120-150% de los recursos de la plataforma. Los últimos meses de desarrollo se gastan frenéticamente tratando de reducir todo a "solo" 100% antes de la fecha de envío. Si los títulos posteriores necesitan más ciclos de CPU / RAM / espacio en disco / etc., los desarrolladores primero tienen que descubrir cómo optimizar su tecnología actual: encontrar algoritmos más eficientes, usar una mejor compresión de datos, etc. ¡Por lo tanto, una rápida evolución por necesidad!

Tiene mucho sentido, en realidad; ¿Qué ventaja competitiva habría en no tratar explícitamente de alcanzar todo el potencial del hardware, dado su conocimiento actual del sistema? ¿Confiarías en tus competidores para mostrar la misma moderación?

posgoodismo
fuente
Gran respuesta. Sin embargo, todavía me gustaría saber si algunos géneros de juego en particular tienen objetivos diferentes, donde 60 fps es absolutamente esencial para el juego principal, y simplemente prefieren que se vea lo mejor posible.
Katana314
10

Dado que las consolas tienen una sola especificación. Y no como PC donde tienes toneladas de variaciones diferentes. Los desarrolladores pueden optimizar sus juegos mejor. Pero esto no significa que hará magia espacial a largo plazo. Alcanzará un límite. (actualmente, el 360 / Ps3 tiene 512 mb en total, lo que para muchos desarrolladores parece ser una molestia)

Las consolas están bastante desactualizadas después de 6 meses. Las PC siempre crecen más rápido en especificaciones de hardware. Pero los juegos para PC nunca se optimizan realmente para un conjunto de hardware. Deben tener en cuenta que también hay personas con especificaciones más bajas (de ahí el video y otras opciones). Pero dado que los desarrolladores que trabajan en juegos de consola pueden optimizar a largo plazo, pueden hacer buenos trucos con el hardware.

Los juegos de PS3 / 360 se ven bastante bien en este momento de sus ciclos de vida. Pero imagínense si un desarrollador se enfoca en una potencia específica de una PC.

Al comienzo de una nueva vida de las consolas, los desarrolladores deben adaptarse al hardware. No puede simplemente colocar código de una plataforma a otra. Es por eso que no ves los juegos que tenemos ahora al comienzo del ciclo de vida. La tubería de producción crece horas extras. No es algo que puedas hacer bien la primera vez. Es necesario realizar muchas optimizaciones y solo cuesta tiempo. Cuando ves mejores características en una secuela es porque el desarrollo de la tecnología creció durante el primer juego.

Los avances reales generalmente ocurren con el nuevo hardware. Pero los desarrolladores pueden ser creativos a veces, lo que les permite hacer cosas en hardware limitado.

Sidar
fuente
¿Qué cambia exactamente cuando solo tenemos una especificación para desarrollar? El código cambia? ¿O solo las opciones del compilador?
rodorgas
1
El código sigue siendo el mismo, pero la optimización se reduce al uso de las funciones del hardware.
Sidar
Gracias por responder. Si desea dar más detalles, estoy interesado en un ejemplo de optimización utilizando las funciones del hardware.
rodorgas
1
Bueno, el más común, aunque generalmente se hace a través de alguna abstracción, es SIMD.
Sidar
9

El nuevo hardware generalmente solo ofrece la capacidad de hacer más que antes. La mayoría de las mejoras gráficas provienen de nuevas técnicas, nuevas optimizaciones y mejores diseños.

Vale la pena saber que las 'nuevas' técnicas que se utilizan rara vez son nuevas: son técnicas de 20 años que anteriormente eran demasiado lentas para la representación en tiempo real. Por lo general, estos se traducen en código en tiempo real muchos años después, cuando un programador encuentra la manera de hacerlo de manera eficiente con el hardware del día.

Kylotan
fuente
3
Caso en cuestión: sombreado diferido
bobobobo
3
Si quieres saber de qué serán capaces los gráficos por computadora para los próximos años, mira Hollywood CGI desde hace una década (?).
Dan Neely
2
RTRT
bobobobo 01 de