Entrar
¿Usuario nuevo? Regístrate
allegro-espanol · Una lista en español sobre la librería Allegro.
? ¿Ya estás suscrito? Entrar en Yahoo!

Consejos de Yahoo! Grupos

¿Sabías que...?
Puedes determinar el orden de los mensajes. Pulsa el enlace en la columna correspondiente a la fecha. Tus preferencias serán guardadas y no tendrás que introducirlas de nuevo.

Mensajes

  Mensajes Ayuda
Avanzado
como hacer un Debug de un programa allegro con MSVC   Lista de mensajes  
Responder | Reenviar Mensaje #699 de 9896 |
Re: [AL-ES] como hacer un Debug de un programa allegro con MSVC

 
Parece ser que lo que estas haciendo es imprimir el mouse sobre el bitmap screen usando (supongo) una construcción de este tipo:
 
               show_mouse(screen);
                blit(buffer, screen, 0, 0, 0, 0, W, H);
                show_mouse(NULL);
 
esto produce un parpadeo feo, y puede que hasta otros problemas....
 
ten en cuenta que el puntero del mouse es un bitmap como otro cualquiera, asi que lo mejor es que utilices el doblebuffer, contruyendo el programa de la siguiente manera:
 
                show_mouse(buffer);
                blit(buffer, screen, 0, 0, 0, 0, W, H);
                show_mouse(NULL);
 
esto elimina cualquier parpadeo..
 
Os adjunto codigo fuente y ejecutable para windows de lo dicho....
 
Un cordial saludo a todos y pasaros por: http://sp4br75.digiweb.psi.br/principal.htm
 
 
----- Original Message -----
From: t0rk4n
Sent: Thursday, May 09, 2002 11:15 AM
Subject: RE: [AL-ES] como hacer un Debug de un programa allegro con MSVC

--- En allegro-espanol@y..., Grzegorz Adam Hankiewicz <gradha@t...>
escribió:
> On Sun, May 05, 2002 at 06:37:23PM -0000, t0rk4n wrote:
> > Hola a todo el mundo,
> >    resulta que tengo un problema con allegro y no se como
> > solucionarlo. Para solucionarlo necesito hacer un debug del
programa,
> > pero si ejecuto el debug tipoco del MVSC no funciona... ¿Alguien
sabe
> > como hacer un debug con MVSC de un programa allegro? Creo que
para
> > hacer un debug habria que usar el GUI de allegro, pero no se como
> > usarlo,¿Sabeis si hay algun GUI ya hecho y como se usa?.
>
> Lo que necesitas hacer es ejecutar tu programa con un driver en modo
> ventana. Debido a cómo es Windows y DirectX, es prácticamente
imposible
> depurar nada a pantalla completa (a no ser que estés depurando por
red
> o en sistemas de monitor dual, claro). En cambio en modo ventana no
> suele haber problemas. Y si te siguen dando problemas, prueba forzar
> la ejecución de tu programa con el driver GDI, que ese si no se deja
> depurar es que algo muy malo le pasa a tu depurador.
>
> >    Ahh, y una ultima pregunta... Estoy intentando hacer un
pequeño
> > motor para poder hacer aventuras graficas con allegro, pero tengo
> > problemas con el mouse, ya que se especifica que el mouse se debe
de
> > ocultar cuando dibujas sobre la memoria de video. Yo he probado a
no
> > ocultarlo, pero el mouse parpadea constantemente mientras dibuja
o ni
> > si quiera se ve. Pienso qe esto es un verdadero problema para
hacer
> > un juego de este tipo..¿Como podria hacer para solucionar este
> > problema?.
>
> Este es un problema común, y casi siempre la forma más expeditiva de
> solucionarlo es pasar del cursor por hardware (ya que la mayoría de
> las veces te interesarán hacer chorradas como cursores animados o
más
> complejos que un bitmap bicolor), y dibujar "a mano" el cursor del
ratón
> en la posición adecuada.
>
> Esto significa ocultar el cursor hardware y dibujar el sprite que
> quieras en la posición adecuada.  El único problema es que
dependiendo
> de la tarjeta gráfica o del modo en que actualices la pantalla el
ratón
> puede resultar "poco responsivo" al usuario si tu programa no
consigue
> dibujar muchos frames por segundo. Por supuesto en una aventura
gráfica,
> donde no suele haber mucho movimiento en pantalla, suele ser
suficiente
> con usar dirty rectangles y no se nota la diferencia.
>
> La forma compleja de solucionar esto es intentando usar
scare_mouse_area
> cuando intentes redibujar la pantalla (o parte). Pero esto sólo
merece
> la pena si quieres conservar el cursor por hardware.
>
> --
>  Grzegorz Adam Hankiewicz   gradha@t...  
http://gradha.infierno.org/

-----------------------------------

Creo que entiendo todo lo que me dices, pero lo que no entiendo
demasiado bien es a que te refieres con dibujar el mouse "a mano".
¿te refieres a olvidarse de allegro para dibujarlo o a simplemente
hacer un scare_mouse y usar los parametros del mouse de allegro para
dibujarlo a mano?. Tambien desconozco lo que son los dirty rectangles
aunque me suena el termino, ¿que se supone que son?.

Gracias.





_______________________________________________
Para cancelar su subscripción envíe un email a:
allegro-espanol-unsubscribe@egroups.com


La utilización de Yahoo! Grupos está sujeta a su aceptación de las Condiciones del servicio así como de la Política de privacidad.


Jue, 9 de Mayo, 2002 2:20 pm

jfhorizon@...
Enviar mensaje Enviar mensaje

Documento adjunto:
particulas.zip
Formato:
application/x-zip-compressed
Reenviar Mensaje #699 de 9896 |
Desplegar mensajes Autor Ordenar por fecha

Hola a todo el mundo, resulta que tengo un problema con allegro y no se como solucionarlo. Para solucionarlo necesito hacer un debug del programa, pero si...
t0rk4n
metalbrutal@...
Enviar mensaje
5 de Mayo, 2002
6:37 pm

... Lo que necesitas hacer es ejecutar tu programa con un driver en modo ventana. Debido a cómo es Windows y DirectX, es prácticamente imposible depurar nada...
Grzegorz Adam Hankiew...
gradha@...
Enviar mensaje
5 de Mayo, 2002
9:56 pm

... programa, ... sabe ... para ... imposible ... red ... pequeño ... de ... no ... o ni ... hacer ... más ... ratón ... dependiendo ... ratón ... consigue...
t0rk4n
metalbrutal@...
Enviar mensaje
9 de Mayo, 2002
2:15 pm

... Tal y como dice José Fernando Pérez Cardona, hacer un show_mouse en el bitmap donde haces el doble buffer es suficiente, aunque yo suelo hacer...
Grzegorz Adam Hankiew...
gradha@...
Enviar mensaje
14 de Mayo, 2002
4:01 pm

Parece ser que lo que estas haciendo es imprimir el mouse sobre el bitmap screen usando (supongo) una construcción de este tipo: show_mouse(screen); ...
José Fernando P...
jfhorizon@...
Enviar mensaje
9 de Mayo, 2002
3:24 pm
Avanzado

Copyright © 2009 Yahoo! Todos los derechos reservados.
Política de Privacidad Actualizada - Condiciones del servicio - Directrices - Ayuda