Don’t Touch The Green

Jak najlepiej pokazać możliwości Qt osobom niezwiązanym z biznesem, a także tym szykującym rozrywki? Przyjaznym użytkownikowi rozwiązaniem jest stworzenie gry wieloplatformowej. Postanowiliśmy więc stworzyć własną, wciągającą grę - Don't Touch The Green

Technologie

Jak najlepiej pokazać możliwości Qt osobom niezwiązanym z biznesem, a także tym szykującym rozrywki? Przyjaznym użytkownikowi rozwiązaniem jest stworzenie gry wieloplatformowej. Postanowiliśmy więc stworzyć własną, wciągającą grę – Don’t Touch The Green

Colorful beginnings

Jednak stworzenie dobrej gry nie jest takie proste. Angażująca mechanika,wymagająca rozgrywka i interesujący koncept to tylko kilka z wielu elementów,nad którymi trzeba pomyśleć projektując taką aplikację.Najważniejsze jest jednak to, aby stworzona gra była wyjątkowa.

Na czym polega wyjątkowość DTTG? Sekret tkwi w oszukiwaniu percepcji gracza. Myląca nazwa poszczególnych elementów, która nie pasuje do ich prawdziwego koloru, to tylko jeden z wielu nietypowych sposobów na zdezorientowanie osoby grającej.

Dlaczego taki dziwny tytuł gry? Jej głównym „czarnym charakterem” musiał być kolor, który kojarzy się z pozytywnymi cechami – zieleń była więc oczywistym wyborem. Te dwa główne czynniki tworzyły świetną kombinację dla gry zręcznościowej.

 

Korzystaj z korzyści

Nie zapominajmy, że DTTG to gra demonstrująca wybraną technologię. Znajdziemy w niej więc sporo rzeczy, które chcemy za jej pomocą zaprezentować. Zacznijmy od jej serca – technologii Qt.

Dlaczego programiści uwielbiają Qt? Po pierwsze jest to stale rozwijany i utrzymywany framework. Oznacza to, że nowe funkcje i usprawnienia są regularnie dostarczane. Do tego należy również dodać doskonale dopracowaną dokumentację, która zawiera odpowiedzi na niemal każde pytanie programisty.W frameworku tym znajdziemy także język deklaratywny Qml (skrót od „Qt Markup Language”). Główną zaletą tego języka jest jego wysoka wydajność – został on stworzony w C++, dzięki czemu działa natywnie na urządzeniach docelowych.Format kodu stworzonego w Qml przypomina JSON, przez co jest on również prosty w odczycie i utrzymaniu. Naszym zdaniem praca w nim to czysta przyjemność, a jak wszyscy wiemy zadowolony deweloper to gwarancja udanej aplikacji.

Pierwszą, z wielu cech Qt, na której powinniśmy się skupić, jest łatwość i szybkośćtworzenia wieloplatformowych rozwiązań. DTTG posiada jedną bazę kodu źródłowego opartą na Qml i C++, która zawiera tylko 2984 linijki kodu. Takie rozwiązanie umożliwia implementację aplikacji na wiele platform bez konieczności wielokrotnego kodowania w różnych językach. Nie bez powodu jednym z haseł Qt jest „Koduj raz, wdrażaj wszędzie”.

Ta doskonała funkcja umożliwia programistom szybsze dostarczanie produktów, a klientom oszczędność pieniędzy. Nie musisz pisać aplikacji od nowa, jeżeli chodzi o implementacje na inne platformy. Nie musisz też iść na skróty z powodu ograniczonego i niewydajnego frameworka webowego.

 

Pchaj do granic możliwości

Efektywność zasobów jest szczególnie ważna, gdy chodzi o rozwój gry. Responsywność i płynna grafika są jednymi z kluczowych czynników wpływających na zadowolenie graczy. Aby to wszystko zapewnić trzeba zrezygnować z niektórych, często zaawansowanych funkcji lub skorzystać z niskopoziomowej technologii, która często sprawia, że programowanie to istny koszmar… chyba, że używasz Qt!

Wśród zalet, z których słynie Qt jest również wydajność pamięciowa. Przy użyciuQt można zintegrować błyskawiczną logikę aplikacji w C++ z płynnym i wydajnym front-endem QML. Jak już wspomnieliśmy jest QML opiera się na C++, a więc już sam w sobie jest całkiem efektywny. Na dodatek, jeśli to możliwe, używana jest akceleracja sprzętowa, aby jeszcze bardziej zwiększyć jego wydajność. Język ten korzysta również z kompilacji Just-In-Time oraz Ahead-Of-Time.

Dzięki tym korzyściom możesz stworzyć aplikację, którą bez problemu uruchomisz na każdym urządzeniu – od smartfonów po urządzenia wbudowane, takie jak RaspberryPi Zero. Wydajność aplikacji Qt możemy łatwo udowodnić: podczas uruchamiania aplikacji na maszynie Windows, zużycie pamięci RAM DTTG (podczas gry, nie w menu) oscyluje w granicach 90-125 MB. Jest to prawie takie samo zużycie RAM jak przy uruchamianiu szablonu aplikacji Ionic angular blank!

 

 

Aby uczynić cały proces tworzenia projektu tak wydajnym, jak to tylko możliwe, nie poprzestaliśmy tylko na frameworku Qt. DTTG korzysta również z Felgo – wieloplatformowego SDK do tworzenia aplikacji. Poza dostępem do wielu gotowych klas, udostępnia on jedno z naszych ulubionych narzędzi: QML Hot Reload.Daje ono możliwość podglądu wyników zmian w kodzie w czasie rzeczywistym bez konieczności przebudowywania aplikacji. Z narzędziem tym tworzenie UI jest o wiele prostsze, ale też i szybsze.

Qt sam w sobie jest w stanie zapewnić wszystko, czego powinien potrzebować twórca gier mobilnych. Po co jednak wymyślać koło na nowo, skoro mieliśmy do dyspozycji Felgo i zawarte w nim gotowe obiekty? Dzięki nim tworzenie fizyki, multiplayer, animacji i wiele innych elementów gry była bułką z masłem.

Jak więc sami widziecie framework Qt jest dobrym wyborem, jeżeli chodzi o gry 2D.Niemniej jednak, nie jest to jedyny przypadek, w którym Qt świeci pełnym blaskiem.Na naszej stronie znajdziecie więcej dem technicznych stworzonych przez zespół Scythe Studio.