„AGDE is freaking awesome!” (tworzenie aplikacji na Androida za pomocą Unreal Engine)

Unreal Engine to opracowany przez Epic Games silnik do tworzenia gier, który zapewnia twórcom z różnych branż swobodę i kontrolę nad tworzeniem zaawansowanych treści rozrywkowych, atrakcyjnych wizualizacji i wciągających światów wirtualnych. Niektóre popularne gry na Androida są tworzone za pomocą Unreal Engine.

Zrzut ekranu pokazujący działanie gry Suntemple na Unreal Engine na Pixelu 4 Rysunek 1. Zrzut ekranu pokazujący działanie gry Suntemple na Unreal Engine na Pixelu 4

Epic i inni deweloperzy gier używają Android Studio do debugowania języków programowania C++, Kotlin i Java, ale wielu deweloperów ma procesy programistyczne na inne platformy oparte na Visual Studio. Zespół Unreal Engine Mobile zajmuje się tworzeniem funkcji i optymalizacją Unreal Engine na platformy mobilne. Zespół używał pakietu Android Game Development Extension (AGDE) zarówno do tworzenia gier na Unreal Engine na Androida, jak i do debugowania oraz optymalizacji Fortnite na Androida.

jak z nich korzystają.

Przed przyjęciem wtyczki Android Game Development Extension (AGDE) debugowanie i kompilowanie na potrzeby Androida wymagało otwarcia wygenerowanego projektu Gradle w Android Studio, a potem przełączania się między 2 środowiskami programowania na potrzeby kompilowania lub debugowania, z których każde ma własny zestaw przycisków. Było to dla dewelopera nieprzyjemne i czasochłonne, zwłaszcza w przypadku iteracyjnego rozwoju. Dzięki AGDE cały cykl pracy nad grami na Androida odbywa się w Visual Studio. Deweloperzy, którzy przestawili się na nowy proces programowania, przekonają się, że jest on znacznie szybszy i wygodniejszy w przypadku Unreal Engine.

Po zainstalowaniu AGDE za każdym razem, gdy generujesz pliki projektu Visual Studio na potrzeby Unreal Engine (UE) 4.26.2 lub nowszej wersji, Unreal Build Tool będzie również generować cele kompilacji Androida na potrzeby AGDE. Od tego momentu proces tworzenia i debugowania w Unreal Engine w Visual Studio jest taki sam na Androida, PC i inne platformy. Naciśnięcie klawisza F5 w Visual Studio uruchamia AGDE, który uruchamia kompilację C++ na Androida i generuje lub aktualizuje pakiet aplikacji na Androida (APK). Następnie AGDE rozpoczyna na urządzeniu sesję debugowania w C++, umożliwiając korzystanie ze znanych funkcji debugowania w Visual Studio, takich jak punkty przerwania, punkty obserwacji, a także przeglądanie deasemblacji i rejestrów. Kompilacje Androida z obsługą AGDE korzystają też z integracji Incredibuild w Unreal Build Tool, aby udostępniać kompilacje na wielu komputerach w przypadku kodu C++ na Androida.

Zrzut ekranu z AGDE i Unreal Engine Rysunek 2. Zrzut ekranu z AGDE i Unreal Engine

Wyniki

„Mamy środowisko programistyczne oparte na Visual Studio, więc bardzo się cieszymy, że możemy włączyć AGDE do naszych procesów. Zdecydowanie uważamy, że korzystanie z AGDE jest sukcesem, ponieważ inżynierowie z zespołów Fortnite i Unreal Engine Mobile używają AGDE codziennie w swojej pracy” – mówi Jack Porter, lider zespołu Unreal Engine Mobile. „Dzięki AGDE zespół Epic mógł szybciej i wygodniej debugować problemy, a pozostanie w Visual Studio znacznie usprawniło jego dotychczasowy proces. Korzystanie z AGDE zdecydowanie zaoszczędziło nam dużo czasu i pomagało w wykrywaniu błędów, które w innym przypadku mogłyby pozostać niezauważone”.

„Będziemy nadal używać AGDE w firmie Epic i planujemy zalecać AGDE jako obsługiwany proces dla wszystkich licencjobiorców Unreal Engine na Androida” – powiedział Porter. Dmytro Vovk, programista z zespołu Unreal Engine Mobile, używa narzędzia AGDE w ramach codziennej pracy nad Unreal Engine i Fortnite Mobile. Twierdzi, że „to naprawdę niesamowite narzędzie”. Wreszcie mogę debugować asembler i obserwować rejestry aktualizowane w miarę przechodzenia przez kod. Debugowanie Androida w wygodnym Visual Studio znacznie ułatwia mi codzienną pracę i utrzymuje mnie w ciągłości procesu programowania.

Rozpocznij

Dowiedz się, jak rozszerzenie Android Game Development Extension umożliwia tworzenie gier na Androida w języku C/C++ w Visual Studio.