Szelma Posted May 6, 2011 Report Share Posted May 6, 2011 Witam forumowiczów, Jestem początkującym więc proszę o wyrozumiałość. Problem: Tworzę mini grę w SDL 1.3 dla Windows i natknąłem się na problem związany z wyświetlaniem grafiki dla różnych wielkości/typów ekranu. Do tej pory tworzyłem grafikę na ekranie typu kwadrat (4:3), po uruchomieniu gry na ekranie typu wide (16:9 lub 16:10) mam efekt źle dobranych proporcji. Czyli ogólnie mówiąc obraz jest zazwyczaj nienaturalnie rozciągnięty. Problem jest widoczny w momencie wybrania opcji full screen. Moje pytania: 1. Jakie istnieją rozwiązania powyższego problemu ? Zaznaczę iż chciałbym uniknąć przycinania grafiki względem ekranu. 2. Czy istnieje możliwość wykrycia typu ekranu ? Np. czy użytkownik używa 4:3, 16:9. Czy muszę na sztywno wstawić opcję przełącz na dany typ w menu opcji ? Dziękuję i pozdrawiam. Link to comment Share on other sites More sharing options...
Adam27 Posted May 6, 2011 Report Share Posted May 6, 2011 Jeżeli gra ma być na Windows, to możesz użyć takiej sprytnej funkcji z WinAPI do pobrania rozmiarów ekranu: KODint width = GetSystemMetrics(SM_CXMAXIMIZED), height = GetSystemMetrics(SM_CYMAXIMIZED); Stąd już niedaleko do wyznaczenia proporcji ekranu i dostosowania do nich swojej gry. Etharnion - 2D RPG Szukam grafika chętnego do współpracy przy projekcie. Link to comment Share on other sites More sharing options...
Stelma Posted May 6, 2011 Report Share Posted May 6, 2011 Wiem że powinienem pw ale mi się nie chce Mogę prosić autora tematu o zmiane nick'a ;> i kwadrat nie może mieć proporcji 4:3, tam zawsze jest 1:1. Jakby co to każdy kwadrat jest prostokątem ale nie każdy prostokąt kwadratem. Link to comment Share on other sites More sharing options...
Szelma Posted May 6, 2011 Author Report Share Posted May 6, 2011 Wiem że powinienem pw ale mi się nie chce Mogę prosić autora tematu o zmiane nick'a ;> i kwadrat nie może mieć proporcji 4:3, tam zawsze jest 1:1. Jakby co to każdy kwadrat jest prostokątem ale nie każdy prostokąt kwadratem. Masz rację. Pisząc kwadrat miałem na myśli "standardowy" niegdyś monitor -> faktycznie jest prostokątem Pytanie pozostaje aktualne. Link to comment Share on other sites More sharing options...
Szelma Posted May 6, 2011 Author Report Share Posted May 6, 2011 Jeżeli gra ma być na Windows, to możesz użyć takiej sprytnej funkcji z WinAPI do pobrania rozmiarów ekranu: KOD int width = GetSystemMetrics(SM_CXMAXIMIZED), height = GetSystemMetrics(SM_CYMAXIMIZED); Stąd już niedaleko do wyznaczenia proporcji ekranu i dostosowania do nich swojej gry. Dziękuję, to wydaje się być odpowiedzią na moje drugie pytanie Link to comment Share on other sites More sharing options...
xevil21 Posted May 7, 2011 Report Share Posted May 7, 2011 Dziękuję, to wydaje się być odpowiedzią na moje drugie pytanie Witam. Ten problem jest bardziej złożony, ponieważ każdy może w dowolnym momencie przełączyć monitor 16:9 w tryb 4:3... Itp... Pozdrawiam! Link to comment Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.