Ver Mensaje Individual
  #2 (permalink)  
Antiguo 18/06/2013, 19:56
Avatar de buzu
buzu
 
Fecha de Ingreso: octubre-2006
Ubicación: San Francisco, CA
Mensajes: 2.168
Antigüedad: 18 años
Puntos: 122
Respuesta: Ralentizacion de navegador al generar objetos

Lo mejor, creo yo, seria usar canvas, calcular la pocicion de tus nuves y dibujar la escena. Mover objetos en el DOM es costoso en terminos computacionales y es por eso que se te ralentiza el navegador. Te sugiero que busques algo sobre optimizacion para juegos y tecnicas de animacion para juegos en javascript. Tambien puedes intentar algo con animaciones CSS que estan aceleradas por el GPU, aun que no se en realidad cuanta mejora puedas alcanzar. Tambien busca informacion sobre tecnicas de cacheo. Hace tiempo tenia un problema con una animacion ya que estava calculando todos los datos al vuelo. Lo resolvi con un simple sistema de cacheo. Lo que hacia era calcular la posicion de los elementos previamente y cachear esos valores. Despues solo era cuestion de sacar los valores y usarlos. Si un valor necesario no excistia, entonces era computado y cacheado. No recuerdo excactamente que es lo que estava haciendo, pero recuerdo que me mejoro mucho el rendimiento ya que los valores eran computados una sola vez.

Por ultimo, recuerda hacer redibujado de la pantalla lo menos posible. Por ejemplo, en lugar de mover todas tus nuves independiente mente, puedes sacarlas de DOM, moverlas y agregarlas todas de una sola vez para hacer un solo redibujado. Investiga un poco sobre document fragment y su uso en tecnicas de animacion.
__________________
twitter: @imbuzu