¿Deberían los desarrolladores de juegos independientes apuntar a hardware antiguo?

25

Un desarrollador con el que trabajo me dice que los desarrolladores independientes deberían apuntar al hardware que tiene alrededor de seis años o más (con la configuración máxima). Tengo la idea de que uno debería permitir que todos los que quieran jugar su juego jueguen a una velocidad de fotogramas ejecutable, independientemente de la antigüedad de su hardware, pero los desarrolladores independientes deberían limitarse a usar un estilo de arte de baja poli o hacer sus juegos con el hardware más antiguo en mente, principalmente porque "¿la mayoría de las personas que juegan juegos independientes tienen hardware antiguo?"

¿Hay alguna razón para permitir que su juego se ejecute en la configuración máxima para hardware muy antiguo, a pesar de que reduciría las posibilidades gráficas para las personas con hardware más nuevo?

¿Hay alguna estadística que muestre que los juegos que alcanzan fácilmente sus límites gráficos superiores en hardware antiguo tienen más éxito que los juegos que aumentan sus límites gráficos superiores al costo de una experiencia 'menos que la mejor' para jugadores en hardware antiguo? ?

Cualquier idea sobre esto será muy apreciada.

l'-
fuente
12
Esto depende de su mercado objetivo
Vaughan Hilts
1
También debe pensar en hardware débil, pero nuevo, aparte del anterior: tabletas / netbooks. El modo de baja calidad puede apuntar a ambos grupos y posiblemente también ser transferido a teléfonos. Y recuerde que incluso los juegos de baja poli pueden ser lentos si el código es lento (PC Minecraft, por ejemplo). El código nunca es demasiado rápido;)
PTwr
@PTwr ¿Recuerdas los juegos para PC-AT y similares sin tiempo? Esos se pusieron bastante rápidos en el hardware más nuevo: D
Luaan
1
Mi PC tiene 8 años. La única actualización que ha visto fue agregar un SSD de 40GB hace 4 años. Todavía juego WoW bien. DayZ funciona a 1080p con la mayoría de las configuraciones activadas. Tengo algunas modificaciones de gráficos para Skyrim y todavía ejecuta ~ 40-50 FPS a 1080p. En realidad, todo lo que significa en este punto es que tu juego independiente no debería funcionar peor que los juegos AAA modernos.
1
Sospecho que "la mayoría de las personas que juegan juegos independientes tienen hardware antiguo" es la afirmación más fácilmente refutable hecha por su colega. Sin embargo, de cualquier manera, esta es una decisión comercial para el desarrollador, y nada más: la codificación de hardware más antiguo / más lento a menudo es más difícil y, por lo tanto, costará más entregarla. Yo diría que la declaración de su colega está en la misma categoría que "todos los sitios web deberían funcionar en IE6". Es una buena idea, pero no suele ser práctica y, a menudo, costosa de cumplir.
Dan Puzey

Respuestas:

21

En esta era, el hardware antiguo se ha convertido en un nombre inapropiado. El hardware viejo no es necesario lento. 6 años es 2009 y DirectX11 ya existía. Todavía no tenemos mucho más nuevo hoy.

Debes considerar dos cosas:

  • caracteristicas
  • poder

caracteristicas

Este es el nivel de instrucciones que admitirá el hardware, DirectX9,10,11 u OpenGL (esto depende de los controladores). Y el conjunto de instrucciones de la CPU: SSE4, AVX ..

Este es el mayor dolor de cabeza generalmente en el desarrollo, la escalabilidad que enfrentan esos es más difícil que la escalabilidad que enfrenta el poder. DirectX9 tenía algo llamado techniqueen los .fxarchivos para retroceder, para ambos puntos. Pero para las instrucciones de la CPU necesita múltiples ejecutables o grandes secciones de ramificación en su programa. O no los uses.
Afortunadamente hoy, incluso 6 años es un período corto y tendrá acceso a todo lo que necesita incluso en hardware "viejo".

poder

Este es el punto que debería escalar, en la máquina de hoy , y no en la máquina de legados. Una gama alta de 2009 potencialmente presenta una geForce GTX280, esto es muy potente y mucho más potente que su APU AMD A6-3650 de gama baja o algo así.

Es necesario comprender la gigantesca brecha de rendimiento entre los bajos y los altos de la máquina actual. Porque excede en gran medida la brecha de rendimiento de sus máquinas de 6 años en la escala de gama alta.

Por lo tanto, no es una consideración del mercado con respecto a la renovación, es una consideración del mercado con respecto al presupuesto de compra original. Y si necesita apuntar a las computadoras portátiles de hoy o las computadoras de escritorio de gama baja, tendrá que escalar de todos modos, y mucho más de lo que piensa.

