Reporte de estado, Godot 4

 
Para que evitarles malestar a su cuerpo y malas noches a su familia, en este blog nos dedicamos a hacer de piloto de pruebas para software pre-pre alfa, como Godot 4. Así pueden aprender de mis experiencias (buenas o malas) y obrar en consecuencia. En realidad no pretendía involucrarme mucho con Godot 4 hasta dentro de un par de meses, pero tuve que hacer un alto en el trabajo de diseño y meterle mano al código. Me di cuenta de que no tenía idea de cómo implementar mi propuesta de sistema de habilidades, o sea, que corría el riesgo de cagarme fuera del cajón.

A ver, Anteriormente en Godot 4... La última vez que trabajé con la rama master se dañó irreparablemente una escena que me había costado hacer. El sistema de renderizado 3d fallaba bestialmente con modelos animados y ni siquiera conseguí comparar la mejora de rendimiento luego de las optimizaciones (aunque lo primero fue lo que me detuvo). Era muy difícil seguir los mensajes en el panel de salida porque estaba lleno de errores, aunque hay que reconocer que el editor no explotaba a menudo. Tampoco logré entenderme con la nueva sintaxis de export y había un error en el acceso a los índices de los diccionarios, o sea, que había que usar dicc.get("indice") en vez de dicc["indice"].

A día de hoy, el error de los diccionarios persiste, aunque se sabe la causa. El renderizado no lo he mirado a fondo, pero creo que se mantiene la deformación de los modelos. Me encontré un problema que explotaba el editor, pero al final logré descubrir que se debía a que estaba usando una función con parámetros en una clase hija cuando la función de igual nombre en la clase padre no los tenía. Esto es perfectamente válido en la programación orientada a objeto, así que podría ser un error en el intérprete de GDScript. Otro detalle raro es que no se puede exportar una variable de tipo String, o mejor dicho, puedes pero el editor no permite editar el valor. Fuera de eso, el editor es bastante estable y los errores que desbordaban el panel de salida se han ido. 

En fin, Godot 4 se mantiene en estado inusable para cosas serias y se mantendrá así por un período largo y difícil de determinar. El editor al fin está recibiendo cierta cantidad de trabajo, lo que a la larga implica mejoras, pero ahora mismo es una ruleta rusa. El renderizador secundario no aparece aún y se han dicho tantas cosas que ya no sé si será basado en GL ES 2 o 3. La última propuesta fue GL ES 3 para 3d y un renderizador GL ES 2 para 2d. El renderizador Vulkan está muy completo a nivel de funcionalidades y optimización, así que supongo que solo falta pulir fallos. Otras funcionalidades sufrirán cambios no anunciados, como Navigation3D que desapareció debido a una simplificación, ahora solo necesitamos las Regiones. Lo que sí espero es que no haya más cambios en la sintaxis de GDScript, por eso intenté algunas pruebas de concepto que no tenían nada que ver con interacción o gráficos y me fue bastante bien.

Dentro de un mes quizás les haga otro reporte, aunque no espero grandes cambios. Ojalá me equivoque.

Comentarios