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

[Allegro] rozdzielczość - pytnie

Ostatnio zmodyfikowano 2011-04-18 13:25
Autor Wiadomość
yyy...mleko
Temat założony przez niniejszego użytkownika
[Allegro] rozdzielczość - pytnie
» 2011-04-17 20:12:07
Mam pytanie, czy w allegro istnieje np. funkcja, która zwraca maksymalną rozdzielczość ekranu. Chce zrobić w opcjach mojej gry żeby gracz nie mógł wybrać rozdzielczości większej niż może (że tak się wyrażę) uciągnąć.
P-31015
malan
» 2011-04-17 20:24:56
C/C++
SCREEN_W
SCREEN_H
?
P-31017
yyy...mleko
Temat założony przez niniejszego użytkownika
» 2011-04-17 20:43:23
HEH. Nie jestem taki głupi (chyba). SCREEN_W i SCREEN_H zwracają szerokość i wysokość tego jakby okienka allegro  (nie wiem jak to powiedzieć) np. wpisze kodzik

set_gfx_mode(GFX_AUTODETECT, 1024, 768, 0, 0);

to SCREEN_W i SCREEN_H dadzą 1024 i 768,

a ja chce dostać maksymalną rozdzielczość ekranu np. ja u siebie na kompie mam rozdzielczość ekranu 1680x1050 i chce na nim uruchomić ten program właśnie w tej rozdzielczości, a dajmy na przykład na kompie Bronka Komorowskiego xD rozdzielczość ekranu ma  800x600 i chce TEN SAM program uruchomić w rozdzielczości 800x600
Wyraziłem się jasno ? :)
P-31022
malan
» 2011-04-17 20:55:50
Szczerze Ci powiem, że nie pamiętałem dokładnie, czy to szerokość okna, czy ekranu ;p. Sory ;p
Co do Twojego problemu, to nie wystarczy
GFX_AUTODETECT_FULLSCREEN
, tzn:
set_gfx_mode( GFX_AUTODETECT_FULLSCREEN, 1024, 768, 0, 0 );
?
P-31023
yyy...mleko
Temat założony przez niniejszego użytkownika
» 2011-04-17 21:06:33
GFX_AUTODETECT_FULLSCREEN rozciąga to po prostu na cały ekran, a rozciągnąć 800x600 na 1680x1050 to mała literka staje się wielka na pól ekranu :)

Załóżmy, że napisze taki kodzik:

int szerokosc=screen_w_max();
int wysokosc=screen_h_max();

set_gfx_mode( GFX_AUTODETECT_FULLSCREEN, szerokosc, wysokosc, 0, 0 );
//na moim kompie da rozdzielczosc 1680x1050, a na kompie Bronka 800x600.

I chodzi mi właśnie o takie funkcje: screen_w_max(), screen_h_max() czy jest coś takiego.

PS. Jak to robicie, że macie te ramki C/C++ i te mniejsze w tekście ? :)
P-31025
McAffey
» 2011-04-17 21:18:51
Te jak to nazwałeś ramki c++ to po prostu otagowujesz
[cpp]...[/cpp]
. Co do twojego problemu, to z tego co pamiętam jest funkcja w winapi która Ci zwróci to o co prosisz, ale wtedy byś musiał pisać pod winalleg. Ale to raczej nie jest problem, wystarczy, że będziesz miał projekt allegro i biblioteki :

C/C++
#include <allegro.h>
#include <winalleg.h>
#include <windows.h>
 
i już możesz korzystać z funkcji winapi w oknie allegro ;)

edit: Nie chce mi się wgłębiać w opis, sprawdź czy to będzie pomocne - GetSystemMetrics (msdn) ;)

edit2: Zmieniłem link na (chyba) bardziej odpowiednią funkcję.
P-31027
yyy...mleko
Temat założony przez niniejszego użytkownika
» 2011-04-17 21:39:54
Ok McAffey tylko mógłbyś zdradzić tą funkcje ? :)

PS. Próba tej ramki :)
string proba = "proba";
P-31032
McAffey
» 2011-04-17 21:43:09
Nie używałem tej funkcji którą podałem, więc nie wiem czy da się nią to osiągnąć (tak pierwsze co znalazłem zapodałem, nie chce mi się wgłębiać w jej specyfikę). Kiedyś gdzieś czytałem jaką funkcją można to zrobić ale już nie pamiętam jaka to była funkcja ani gdzie o tym czytałem.
P-31034
« 1 » 2 3 4
  Strona 1 z 4 Następna strona