Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

[Allegro]Error

Ostatnio zmodyfikowano 2009-08-25 17:53
Autor Wiadomość
Diego
Temat założony przez niniejszego użytkownika
[Allegro]Error
» 2009-08-20 13:00:55
Problem przedstawia sie tak: gra dziala na moim komputerze i wszystko jest wporzadku, natomiast gdy odpalalem ja u kumpli tylko mignol czarny ekran, gra wylanczala sie samoczynnie i wyskakiwala tabelka z napisem "Overlays not supported". Najlepsze jest to, ze u jednego kolegi kiedys ladnie dzialalo menu (bylo osobno kompilowane w innym pliku) natomisat gdy dokleilem kod z trescia gry, ze tak to okresle nagle przestaly dzialac funkcje (ku scislosci funkcje odpowiedzialne za wyswietlanie tak jakby nie widzialy pliku z grafika).
Mysle ze kopiujac kod moglem cos pominac w funkcji void init() co powoduje jakies niescislosci ale nie jestem tego pewien. Gdyby ktos wiedzial o co chodzi to prosze o wskazowki.
P-9648
malan
» 2009-08-20 17:25:30
Wklej może część kodu, która odpowiada za uruchomienie gry (ładowanie bitmap itp.)... to może da się rozwiązać jakoś ten problem ;).
P-9655
DejaVu
» 2009-08-20 17:58:11
Problem leży w 35 linii kodu ;p (trafiłem? :) )
P-9658
Diego
Temat założony przez niniejszego użytkownika
» 2009-08-20 20:59:15
C/C++
void init()
{
    int depth;
    allegro_init();
    depth = desktop_color_depth();
    if( depth == 0 ) depth = 32;
   
    set_color_depth( depth );
    set_gfx_mode( GFX_AUTODETECT_FULLSCREEN, 1280, 960, 0, 0 );
    clear_to_color( screen, 0 );
   
    //res = set_gfx_mode(GFX_AUTODETECT_WINDOWED, 1024, 768, 0, 0);
    //if (res != 0) { allegro_message(allegro_error); exit(-1); }
   
    install_timer();
    install_keyboard();
    install_mouse();
    install_sound( DIGI_AUTODETECT, MIDI_AUTODETECT, "" );
    unscare_mouse();
    install_int_ex( increment_speed, BPS_TO_TIMER( 100 ) );
    set_volume( 255, 255 );
}

Tak wyglada ta funkcja, oczywiscie wywolana jest na samym poczatku w mainie. Mysle ze problem moga stanowic te dwie linijki objete komentarzem (zbyt duza rozdzielczosc).
Przedewszystkim sadze tak poniewaz wlasnie tam znajduja sie instrukcje odpowiedzialne za poinformowanie o bledzie i zamknieciu programu, a po drugie chyba w okienku za duza rozdzielczosc ustawilem kiedys bylo 800;600 i dzialalo wtedy :)
Dopiero teraz kapnolem sie ze to okienko przeciez niepotrzebne skoro fullscren jest ;p
P-9666
malan
» 2009-08-20 21:44:34
Faktycznie- te 2 linijki w komentarzu są niepotrzebne... Wracając do kodu to ja tu nic nie widzę... (no, ale to ja ;p), zobaczymy co inni powiedzą...
przestaly dzialac funkcje (ku scislosci funkcje odpowiedzialne za wyswietlanie tak jakby nie widzialy pliku z grafika).
Hmm może źle podałeś lokalizację ? 
P-9668
Diego
Temat założony przez niniejszego użytkownika
» 2009-08-20 21:56:48
Wydaje mi sie ze problem lezy wlasnie w tym (mam nadzieje) ale jeszcze u nikogo nie sprawdzalem.
A co do funkcji to bylo tak ze jesli cialo wkleilem w miejsce wywolania to wszystko bylo wporzadku, jesli funkcja miala cos wyswietlic to wywalalo program,
jesli linijke 'wyswietlajaca' wziolem w komentarz to pozostale instrukcje dzialaly tak jak mialy dzialac. (zaznaczam ze wskazniki na bitmapy sa definiowane globalnie). Jeszcze takie male spostrzezenie jesli urzylem funkcji
textprintf_ex(bufor,font,50,920,makecol(255,220,0),-1,"helm: %d",helmet);
i probowalem wyswietlic nia cokolwiek rowniez wywalalo program.
P-9669
malan
» 2009-08-20 22:30:41
Z tego co napisałeś można wnioskować, że prawdopodobnie źle ładujesz bitmapy, ładujesz obrazki w złym formacie, ładujesz obrazki, które przekraczają rozdzielczość ekranu (są po prostu za duże), podajesz złą lokalizację... Najlepiej wklej ten kod, w którym ładujesz te bitmapy.
P-9670
pixelmaster
» 2009-08-20 23:11:53
set_gfx_mode( GFX_AUTODETECT_FULLSCREEN, 1280, 960, 0, 0 );
tu chyba jest błąd, Pan Piotr odkrył jakiś czas temu błąd w allegro polegające na tym że rozdzielczość musi mieć jakąś zależność chyba.
Spróbuj mu podać 1280 x 1024.
P-9671
« 1 » 2
  Strona 1 z 2 Następna strona