Intente preocuparse por la resolución, la tasa de relleno de píxeles y el ancho de banda de la memoria de gráficos. Juega con esos factores gracias a la cantidad de pases de pantalla, el ancho de su Gbuffer si ha diferido el sombreado (muy costoso en máquinas de gama baja), la resolución de sus texturas y su cantidad presente en la pantalla en un momento dado t .. La riqueza de polígonos no será un problema a menos que esté apuntando al hardware 2002. La complejidad de Shader ALU / FPU tampoco será un problema, a menos que apunte al hardware 2005/2006.

v.oddou
fuente
44
Sin embargo, tenga en cuenta que el grupo demográfico objetivo que compra tarjetas de video de alta gama como la GTX280 es lo suficientemente rico como para haber comprado una nueva tarjeta desde entonces. Las personas que hoy todavía usan una tarjeta de video de la era 2009 probablemente compraron un modelo de presupuesto en ese entonces.
MSalters
3
Además, no olvides que tu intenso juego gráfico gráfico independiente no se debe entregar durante un año o dos, por lo que puedes apuntar a un hardware aún menos antiguo.
Valmond
10

No recuerdo dónde lo escuché por primera vez, pero esa es una regla general que no resiste mucho pensamiento crítico. En verdad, se trata de objetivos comerciales. Si no planeas vender el juego, no importa.

El hecho es que cuanto más hardware pueda soportar, mayor será su mercado potencial. Sin embargo, la mayoría de los desarrolladores independientes no van a tener los recursos para soportar hardware cercano, de todos modos, porque para aprovechar dicho hardware tendrán que gastar una buena cantidad de dinero en contenido . Cualquier desarrollador independiente que deba preocuparse por eso generalmente tiene los recursos para averiguar qué especificaciones del sistema necesitan apuntar, y esa es probablemente la información que puede comprar. Steam, por ejemplo, recopila esas estadísticas y probablemente las revende a los desarrolladores.

jzx
fuente
3
Hice una cuenta aquí solo para comentar: ¿Steam no divulga esta información libremente a todos?
Lamento
@Regret jzx se refiere presumiblemente a un grupo demográfico más específico y, por lo tanto, más estrecho. Es probable que las estadísticas sin procesar estén sesgadas por sistemas secundarios, juegos independientes, etc. Steam presumiblemente vende paquetes de información a desarrolladores que desean verificar el hardware de su demo objetivo.
Lilienthal
Me imagino que lo proporcionarían de forma gratuita si estás en la plataforma Steamworks. Por lo tanto, tendría acceso a estos datos si está lanzando un juego a través de Greenlight.
Topperfalkon
2

Como regla general, cuanto mayor sea la variedad de hardware en el que se ejecutará cualquier programa, más oportunidades tendrá de vender una copia. La cantidad de variedad que puedes soportar depende mucho del juego. Un juego como Dwarf Fortress puede ser fácilmente escalable, tanto en términos de requisitos de procesamiento como de gráficos. Un FPS con física realista como Amnesia no tanto. Mi sugerencia sería escribir su juego para que pueda ejecutarse en la gama más amplia posible de hardware y aún así ofrecer una buena experiencia. No necesariamente tiene que admitirlo todo de inmediato, pero poder reconfigurarlo para hardware nuevo / antiguo / simplemente diferente pagará fácilmente dividendos a medida que su base de fanáticos crezca y la tecnología avance.

Hay dos cosas que harán que tu vida sea mucho más fácil cuando se trata de hacer que tu juego se ejecute en una amplia gama de dispositivos, y tienen poco que ver con la edad del hardware al que te diriges (al menos directamente):

1) Si es posible, separe el backend de la interfaz. Si la parte que hace los cálculos acerca de qué piezas están haciendo qué, dónde tiene una interfaz bien definida para pasar esa información a la parte que la muestra en la pantalla y toma la entrada del usuario, entonces puede ajustar más fácilmente una (generalmente la interfaz de usuario) ) al nuevo hardware sin tener que meterse con el otro. Si se escribe de esta manera, muchos tipos de juegos podrían tener frontales que van desde gráficos en 3D de primera línea, hasta sprites animados en una página web, hasta caracteres de texto ASCII puro. En ese momento, puedes elegir cuál implementar según quién creas que comprará el juego ahora. Y puede expandirse a nuevos esquemas de salida a medida que las personas muestran interés, sin tener que meterse con el núcleo del juego.

2) En la medida de lo posible, escriba código portátil. Dependiendo del comportamiento específico de DirectX 9.3c o lo que sea que le permita hacerlo más rápido, pero cuando se dé cuenta de que debe lanzar una versión para Android, tendrá que rehacer mucho trabajo. Elegir bibliotecas e idiomas que no dependan de un solo proveedor y que sigan estándares abiertos y bien definidos reducirá seriamente su carga de trabajo a largo plazo. Recuerde: escribir un programa suele ser una pequeña parte del trabajo en comparación con el mantenimiento del programa. (A menos que vaya por el modelo de negocio de "obsolescencia planificada", pero no es probable que obtenga una gran base de fans a largo plazo).

Perkins
fuente