Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
C/C++ - Problemi in allegro. Velocità in base al computer e non sempre funziona
Forum - C/C++ - Problemi in allegro. Velocità in base al computer e non sempre funziona

Avatar
Mr. L. (Normal User)
Newbie


Messaggi: 4
Iscritto: 19/02/2011

Segnala al moderatore
Postato alle 15:16
Giovedì, 31/03/2011
Salve a tutti. Ho riscontrato un paio di problemi. Il primo è legato al tempo di esecuzione. Affermo con abbastanza sicurezza che questo sia legato al pc, se il mio computer è più potente esegue il codice più velocemente rispetto a quello della scuola che è meno potente. Io programmo con Dev C++ con allegro.h. Comunque vorrei sapere se conoscete una funzione che legge al millesimo di secondo il tempo, in modo da poter creare dei temporizzatori.
Il mio secondo problema è legato alla grandezza della finestra grafica. Se creo una finestra, sempre con allegro.h, di 249px è tutto ok, se la creo di 250px mi dà un errore. Dice "permesso negato". Ho provato a compilare su un altro computer e poi a eseguire il programma e in quel caso si blocca il programma e windows ricerca il problema, senza trovarlo.
Se sapete come aiutarmi vi prego di aiutarmi. Grazie in anticipo!  




Ok prima di tutto ti ringrazio HeDo perchè il link che mi hai postato per l'utilizzo di GetTickCount è stato utilisssssssimo, è proprio quello che cercavo. Rispondendo alla tua affermazione ke dev nn va tanto bene per c++, sono d'accordo,ma a scuola ci hanno insegnato quello (a settembre) e un po' perchè mi ci trovo bene, un po' perchè tanto tra poco passo a imparare java, non cambio.
In riferimento all'altro problema metto qui sotto il codice
Codice sorgente - presumibilmente C++

  1. #include "allegro.h"
  2. BITMAP *buf;
  3.  
  4. void doppiobuffering()
  5. {
  6.    vsync();
  7.    blit(buf, screen, 0, 0, 0, 0, 700, 640);
  8.    clear(buf);
  9. }
  10.  
  11. int main()
  12. {
  13.  
  14.    allegro_init();
  15.    install_keyboard();
  16.    set_gfx_mode(GFX_AUTODETECT_WINDOWED, 700, 640, 0, 0);
  17.    buf = create_bitmap(700, 640);
  18.    clear(buf);
  19.    while (!key[KEY_ESC])
  20.    {
  21.          doppiobuffering();
  22.    }
  23.    destroy_bitmap(buf);
  24. }
  25. END_OF_MAIN ();



Ora questo funziona sul mio pc, ma ho provato col computer di mio cugino e su altri e non funziona se la finestra supera una certa grandezza

Ultima modifica effettuata da Mr. L. il 31/03/2011 alle 16:27
PM
Avatar
HeDo (Founder Member)
Guru^2


Messaggi: 2765
Iscritto: 21/09/2007

Up
3
Down
V
Segnala al moderatore
Postato alle 15:33
Giovedì, 31/03/2011

per temporizzare sotto windows puoi utilizzare GetTickCount (http://msdn.microsoft.com/en-us/library/ms724408(v=vs.85). ..., per gli altri problemi è necessario vedere il codice.

inoltre come viene detto qui (http://www.pierotofy.it/pages/extras/forum/2/79939-compila ... Dev-Cpp non è una grande scelta per programmare sotto windows :)

PM