Saturday, March 13, 2010

Obsesiones estupidas

Un buen amigo me comentó un día que envidiaba mi fuerza de voluntad, ya que me meto en mil proyectos, en los cuales acostumbro a invertir bastante tiempo. Mi respuesta fue: "No es que tenga mucha fuerza de voluntad, simplemente soy muy obsesivo". Al igual que aprendiendo, programo sobretodo para luchar contra la sensación de que no puedo hacer algo. Si algo sale mal, lo intento de mil maneras diferentes hasta que sale bien.

Mi ultima obsesión, como casi siempre, salió en un momento de aburrimiento: tenía ganas de ver la Platipus de Incognita. Hacía mucho que no la veía, pero recordaba que en Windows XP ya daba muchos problemas, a saber en Windows Vista. Nada, que la pruebo, y no muestra las primeras escenas, las siguientes las muestra mal, y se ve todo como una mierda. Una persona inteligente, habría encendido el PC de al lado, con Windows XP, pero yo no: porque hacerlo fácil cuando puedes hacerlo difícil, lento y complicado? La solución era clara, buscar el código fuente de la demo, y parchearlo para que funcione en Windows Vista. Es mas, rehacer el renderer y pasarlo a OpenGL.

A pesar que ha dado muchos problemas, ya que tenía parte del código del sistema de demos (porque porté la Mayhem a Windows), este no acababa de cuadrar, ademas de tener que hacer ingeniería inversa del formato de datos (había cambiado ligeramente), tener que implementar el renderer de OpenGL sin saber como va exactamente como va el Direct3D7, y otras cosillas (corrupción de memoria por coger la memoria de un heap, y liberarlo en otro), ahora ya esta al 50%. Hay muchos problemas aún, pero la mayoría son del renderer, lo cual es solucionable.

Lo que mas me preocupa, es que el renderer recibe polígonos pre-transformados, con lo cual falla la corrección de perspectiva, y parece que se este pintando con el software renderer de la Overdose (zas, en toda la boca). A ver si lo termino, y pido permiso a los Incognita para hacerlo publico. Unas capturas y un vídeo, todo muy temporal, así que disculpad los errores :P




PS: El vídeo lo añadiré en otro post, que la conexión desde donde escribo esto es algo inestable.

No comments: