graphics - template - ¿Es necesario codificar un nuevo motor 3D?
titles premiere template (4)
En general, codifica uno si necesita uno y no existe uno que satisfaga sus necesidades.
¿Hay alguien por ahí que necesita un motor creado para ellos porque no existe uno que se adapte a sus necesidades? Probablemente.
La codificación de un nuevo motor 3D es fascinante, pero hay tantos por ahí. ¿Es sensato que un programador comience uno nuevo? ¿Hay secciones de la industria en necesidad?
Esto es muy similar a la pregunta: ¿ debería escribir mi propio programa / tecnología / framework X en lugar de usar uno existente? ", Y eso se ha preguntado en abundancia, así que no voy a exceder las razones repetitivas habituales.
Si bien la respuesta a esta pregunta siempre será un tanto subjetiva, mucho depende del contexto en el que se la solicite.
Si se le pregunta a lo largo de las líneas de Quiero aprender sobre los motores de juego y la representación , siempre puede ser beneficioso escribir su propio motor de juego, ya que desarrollar el código es posiblemente la mejor manera de aprender. Sin embargo, puede que ya existan buenos motores bien documentados de fuente abierta para aprender también.
Si se trata de un esfuerzo comercial, entonces es más una cuestión de si un motor existente proporciona o no lo que se necesita. Los motores comerciales modernos están escritos por personas realmente brillantes y contienen las últimas novedades, por lo que es más que probable que sean suficientes. Esto es evidente por la gran cantidad de juegos que se han desarrollado en dos de los motores de juegos más populares: idTech y el motor Unreal. Sin embargo, puede que aún no existan factores prohibitivos relacionados con la tecnología para usar un motor existente donde escribir es mejor. Por ejemplo, si puede permitirse hacerlo, si el motor puede obtener una licencia adecuada y, si se puede otorgar la licencia.
Hay muchas razones para construir un nuevo motor 3D (sin ningún orden en particular):
- El anterior es un shooter en primera persona, pero quieres un simulador de vuelo.
- El anterior funciona, pero no es fácil de usar o tiene demasiados errores
- Alguien más posee el anterior
- La nueva característica de hardware XYZ es fundamentalmente incompatible con el viejo motor
- Alguien te está pagando para construir uno
- Nunca has construido uno antes.
- Su juego (simulación) solo necesita χ, pero el viejo motor proporciona χ, ψ, ζ, α, β, γ, δ, e incluso π.
Estoy construyendo un motor 3D basado en OpenGL en mi tiempo libre ahora mismo. Al implementarlo yo mismo, estoy expandiendo mi conocimiento básico de OpenGL mucho más de lo que lo hubiera hecho al programar en la interfaz de otra persona (mucho más de lo que lo hice cuando implementé mi propio motor afilado de textura de software hace años). El inconveniente es que quizás nunca lo termine :)
Razones para hacerlo:
- Desea aprender cómo hacer un motor 3D y realmente no le importa si alguien más lo usa.
- Ninguno de los motores existentes hace lo que quiere y es demasiado problema modificar su código fuente (si es que puede obtenerlo).
- Tienes una idea tan maravillosa y ningún otro motor lo ha hecho, así que tienes que hacerlo porque lo que sea que estés haciendo no existe todavía.
Razones para no hacerlo:
- No tiene suficientes de estos recursos: tiempo / presupuesto / experiencia.
- Un motor existente se ajusta perfectamente a sus necesidades.