Queria decir que ya van 4 librerias por desgracia XD.. la idea original era crear una libreria usando una tecnologia bien establecida, para luego no depender de nadie, y los problemas que me he ido encontrando han sido variados..
gameLibZero "JAVA VERSION".- Para 2D en general ha funcionado muy bien, ha salido una buena libreria 2D para juegos y programas, la experiencia que me llevo es buena y me ha merecido la pena, pues he podido vender un buen programa hecho con ella por un buen precio, ahora tengo un contrato de mantenimiento del software gracias a processing
- EL PROBLEMA: En 3D tiene un rendimiento muy malo en Android, es inaceptable y es el motivo principal por que que saltar a otra tecnologia.
gameLibZeroJS "JavaScript VERSION".- Esta ha sido una mala experiencia, con la premisa de "java processing" comencé a trabajar en la versión web de la misma, pensando que el rendimiento seria similar y que siendo una tecnologia mas moderna esta estaria mas a la altura de las circunstancias 3D, pero para nada fue así, justo lo contrario, si processing en java se queda corto en android, processing web se queda corto en general.
- EL PROBLEMA: Un rendimiento bajisimo en todas las plataformas, tanto en el contexto 2D como en 3D, y en Android el rendimineto ha sido especialmente malo, una biblioteca horrible desde inicio a fin.
gameLibZero "C++ VERSION".- Esta ha sido una experiencia a medio camino, en rendimiento ha resultado ser EXCELENTE, otorgando un rendimiento sin precedentes en cuanto a 2D y a 3D se refiere, con rayLib en el background la verdad es que ha salido un framework muy usable y realmente potente.
- EL PROBLEMA: C++ es un lenguaje viejo, muy parcheado y no todos los compiladores de otros lenguajes lo soportan en las mismas versiones para usar librerias precompiladas como addons en otros entornos, en si el proceso de compilación y preparación del entorno es realmente complejo para alguien que empieza y es muy dificil armar una base solida multiplataforma pues tiene un trabajo descomunal el aprender diversas tecnologias que hacen falta para hacer los ports, y si a esto le añades que el creador de rayLib no esta dispuesto a ayudar a la gente a usar su libreria.. pues la cosa se pone fea.
+ Esta versión la guardo con especial cariño y esta en el baul de las cosas pendientes, algun dia cuando aprenda a usas bien las tecnologias necesarias para que realmente gameLibZeroCPP pueda ser multiplataforma real retomaré el trabajo y la terminaré, por motivos de necesidad debo saltar a otra tecnologia mas asequible. "como bien dijo CicTec por discord
".
3Div.js "WEB VERSION".- He aquí el momento actual, tras muchas vueltas he encontrado fuerzas para dar el que espero y al parecer todo apunta a que así va a ser, a dar el ultimo salto!
- Estaba completamente equivocado sobre esta tecnología, en un principio pensé que era un lenguaje lento, pero nada mas lejos de la realidad, es un lenguaje realmente rapido, procesa cientos de miles de instrucciones por segundo en CPU´s de gama baja.
- Tras varias busquedas e investigación sobre que motores 3D usa la gente, vi un claro ganador,
"Three.js".
- Three.js es una libreria madura y lleva en el mercado años, se ha consolidado como la libreria de primera linea para juegos WEB 3D de alto rendimiento, hay mas opciones, algunas exquisitas como babylon.js, pero la comunidad que hay detrás es mucho menor y no hay apenas ejemplos detallados sobre diversos temas muy concretos.
- Por este motivo he escogido Three.js, y me siento muy comodo con ella, pues es rapida, y buena, pudiendo hacer cosas realmente impresionantes, y existiendo ya muchos estudios que la usan actualmente, por nombrar a uno.. FACEBOOK ha creado varios pluggins para esta libreria completamente libres.. no te digo mas..
Y en este punto estamos, montando todo el entorno, videos de uso y framework en general para empezar a trabajar con 3Div.js, cuando por fin publique el primer video creo que veras cosas muy interesantes.