lo que impide a los fabricantes crear motores de juegos optimizados para hardware

-2

Al igual que el mp3 y el h264 se han convertido en un circuito, ¿qué impide a los fabricantes de tarjetas gráficas crear un motor de juego (el programa que se ejecuta con más frecuencia en una tarjeta gráfica) en la tarjeta gráfica? Desde mi perspectiva será: Probablemente haga que el hardware más barato corra exigente software 3d. El rendimiento por vatio aumentará Reducir costos en la producción de juegos. Los desarrolladores de juegos no se preocuparán mucho por desarrollar un motor de juego u optimizaciones de rendimiento Incluso si alcanzamos un nivel de rendimiento en la industria, los fabricantes aún podrán vender sus nuevos productos que utilizan el siguiente motor de juego y los juegos A y B creados exclusivamente para este nuevo motor. Claro, desarrollar un motor de juego universal y luego transferirlo a un circuito debe ser difícil, pero: Podría comenzar con motores de juego más simples que otros motores (de software) puedan desarrollar. Teniendo en cuenta la demanda de tarjetas gráficas de bajo precio, alto rendimiento y menos vatios (especialmente en el mercado móvil), ¿no está justificado el desarrollo de un chip de este tipo?

    
pregunta Yordan Grigorov

2 respuestas

2

Las GPU modernas tienen la capacidad de ser programadas para el cálculo de propósito general a través de los idiomas / kits de herramientas de GPGPU, como OpenCL, CUDA, OpenACC, etc.

Los desarrolladores pueden utilizar estas herramientas para escribir cualquier motor de juego que deseen con soporte de hardware adicional. Por ejemplo, NVidia ofrece su kit de herramientas PhysX para usar la GPU para acelerar los cálculos de tipo físico.

Sin embargo, el uso efectivo de estas herramientas desarrolladas previamente puede ser relativamente complicado, y escribir las suyas es, al menos, un orden de magnitud más difícil.

Requerir algo especializado para un juego en particular (o grupo de juegos) significará:

  1. La GPU debe tener varios bloques pequeños para cada función especial, lo que significa que el espacio del troquel aumenta dramáticamente. Esto aumenta los costos, e incluso puede hacer que la producción de un chip no sea viable.
  2. Un juego solo se ejecutará en un conjunto limitado de hardware porque está especializado. ¿Debería esperarse que un usuario posea 10 GPU diferentes para jugar 10 juegos diferentes?
  3. Solucionar errores será prácticamente imposible.

La comunidad de GPU ya ha pasado por algo similar en el pasado:

OpenGL 1/2 y las versiones antiguas de DirectX se utilizan para incluir llamadas a funciones especiales que dibujarían un polígono, manipularían una cámara y realizarían luces / sombras realmente básicas. Algunos hardware incluso tenían aceleración especial para estas funciones. ¿Por qué fueron desaprobados? Debido a que limitaron drásticamente lo que podías hacer, y si querías hacer algo fuera del conjunto limitado de funciones, no tenías suerte o tenías un código horrible y de mal rendimiento.

De este modo, avanzaron hacia la programación basada en sombreado, lo que significaba que el desarrollador era responsable de escribir cómo se sombreaba un polígono, cómo funcionaban las sombras e incluso cómo manejar las proyecciones de la cámara. Ya no tenía que preocuparse por "¿la GPU tiene un sombreado Phong o un sombreador Oren-Nayar?". Puede escribir su propio para ejecutar (o copiar / pegar uno existente) en el hardware general de la GPU y saber que funciona * en múltiples plataformas.

TL; DR: el hardware especializado es demasiado complejo y costoso de hacer en general, de ahí que se llame "especializado".

anexo:

Las tarjetas de video profesionales TIENEN hardware especializado para ejecutar programas profesionales como CAD. Sin embargo, si miras la lista de estos programas, solo hay un puñado, y todos hacen lo mismo. Entonces, ¿cuánto cuestan estas tarjetas "profesionales"? Un orden de magnitud más. Es cierto que parte de este costo se debe a que los usuarios profesionales se preocupan por la confiabilidad, menores volúmenes de ventas y porque los fabricantes de GPU saben que pueden salirse con la suya con un precio más alto, pero no esperaría precios muy diferentes para hardware especializado para una pocos juegos.

    
respondido por el helloworld922
1

Las cosas que necesita una tarjeta gráfica están bastante estandarizadas, por lo que puede crear hardware de gráficos que sea útil para una amplia gama de juegos.

Lo que debe hacer un motor de juego es muy dependiente del juego en particular, no hay un conjunto de características acordado, y mucho menos un estándar. Por lo tanto, un motor de juego no será útil para una amplia gama de juegos, así que, ¿por qué molestarse en implementarlo en el costoso silicio?

    
respondido por el Wouter van Ooijen

Lea otras preguntas en las etiquetas