Czy ktoś ma pojęcie, jak skalowanie jest przeprowadzane u wściekłych ptaków? Chcę się upewnić, że moje obrazy / tło zawsze są skalowane, aby pasowały do rozmiaru ekranu, i ta gra wydaje się mieć podobny efekt. Bawiłem się ustawieniami manifestu na ustawianiu preferowanych rozmiarów ekranu, ale muszę jeszcze zduplikować dokładnie to, czego chcę.
Czy są jakieś skuteczne sposoby, aby upewnić się, że twoja gra zawsze wyświetla przestrzeń XY, zmniejszając ją w razie potrzeby w zależności od rozmiaru piksela?
Chcę mieć pewność, że wszystko jest zawsze wyświetlane na ekranie dla wszystkich urządzeń i nie odcinać rzeczy na małych urządzeniach ani dodawać czarnej przestrzeni na dużych urządzeniach.
Obliczam przestrzeń do rysowania, uzyskując rozmiar widoku i używając go jako granic dla moich duszków, ale nie działa to zbyt dobrze.
źródło
Użyj grafiki wektorowej . Wektory nie są zdefiniowane przez punkty w przestrzeni (tj. Pojedyncze piksele), są zdefiniowane przez relacje matematyczne i łatwo dostosowują się do mniejszych lub większych widoków.
Nie można na przykład wyświetlić dokładnie tego samego obrazu na ekranie o proporcjach 4: 3 i ekranie o proporcjach 16: 9 bez kompresji lub rozciągania obrazu. Tak więc będziesz musiał odciąć rzeczy na urządzeniach 4: 3, które byłyby wyświetlane na panoramicznych urządzeniach 16: 9. Nie jest to zła rzecz w grze takiej jak Angry Birds, w której użytkownik może przesuwać, aby zobaczyć, czego brakuje.
źródło
Na platformie Android są:
Dlatego projektując grę w 2D, musisz o tym pomyśleć. Masz dwa rozwiązania techniczne:
Używam tej metody do Moblox i poziomów lakieru w tych polach. Aby uzyskać najlepszy rendering na większości telefonów, moje ramki ograniczające mają współczynnik 1,66. Przy telefonach o współczynniku 1,33 lub 1,77 nie ma widocznych elementów tła, ale mój poziom zaprojektowałem z wyśrodkowanymi działaniami. Więc graczy to nie obchodzi.
źródło