• Jueves 14 de Noviembre de 2024, 23:08

Mostrar Mensajes

Esta sección te permite ver todos los posts escritos por este usuario. Ten en cuenta que sólo puedes ver los posts escritos en zonas a las que tienes acceso en este momento.


Temas - Vaporeto

Páginas: [1]
1
C/C++ / Problema Con Typeid
« en: Jueves 30 de Septiembre de 2004, 00:32 »
Hola a todos, querria plantear el siguiente problema:

Estoy implementando algo parecido al siguiente codigo:

Código: Text
  1.  
  2. #include "miclase.h"
  3. #include <typeinfo>
  4. #include <iostream>
  5.  
  6. int main()
  7. {
  8.    miclase x;
  9.    
  10.    const char* aux = typeid(x).name();
  11.  
  12.    cout << aux << endl;
  13.  
  14. }
  15.  
  16.  
  17.  

el problema esta en que la salida creo que deberia ser "miclase", pero en su lugar la salida suele tener delante uno o mas caracteres que no corresponden, ej: "3miclase" o "p11miclase". Es esto normal? Decir que mi compilador es mingw32.

Un saludo y gracias por adelantado.

2
Allegro / Resultado Inesperado En Doble Buffering
« en: Viernes 27 de Agosto de 2004, 02:04 »
Weno esta es la segunda vez ke escribo este mensaje pq "algo extraño" ocurrio cuando ya casi lo tenia escrito por primera vez :whistling:  

En primer lugar como hace tiempo ke no intervenia en el foro, keria saludar a todos y agradecer las respuestas ke me dieron en su dia  :rolleyes: Ahi va mi duda:

Pues resulta que estaba experimentando formas de volcado a pantalla con un ejemplo que habia encontrado por ahi que funcionaba a las mil maravillas. La parte que interesa del codigo es esta:

Código: Text
  1.  
  2.     dblbuffer = create_bitmap(SCREEN_W, SCREEN_H);
  3.     if(dblbuffer)
  4.     {
  5.        clear(dblbuffer);
  6.        circlefill(dblbuffer, 0, 100, 50, 15);
  7.  
  8.        vsync();
  9.        blit(dblbuffer, screen, 0, 0, 0, 0, SCREEN_W, SCREEN_H);
  10.  
  11.        for (x = 1; x < 320; x++) {
  12.              rest(10);    
  13.              circlefill(dblbuffer, x - 1, 100, 50, 0);  
  14.              circlefill(dblbuffer, x, 100, 50, 15);  
  15.              textout_centre(dblbuffer, font, "Con doble buffer", SCREEN_W/2, 3, 15);
  16.  
  17.              vsync();
  18.                blit(dblbuffer, screen, 0, 0, 0, 0, SCREEN_W, SCREEN_H);
  19.  
  20.        }
  21.  
  22.        // Ahora, recuerde que debe liverar la memoria previamente reservada.
  23.        destroy_bitmap(dblbuffer);
  24.        return 0;
  25.     }
  26.  
  27.  

El problema llego cuando sustitui el create_bitmap por create_video_bitmap, que teoricamente deberia ser mas eficiente al ser la copia de vram a vram, pero el efecto resultante fue un horrible parpadeo de la figura similar al que se produce cuando se copia directamente a vram sin esperar el retrazo. Esto me parece bastante paradojico, dado que si no se producia con un bitmap de memoria convencional, como puede producirse con un bitmap de vram?

Mencionar que probe a quitar el vsync() para comprobar si al ser la copia de vram a vram hecha por hard pudiera existir un vsync() implicito ke interfiriera con la llamada explicita, pero el asunto no mejoraba en absoluto.

Otra duda que me atormenta  :D  es saber que opcion consideran mejor para el volcado (en rendimiento o en ventajas practicas) hacer un doble buffer o un page flipping?

Un saludo a todos y gracias de antemano.

3
Allegro / Re: info sobre allegro
« en: Domingo 26 de Octubre de 2003, 17:28 »
Hola. Llevo unos años programando jueguillos en lenguajes con "poco futuro" (lease makers) porque cada vez que me bajaba tutoriales de directx y cosas así el tema me parecia bastante complicado .Ahora he descubierto allegro y me parece una buena opción para meterme a fondo en el tema, pero tengo una serie de dudas:

Tengo conocimientos de c++, pero el lenguaje que más o menos domino es c, ¿puedo usar allegro sin problemas desde c?

En términos de rendimiento ¿a que altura se encuentra allegro con respecto a directx?

Saludos y gracias de antemano.

Páginas: [1]