Rozważ faktyczne wygenerowanie pomniejszonych wersji w czasie programowania i włączenie ich bezpośrednio do gry jako zasobu. Zrób to za pomocą Photoshopa lub dowolnego narzędzia, które znajdziesz, tworząc to, co lubisz. Następnie pozwól grze dynamicznie wybrać odpowiedni zestaw artystyczny odpowiedni do bieżącej rozdzielczości.
Oto kilka powodów, dla których możesz to zrobić ...
Oszczędza przetwarzanie pracy
Jeśli programowo przeprowadzasz przeskalowanie w czasie wykonywania, oprogramowanie prawdopodobnie utworzy i buforuje kompozycję. Dlaczego więc nie po prostu zawrzeć zmniejszonych wersji w pakiecie zasobów sztuki? Podejrzewam, że jeśli zwiększy to pobieranie, niż byś chciał, może to mieć znaczenie, ale zaoszczędzisz na obciążeniu procesora, zapisie na dysku itp.
Większa kontrola artystyczna
Jeśli przeskalujesz sztukę samodzielnie, będziesz mieć większą kontrolę nad ostatecznym wyglądem. To może nie mieć znaczenia, jeśli zmniejszysz niewielką ilość, ale gdy dojdziesz do znacznie niższych rozdzielczości, możesz chcieć mieć lepszą kontrolę artystyczną nad ostatecznym wyglądem. Na przykład, jeśli trzeba podkreślić oczy konkretnej postaci, możesz narysować wersje o niższej rozdzielczości z oczami nieskalowanymi tak mocno, aby zachować efekt - coś, czego nie może zrobić skalowanie programowe.
Dynamiczne skalowanie nie jest idealne
Możesz podejmować charakterystyczne decyzje artystyczne, które nie działają przy dynamicznym skalowaniu. Załóżmy na przykład, że chcesz umieścić obramowanie, kontur lub podświetlenie wokół obrazu. W przypadku wyższej rozdzielczości może to wyglądać dobrze, ale zmniejszona wersja może być mętna lub całkowicie utracić efekt. Ale jeśli zrobisz to ręcznie, możesz osobiście zastosować efekt do każdego rozmiaru i zagwarantować, że zachowasz wpływ.
inne przemyślenia
Można również zastosować podejście hybrydowe, z zestawem zasobów specyficznych dla rozdzielczości, które są używane tam, gdzie zostały znalezione, oraz z zestawem ogólnym, który jest dynamicznie skalowany, jeśli nie zostanie znaleziona wersja specyficzna dla rozdzielczości. To trochę tak, jak działa platforma Android. Kilka informacji na ten temat na stronie http://developer.android.com/guide/practices/screens_support.html