Muy buenas a todos,
he estado mucho tiempo perdido y sin escribir nada, pero la verdad es que la mayoría de las prácticas de la asignatura de Programación de Videojuegos no han sido lo que esperaba que fuesen. Cómo yo me temía, la asignatura ha terminado siendo inútil en todos los sentidos de la palabra, es por ese motivo por lo que he llegado a decidir nisiquiera comenzar una serie de tutoriales sobre Java3D.

Java3D se trata de una tecnología obsoleta, antigua, de la que no hay apenas más información que una API cutre y falta de contenido. Nos ha dado muchísimas complicaciones a todos los de la clase, y por poner un ejemplo, los detectores de colisiones o dan errores con cierta configuración o con una configuración distinta no van ni bien en equipos de gama alta. Consumen una cantidad de recursos estúpidos.

Es por este motivo que a todos los que lean esto, que están pensado en estudiar esta asignatura en años siguientes aquí, en la Universidad de Málaga, se lo piensen dos veces, porque lo único que harán será perder el tiempo, ya que programación no aprenderán precisamente, al menos no lo harán con el profesor que hemos tenido este año. Inepto es decir poco. Más que ayudar, lo que hacía era amargar el curso, cambiando los apuntes y los códigos de ejemplo sin avisar, y solo causando problemas.

Cuándo quedaban apenas tres semanas para acabar el curso nos introducieron un motor físico llamado JBullet. Por Dios, ¡qué espanto! En nuestro proyecto final ese motor sólo es usado para que las cosas caigan de forma bonita. Resulta de idiotas pensar que la información que maneja ese motor físico no se pueda usar. Pero así ha sido, no hemos podido usar colisiones, ni posiciones, nada. Nuestro “maravillo” profesor no sabía como hacerlo. Así que para detectar colisiones hemos tenido que ir a los detectores de nuevo, empeorando más aun el rendimiento de nuestro juego, a un nivel que da hasta grima. Creo que en mi portátil, Skyrim va más fluido que nuestro proyecto final.

A resumidas cuentas, y tras haberme desahogado bastante con el texto anterior, esa es mi escusa para no haber hecho la serie de tutoriales que prometí. No quiero hacer a nadie perder el tiempo aprendiendo algo que pertenece a la década de los 90. Algo que está tan poco optimizado que no funciona bien en casi ningún ordenador, y la verdad es que para hacer algo medio decente hay que amargarse la vida demasiado.
A mi no me asusta el bajo nivel, pero prefiero programa en ensamblador del MIPS antes de volver a hacer algo en Java3D.

Hasta ahora tengo dos notas finales este semestre, y la verdad es que me va bastante bien, así que si me aburro mucho en este verano, puede que me dé por hacer algo en Unity. Bueno, hacer no. Aprender.
Veo que realmente es algo que tiene mucho potencial, y puede que tenga bastante más utilidad que lo que hemos aprendido en esta asignatura.

Por supuesto también me llevo algunas cosas muy buenas como por ejemplo haber trabajado con mis dos compañeros del proyecto final. Uno se ha encargado completamente de la inteligencia artificial del juego, dotando a tus aliados y enemigos de capacidades muy buenas. Y el otro se dedicó bastante tiempo a embellecer el juego con explosiones y efectos de sonidos que han hecho que a nuestro “increíble” profesor se le cayeran los pantalones al ver el juego que habíamos hecho con esa mierda de recursos.
Un placer haber trabajado con ellos, y sobre todo por lo que se aprende, porque cuando el lenguaje no te ayuda, te has de buscar la vida y usar la inventiva para llevar a cabo tus objetivos.

Nos veremos pronto, o tarde. Pero seguiremos estando conectados. Sed originales.

Saludos,
Lázadus Surazal.

Entradas relacionadas

Perfil
prLázarus logo info
Carlos J. Peláez Rivas (Lázarus Surazal)
Graduado y Máster en Ingeniería Informática por la Universidad de Málaga. Actualmente trabajando como desarrollador de aplicaciones en Java usando Vaadin.
Apasionado de los videojuegos, la música y alguna que otra tecnología, siempre buscando cosas nuevas que aprender y hacer.
Más sobre mi...
Contacto
Notificaciones