2010-11-12 16 views
6

Chciałbym stworzyć żywą tapetę. Po kilku badań, doszedłem do wniosku, że istnieją dwie opcje, aby utworzyć jeden:Animowana tapeta z silnikiem gry czy nie?

Nigdy nie opracowałem tapety na żywo. Które rozwiązanie jest najprostsze i najszybsze?

Odpowiedz

4

Możesz obsłużyć rysunek bezpośrednio, tak jak w przykładzie Cube w SDK. Lub możesz użyć OpenGl ES, np. przez AndEngine, LibGDX, GLWallpaperService lub RenderScript. Więcej pracy, ale lepsza wydajność.

Jeśli twoja tapeta jest dość prosta, sugerowałabym wykonanie rysunku samemu. Tak właśnie robi większość ludzi. Jeśli potrzebujesz "fizyki" (np. Systemu cząstek), spójrz na AndEngine lub LibGDX. Jeśli potrzebujesz 3D, spójrz na GLWallpaperService. Oprócz przykładu Cube warto przyjrzeć się kodowi źródłowemu systemu Android, aby sprawdzić, w jaki sposób tapety giełdowe (trawa, galaktyka itp.) Korzystają z RenderScript. Ten link może Cię tam zabrać, ale rzeczy wciąż się zmieniają: http://grepcode.com/file/repository.grepcode.com/java/ext/com.google.android/android-apps/4.1.1_r1/com/android/wallpaper/ (następnie przewiń w dół do tapet)

Powodzenia. George.

+0

uszkodzone łącze. popraw link plz. – ArunaFromLK

+0

@ArunaLakmal Zaktualizowany link. Mam nadzieję że to pomoże. G –

0

Na pewno łatwiej jest rozwijać z silnikiem gry. Silnik Unity jest całkiem niezły, dzięki edytorze graficznemu, dobremu importowi zasobów i wielu zasobom na Asset Store, które pomogłyby w rozwoju Twojej firmy. Są inne silniki do gier, których można użyć do tapet na żywo, ale byłoby to o wiele bardziej żmudne zadanie.

Negatywną stroną używania Unity jest to, że ti może być nieco ciężka - oczekuje się, że będzie miała minimalny pakiet APK o wielkości około 9 MB. Nie ma to jednak znaczenia, jeśli masz na tapecie na żywo dużą ilość zasobów.

I niedawno wydany uLiveWallpaper - aktywo jedność, która umożliwia tworzenie żywych tapety dla Androida za pomocą Jedności 5. Jest dobrze sprawdzone i niezawodne, tworzy projekty dla Androida Studio, wraz z kodem zastępczego, aby uzyskać ty zacząłeś.

Jedność prawdopodobnie nie jest najlepszą opcją, jeśli chcesz zrobić coś naprawdę prostego, ale zdecydowanie najlepszą opcję, jeśli chcesz osiągnąć wysoką jakość wizualną.

Wyjazd uLiveWallpaper wątek forum tutaj: http://forum.unity3d.com/threads/ulivewallpaper-develop-android-live-wallpapers-with-unity-5.375255/

Albo po prostu szukać aż do "uLiveWallpaper".

+0

Używam Unity 5 do opracowania tapety na żywo dla Androida i zużywa 120 MB pamięci RAM w telefonie Samsung Galaxy S5. Scena jest bardzo prosta do celów testowych, ale nie jest możliwa, aby użyć 120 MB dla prostej sceny. Jeśli znasz sposób na zmniejszenie tego kosztu pamięci, przejdę przez twoją wtyczkę. – ariel

+0

@ariel Nie można udzielić żadnej porady, ponieważ nie mam pojęcia, jaka scena pan ma. 120 MB nie brzmi dobrze.Moja demonstracyjna tapeta na żywo zużywa tylko 40 MB pamięci RAM. Jak mierzysz zużycie pamięci RAM? – ZimM

+0

To dziwne, kiedy zrzucam pamięć po GC w czasie zaćmienia, widzę, że moja tapeta na żywo zużywa 15 MB, a stertą jest 30 MB, ale kiedy widzę statystyki w opcjach programisty telefonu lub pod menedżerem aplikacji, widzę najpierw, że ramka używana wynosi 120 MB, a dzień później 90 MB ... masz jakiś pomysł? Ponieważ jest zły dla oczu użytkownika końcowego ... zużycie baterii nie zmienia się zbytnio ... – ariel

Powiązane problemy