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

[SFML] Problem z użyciem VIew.

Ostatnio zmodyfikowano 2017-02-18 22:07
Autor Wiadomość
piter10p
Temat założony przez niniejszego użytkownika
[SFML] Problem z użyciem VIew.
» 2017-02-18 19:54:20
Napotkałem następujący, dosyć nielogiczny wg. mnie problem.

Otóż posiadam następujący kod:


Deklaracja:

view = new View();
view->setSize(Vector2f(1080.0f*settings->resolution.x / settings->resolution.y, 1080.0f));


Kawałek kodu renderujący scenę:

view->setCenter(Vector2f(1920.0f / 2.0f, 1080.0f / 2.0f));
window->setView(*view);
window->display();


Nigdzie indziej w kodzie nie występuje wykorzystanie tych obiektów.

Zaznaczam że napis "ASD" znajduje się w dolnym, lewym rogu przestrzeni w rozdziałce 1920x1080.

Wszystkie napisy na scenie są środkowane wg. Przestrzeni 1920x1080.

Wszystko pracuje dobrze gdy rozdzielczość okna to 1920x1080 (W tej rozdzielczości jest projektowany świat) i np. 1920x786:

(1920x786)
https://zapodaj.net/1cbf9f506ca03.png.html

W przypadku rozdziałek 1280x786 albo 800x600 czy 800x450(Ten sam współczynnik wysokość/szerokość co w przypadku 1920x1080) okno wygląda tak:

(1280x786)
https://zapodaj.net/c43a211d00c4b.png.html

(800x450)
https://zapodaj.net/f378b6d792adf.png.html


Nie wiem skąd taki błąd. Widać też jak dochodzi do dziwnego skalowania widoku w oknie (skalowania w osi x do którego dochodzić zgodnie z kodem nie powinno).
P-157975
pekfos
» 2017-02-18 21:01:50
C/C++
window->setView( * view );
window->display();
Niczego nie rysujesz na tym widoku.
P-157976
piter10p
Temat założony przez niniejszego użytkownika
» 2017-02-18 22:07:35
Dzięki wielkie, dzięki tobie złapałem głupi błąd. Otóż napisy srodkowalem nie wg. Rozdzielczości 1920x1080 a w rozdzielczości okna. Stąd taki efekt kodu.

Temat do zamknięcia :)
P-157978
« 1 »
  Strona 1 z 1