eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.comp.programmingcoś lajtowego - konsolaRe: coś lajtowego - konsola
  • Data: 2012-10-19 11:55:46
    Temat: Re: coś lajtowego - konsola
    Od: kenobi <p...@g...com> szukaj wiadomości tego autora
    [ pokaż wszystkie nagłówki ]

    W dniu piątek, 19 października 2012 11:44:00 UTC+2 użytkownik Baranosiu napisał:
    > Dnia 19.10.2012 kenobi <p...@g...com> napisał/a:
    >
    > > W dniu piątek, 19 października 2012 10:48:01 UTC+2 użytkownik Sławomir Szczyrba
    napisał:
    >
    > >> kenobi donosi :
    >
    > >>
    >
    > >> >> > 320x200 512x384 640x480 - ale nie wszystkie
    >
    > >>
    >
    > >> > mozesz powiedziec czy udaje sie odpalic w tych rozdzialkach ?
    >
    > >>
    >
    > >> >
    >
    > >>
    >
    > >> Hm, pod WINE zamroziło mi kartę grafiki (intel) na amen.
    >
    > >>
    >
    > >> Musiałem odpiąć kompa od prądu.
    >
    > >>
    >
    > >> Boję się pytać, JAK ty te tryby graficzne ustawiasz...
    >
    > >>
    >
    > >>
    >
    > > normalnie to jest zwykle wywolanie tak ze
    >
    > > nie ja raczej odpowiadam za tego freeze
    >
    > >
    >
    > > void changeResolution(int width, int height, int bpp, int rate=0)
    >
    > > {
    >
    > > DEVMODE fullscreenSettings;
    >
    > >
    >
    > > EnumDisplaySettings(NULL, 0, &fullscreenSettings);
    >
    > >
    >
    > > fullscreenSettings.dmPelsWidth = width;
    >
    > > fullscreenSettings.dmPelsHeight = height;
    >
    > > fullscreenSettings.dmBitsPerPel = bpp;
    >
    > > fullscreenSettings.dmDisplayFrequency = rate;
    >
    > > fullscreenSettings.dmFields = DM_PELSWIDTH |
    >
    > > DM_PELSHEIGHT |
    >
    > > DM_BITSPERPEL
    >
    > > | DM_DISPLAYFREQUENCY
    >
    > > ;
    >
    > >
    >
    > > bool isChangeSuccessful = ChangeDisplaySettings(&fullscreenSettings,
    CDS_FULLSCREEN) == DISP_CHANGE_SUCCESSFUL;
    >
    > >
    >
    > >
    >
    > > }
    >
    > >
    >
    > > i wywolania
    >
    > >
    >
    > > if(Key=='1') changeResolution(320, 200, 32);
    >
    > > if(Key=='2') changeResolution(512, 384, 32);
    >
    > > if(Key=='3') changeResolution(640, 480, 32);
    >
    > > if(Key=='4') changeResolution(800, 600, 32);
    >
    > > if(Key=='5') changeResolution(1024, 768, 32);
    >
    > >
    >
    > > u mnie pod xp bardzo ladnie dziala ale ktos
    >
    > > chyba z win 7 mowil mi ze u niego nie ma reakcji na 1 i 2 dziala tylko 3 (i
    pewnie 4 5)
    >
    >
    >
    > A to z tego co pamiętam, to działa mniej więcej tak, że jak wywołasz
    >
    > EnumDisplaySettings(NULL,0,&wskaznik); to tylko inicjujesz utworzenie
    >
    > "tablicy" wszystkich dostępnych trybów, a potem się jedzie pętlą i
    >
    > wywołuje EnumDisplaySettings tylko zamiast 0 jako drugiego argumentu
    >
    > wstawia się kolejno 1,2,3... itd. aż do momentu, kiedy ta funkcja
    >
    > zwróci FALSE (zero), oczywiście po każdym wywołaniu możesz sobie
    >
    > sprawdzić jakie dane funkcja Ci zwróciła w strukturze 'wskaznik' :D

    no jeszcze sie tym nie interesowalem za
    duzo

    dorzucilem dla testow program console2 do
    tego samego zipa mozna wydawac polecania
    typu

    fullscreen 320 200 32

    i sprawdzac czy dziala, zakomentowalem tez
    linijeke ustawiajaca rate na zero bo to chyba
    wymuszalo najnizsze refreshrate i bez tego chyba
    lepiej dziala - jakby cos to escape wychodzi
    z progsa i rozdzialaka wraca do normalnej

Podziel się

Poleć ten post znajomemu poleć

Wydrukuj ten post drukuj


Następne wpisy z tego wątku

Najnowsze wątki z tej grupy


Najnowsze wątki

Szukaj w grupach

Eksperci egospodarka.pl

1 1 1

Wpisz nazwę miasta, dla którego chcesz znaleźć jednostkę ZUS.

Wzory dokumentów

Bezpłatne wzory dokumentów i formularzy.
Wyszukaj i pobierz za darmo: