10 de julio de 2008

Pecado capital

Estoy un pelín perezoso. Será el verano, el calor, que aún no he hecho vacaciones (y llevo como 3 años sin hacer) o lo que sea, pero el cansancio diario me puede y avanzo poco.

Aún así he sacado algo de fuerzas para seguir con el tema de los fluidos, y ya va teniendo una pinta más interesante. Estos días básicamente me he puesto a mejorar un poco el rendimiento, he pasado todo el cálculo de la simulación a un thread secundario (que será directamente un core distinto en 360), dejando el principal para el render (que es una chorrada y va rapidísimo). De esta manera funciona bastante más suelto aunque sigue siendo muy exigente en cuanto a CPU. A ver si mañana me monto algo para saber realmente a qué velocidad funciona (ahora mismo no tengo más información que los frames por segundo de render, que no dice gran cosa) para poder ir probando más cosas. Actualmente tiene este aspecto:



En el video también se ve que he añadido un par de funcionalidades más (echar tinta con el ratón y "empujar" el fluido), pero el cambio más importante es el rendimiento. El ejemplo final no distará mucho de esto, pero si no se me quitan las ganas quiero probar un par de cosas más:

- Echar tinta de varios colores a la vez (esto puede ser bastante costoso, así que a lo mejor lo pruebo y luego lo quito ^^U).
- Hacer el ejemplo 100% compatible con Xbox 360. Ahora mismo se llama a funciones típicas de C++ (mem_cpy y memset) y por tanto no funcionaría en consola.

Y bueno, y si al final funciona bien lo de varios colores a la vez, quizás pruebe más cosas que no formarán parte del ejemplo... :P

No hay comentarios: