hola salu2 a todos :lol:hace esto :
Estoy utilizando allegro y quiero lograr una animacion suave, a los de suave me refiero a que el avance de cada cuadro sea lento, yo lo he hecho usando un timer poniendo un tiempo de avance de cuadro a cuadro, pero quiero animar a otros objetos
me pregunto, debo poner un temporizador por cada animacion??
de que manera lo puedo hacer
espero que este bien la forma que estoy utilizando para animar
bueno espero haber explicado bien. :rolleyes:
salu2
asi animas los dos objetos lentamente al mismo tiempoDe donde sacas eso?
en este tema puse como hacer estop de los hilos :
http://foros.solocodigo.com/index.php?showtopic=24793 (http://foros.solocodigo.com/index.php?showtopic=24793)
si aun asi no lo logras adaptar, avisame, que te enseño..
ya que no hay juego bien hecho que no use hilos ...
Au Revoir !
hace esto :Los unicos juegos que aprovechan programacion multihilo son en las consolas multiprocesador actuales como la xBox 360 y la recien PS3. Ningun juego comercial para PC o consola monoprocesador implementa multihilo para todas las tareas y raro es el caso que lo usan para la IA, y esto ultimo en juegos muy recientes y que solo funcionan bien aprovechando los procesadores de doble nucleo y similares, los unicos sistemas multiprocesador que veras en PC para el hogar por el momento.
usando el tiempo muerto con un timer ....
usando hilos ..
asi animas los dos objetos lentamente al mismo tiempo
en este tema puse como hacer estop de los hilos :
http://foros.solocodigo.com/index.php?showtopic=24793 (http://foros.solocodigo.com/index.php?showtopic=24793)
si aun asi no lo logras adaptar, avisame, que te enseño..
ya que no hay juego bien hecho que no use hilos ...
Lamento decirte...
ademas he corrido hasta 6 hilos sin problemas en una P3 770 Mhz 128 de ram ...
con winxp ...
el doble nucleo y hiperthreading no tienen nada que ver en lo que decia ya que el so reparte el acceso a los recursos, ademas no consumen tanta maquina...
caso que debas pausar uno tenes un Suspend o mediante una variable global haces un Sleep, no es tanto el drama de los hilos....
y lo secuencial si bien es seguro es mas embrollado para mi ...
yo divido todo en funciones aparte y es mas facil...
por que sino te queda un while mas grande que la mierda y ademas de que es poco viable si alguna funcion es bloqueante ..........
el que uds no sepan manejar hilos es otro tema, para algo estan la variables globales como ej..Genial, yo logre 16 hilos en un programa mediante cronometros de sistema en un Pentium 2 400 mhz y para colmo escrito en Visual Basic 6.0, lenguaje que no se lleva nada bien con la programacion multihilo. Beneficio? Ninguno, mas consumo de procesador y menos control del codigo ejecutado (y en mi caso, peor organizacion de codigo ya que desde VB 6.0 ni si quiera puedo lanzar funciones de clases en hilos paralelos lo que no me permitia la reultilizacion de codigo)
ademas he corrido hasta 6 hilos sin problemas en una P3 770 Mhz 128 de ram ...
con winxp ...
el doble nucleo y hiperthreading no tienen nada que ver en lo que decia ya que el so reparte el acceso a los recursos, ademas no consumen tanta maquina...Para nada, claro. El drama se resume en que pierdes la eficacia y el beneficio de la ejecucion separada por hilos al hacer las pausas. Al final acabas obteniendo el mismo resultado que ejecutaras un solo hilo pero complicandote la vida y gastando mas procesador. Eso en una consola quizas de igual ya que tienes el/los procesador/es dedicados totalmente al juego y no a centenas de programas en segundo plano.
caso que debas pausar uno tenes un Suspend o mediante una variable global haces un Sleep, no es tanto el drama de los hilos....
si uds no lo saben usar, cosa suya, a mi me sirvieron de 10....Si programaras con clases y objetos no te quedaria un While tan grande como dices. El while principal de mi motor no supera las 3 lineas contando la declaracion del propio bucle ya que solo efectua dos llamadas, una al metodo principal de actualizacion de logica del motor y otra al metodo principal de dibujo. Estas a su vez no llegaran a las 10 lineas ya que solo ejecutan sus respectivas llamadas a los metodos Update() y Draw() en un bucle For/Next por cada familia de objetos (tiles de la escena, entidades y gui). Queda como resultado un codigo jerarquico entre clases que es facil de seguir o trazarlo sin necesidad de ejecutarlo tan si quiera. Dudo mucho que amontonar funciones en hilos separados sea tan claro como esto.
y lo secuencial si bien es seguro es mas embrollado para mi ...
yo divido todo en funciones aparte y es mas facil...
por que sino te queda un while mas grande que la mierda y ademas de que es poco viable si alguna funcion es bloqueante ..........
hace esto :
usando el tiempo muerto con un timer ....
usando hilos ..
asi animas los dos objetos lentamente al mismo tiempo
en este tema puse como hacer estop de los hilos :
http://foros.solocodigo.com/index.php?showtopic=24793 (http://foros.solocodigo.com/index.php?showtopic=24793)
si aun asi no lo logras adaptar, avisame, que te enseño..
ya que no hay juego bien hecho que no use hilos ...
Au Revoir !