286 meneos
5635 clics
Un desarrollador indie español está haciendo su propio motor gráfico para un juego de estrategia histórica [ENG]
"Pasé los últimos 5 años trabajando en mi propio motor gráfico de videojuegos en c ++, para hacer un juego de estrategia histórica realista centrado en la antigüedad [DRM Free + soporte de mods] (Birth of Cultures)"
|
comentarios cerrados
"(OP)
First because Since I was a child playing with cryengine I decided some day make my own engine, and aside that, my engine is focused in performance, you can generate actual planets with fully climate simulation."
El twitter desactualizado del creador: twitter.com/brais_martelo
Yo ya lo he agregado a mi lista de deseos.
Espero que el juego sea 100.000% más entretenido que el video
Todo programador quería ser john carmack de mayor, pero esos tiempos ya pasaron.
una puta mierdala hostia.Por otra parte, te doy la razón: con los dedos de una mano. Pero el indie está más vivo que nunca.
#28 No sabía eso del Kerbal, curioso. El tema de la optimización es todo un arte, que el rendimiento no sea muy fino depende más de los desarrolladores que del motor en sí. Aunque puede haber excepciones y sí es cierto que Unity en un pasado tuvo algunas versiones no muy eficientes, a día de hoy tira de lujo.
to theof theHecho por una única persona en su tiempo libre.
ya me voy...
Por eso digo todo ésto, estoy al 200% que ese tio es un millón de veces mejor que yo, al final no es ser bueno, claramente ayuda, pero es tiempo, tantas cosas por hacer que te consumen la vida y poco tienen ue ver con ser programador o ser muy inteligente.
Al final uno aprende de los errores, el seguro que se dara cuenta, ojalá, y busque a mas gente que le ayude, ya tirar sin engine es una locura de trabajo de mas hasta para un grupo.
Pero de verdad que le deseo lo mejor, ojala se busque unos compañeros y haga realidad su juego 100% real.
Pero a veces estos motores tienen muchos elementos que tu juego no necesitan y consumen muchísimos recursos (haz un helloworld en cada engine y te darás cuenta) que si no los vas a usar, lo mismo te interesa más hacerte tu propio motor que se centre exactamente en lo que necesita tu juego.
Por ejemplo, con Unity te costará meter 5000 personajes en pantalla, quizás, si te creas tu motor y optimizas bien está parte, si puedes hacerlo. Y luego otro motivo es querer aprender a hacer un motor, que también cuenta y es buena idea saber como funcionan las cosas a bajo nivel ya que luego te ayudará a optimizar a alto nivel.
Como dices, Unity sirve, pero lo mismo no da el resultado que necesitas.
Si es por el placer de hacerlo, adelante, pero no me parece práctico.
Normalmente los recursos humanos son más importantes que los del procesador.
Y si además lo quieres hacer multiplataforma es una locura.
Tiene muchas cosas como
- gestión de la entrada (teclado, ratón, los miles de controladores y joysticks distintos),
- sonido (2d, 3d, effecto doppler, etc),
- scripts (fácilmente modificables que encapsulen la lógica del juego, sin tener que recompilar todo el engine),
- gestión de assets (recursos, conversión, empaquetado),
- gestión de fuentes (opentype, truetype, bitmap),
- y sí, 3 motores gráficos distintos para distintas necesidades (alta fidelidad, bajos recursos hardware, y el legacy),
- además de producir ejecutables para Windows, Linux, MacOS, iOS, Android, PS4, PS5, Switch, Webassembly, y muchos otros.
Cada uno de esos puntos, y sus variaciones, son proyectos colosales en sí mismos que involucran muchos años/hombre, y todos y cada uno de ellos son indispensables para cualquier juego que quieras hacer hoy. Además, estos sistemas se tienen que mantener en todo momento por un ejército de ingenieros que responden a cambios en los sistemas operativos, nuevo hardware, cambios en las API de los drivers, etc.
Y con eso, ni tan siquiera tienes un juego "jugable". Simplemente la infraestructura mínima para construir algo encima.
Hacer todo esto de cero, además de mantenerlo, y encima construir un juego encima, es un ejercicio más de orgullo que de pragmatismo y lógica.
Puedes encontrar colaboradores online que quieran ayudarte gratis si tu idea es atractiva. Pero será much más difícil si usas un engine que has hecho tú en tu dormitorio, para el que no hay ninguna documentación, ni experiencia, ni comunidad, y referencia.
Además, usar un engine preexistente no te obliga a usar todas las partes de él. Puedes construir y personalizar aquéllas que no te convenzan. Por ejemplo, el Cities Skylines está construído sobre Unity, pero no usa el renderer de Unity, sino que programaron el suyo propio para ser capaces de tener cientos de miles de edificios en pantalla sin caídas de rendimiento, mientras que aprovecharon todo lo demás (entrada, sonido, multiplataforma, texto, modding, ...)
John Carmack mismo lo decía hace unos años durante una entrevista. Cuando escribió Doom, imprimir texto en pantalla era algo que se podía hacer en un par de líneas de código. A día de hoy, sin embargo, con fuentes, localizaciones, direccionen de texto, densidad de pantalla, etc, requieres interactuar con 5 o 6 frameworks diferentes antes de que el texto aparezca en pantalla.
Otro tema sea luego, si vas a dedicarte a esto profesionalmente, desarrollar y vender tus juegos (y salvo que seas un estudio minimamente grande e inviertas en tu propia tecnología como hacen en Mercury Steam o Digital Legends por ejemplo), en la mayoría de los casos, hoy día obviamente te da más garantías trabajar sobre estos motores de terceros (Unity, Unreal Engine), probados y testados hasta la saciedad durante años por incontables títulos publicados y desarrolladores usándolo a diario (y la infinidad de herramientas y plugins disponibles), que hacerte y mantener tu propia tecnología + crear o adaptar herramientas para crear contenido. Obviamente, te vas a centrar todo tu esfuerzo y recursos en desarrollar tu juego.
P.D.: Ojo, que un motor 2D yo todavía me atrevería hacérmelo hoy día, a medida del juego y la plataforma, usando MonoGame o frameworks multiplataforma del estilo como base del mismo, pero un motor 3D a la altura de lo que hay hoy día en la calle + su SDK de herramientas de creación de contenido... ni de coña.