BETA
Aby się zalogować, najpiew wybierz portal.
Aby się zarejestrować, najpiew wybierz portal.
Podaj słowa kluczowe
Słowa kluczowe muszą mieć co najmniej 3 sąsiadujące znaki alfanumeryczne
Pole zawiera niedozwolone znaki

Baza wiedzy











Wprowadzenie do Construct 2: Technologie

06-03-2014 20:52 | AkademiaTresci
W tym artykule poznasz technologie wykorzystywane w Construct 2.

Opracowanie: Rafał Woźniak na podstawie Official Construct 2 Manual

Construct 2 tworzy gry w języku HTML5. Są one uruchamiane online w środowisku przeglądarki internetowej na szerokim wachlarzu zróżnicowanych urządzeń i systemów operacyjnych wliczając w to urządzenia mobilne takie jak np. telefony i tablety Dzięki temu Twoja gra może stać się dostępna dla szerokiego grona odbiorców. Ta część jest podsumowaniem rozwoju technologii. Jest ona prawdopodobnie ciekawsza dla ludzi zainteresowanych stroną techniczną i może zostać pominięta, jeśli bardziej interesuje Cię sposób używania programu Construct 2.

Pomimo tego, że gry z Construct 2 mogą być przeniesione na wiele różnych platform, nawet, jako natywne aplikacje, podstawową technologią pozostaje silnik oparty o HTML5.

Przeglądarki

Przeglądarka jest programem, który pobiera i wyświetla strony internetowe na Twoim komputerze. Najpopularniejszymi z nich są: Internet Explorer (HTML5 zaimplementowane od wersji 9 i wyższej), Mozilla Firefox, Google Chrome oraz Opera. Komputery Macintosh najczęściej korzystają z Safari. Wiele z tych przeglądarek jest dostępnych także dla urządzeń mobilnych i tabletów.

HTML5

HTML jest skrótem od HyperText Markup Language, czyli języka znaczników hipertekstowych. Najprościej mówiąc, HTML to podstawowy standard tworzenia stron internetowych, który jest popularny od czasu wprowadzenia Internetu. HTML5 jest piątą wersją standardu HTML, która zaczęła być powszechnie uznawana w 2011 roku. Wprowadza ona wiele nowych funkcji, lecz niewiele z nich odnosi się do gier. Jednakże HTML5 nadal stanowi najbardziej odpowiednią ścieżkę do opisania technologii używanej w grach stworzonych w programie Construct 2. Dodatkowo, w grach powstałych za pomocą Construct 2 używany jest Javascript – język programowania stosowany w oprogramowywaniu stron internetowych.

Szczególnie interesujący w HTML5 jest nowo wprowadzony znacznik <canvas> (z ang. płótno). Tworzy on prostokątną powierzchnię na stronie HTML, na której mogą być rysowane obrazy i treść. To czyni go idealnym dla gier. Każda z nich stworzona za pomocą Construct 2 używają tego znacznika do ich wyświetlania.

HTML5 jest rozwiązaniem porównywalnym do technologii Adobe Flash, która wiodła prym w Internecie do roku 2011. HTML5 wyróżnia się tym, że jest zatwierdzonym standardem i niepodlega on kontroli jednej firmy. Flash jest także uruchamiany jako plugin przeglądarki, przez co musi zostać osobno pobrany i zainstalowany, natomiast HTML5 jest wbudowany w przeglądarkę. Oznacza to możliwość uruchamiania gier opartych o HTML5 na urządzeniach, które nie posiadają wsparcia dla Flasha takich, jak np. iPhone’y i iPady. Biorąc pod uwagę możliwości, HTML5 wkrótce zastąpi technologię Flash w sieci.

Javascript

Javascript to język programowania przeznaczony dla sieci. Umożliwia rozbudowanie stron internetowych o elementy interaktywne i na wiele sposobów pozwala na pracę zbliżoną do tradycyjnych aplikacji. Stanowi on standard zatwierdzony przez wiele instytucji.

Języka Javascript nie należy łączyć z Javą – jedyny wspólny element stanowi tu fragment nazwy! Są to dwa odmienne i niepowiązane ze sobą języki programowania. Aplety Javy umożliwiają pracę na stronie internetowej, lecz jest to zupełnie inna technologia. Postaraj się to zapamiętać – gry stworzone w Construct 2 nie potrzebują i nie używają Javy do działania.

Nowoczesne przeglądarki kompilują Javascript do kodu natywnego (instrukcji dla procesora w formie binarnej). To pozwala stronom internetowym (wliczając w to gry) na używanie skryptu szybko i efektywnie.

Javascript to język automatycznie zarządzający pamięcią (ang. garbage collection), przez co gry zagrożone są zatrzymaniem lub zacinaniem się z powodu uruchomienia procesu czyszczenia pamięci. Gry tworzone w Construct 2 są natomiast zoptymalizowane pod kątem jak najmniejszego zagrożenia tymże efektem, gdzie tylko to jest możliwe. Zwolnieniu pamięci może podlegać nawet cała instancja obiektu, jeśli zostaje on zniszczony i później ponownie utworzony. To pomaga zwiększyć wydajność i powoduje, że gra działa tak płynnie, jak to jest możliwe.

SDK pluginów i bibliotek

Programiści Javascript mają możliwość rozszerzenia możliwości programu Construct 2 za pomocą własnych dodatków i bibliotek. Przejrzyj dokumentację SDK Javascriptu, aby uzyskać więcej informacji.

Renderowanie elementu canvas

Element canvas wspiera dwie możliwości renderowania gry na stronie internetowej: prosty silnik 2D i silnik WebGL oparty o technologię OpenGL. WebGL jest dwukrotnie szybszy od silnika 2D i posiada więcej funkcji, wliczając w to rozbudowane efekty graficzne, lecz nie jest ono wspierane na wszystkich platformach. Większość przeglądarek posiada wsparcie dla WebGL, jednak nie jest ono wszędzie domyślnie uruchomione. Construct 2 wspiera obie technologie renderowania gry. WebGL może zostać uruchomiony dla każdej gry we właściwościach projektu. Zaleca się włączyć tą opcję, ponieważ gra prawdopodobnie będzie działać o wiele szybciej i bez tego efekty nie będą w stanie działać. Jeśli WebGL nie jest wspierane przez urządzenie użytkownika lub jest zablokowane, Construct 2 może powrócić do silnika 2D. W tym przypadku gra nadal może być uruchomiona, lecz będzie działać trochę wolniej i nie będzie wyglądać tak dobrze.

Internet Explorer od wersji 11 wspiera WebGL. Jeżeli posiadasz zainstalowaną niższą wersję, użyj przeglądarki Firefox lub Chrome. Możesz także poinformować ludzi, którzy grają w Twoją grę, aby uczynili to samo.

WebGL może nie być wspierane na komputerze nawet, jeśli jest włączone. W takim przypadku zamiennie zostanie użyty silnik 2D. Możesz samodzielnie sprawdzić w kodzie aplikacji, który silnik renderujący jest używany w grze poprzez komendę renderer, która zwróci nam wartość canvas2d lub webgl w zależności od użytego silnika.

Ukrywanie i zmniejszanie objętości kodu

Kod Javascript jest pomniejszany i ukrywany za pomocą Google Closure Compiler. Redukuje to rozmiar pobieranego pliku i czyni go niezwykle trudnym do odczytania za pomocą inżynierii wstecznej (ang. reverse engineering).

Pliki graficzne gry są skompresowane w formacie PNG. Są one także kompresowane podczas eksportowania tak, aby rozmiar pobierania był jak najmniejszy. By uzyskać więcej informacji, zobacz post na blogu Kompresowanie Obrazów w Construct 2 (ang.).

Dźwięk

Silnik gier stworzonych w Construct 2 wspiera Web Audio API w Google Chrome umożliwiający zmniejszenie opóźnień odtwarzania efektów dźwiękowych. W innych przeglądarkach natomiast, stosuje się znacznik <audio>.

Wsparcie offline

Pomijając to, że gry w HTML5 uruchamiają się wewnątrz przeglądarki, te stworzone w Construct 2 używają pamięci cache (AppCache) dla umożliwienia im uruchamiania offline. Jest to bardzo przydatne w webowych aplikacjach dla systemu iOS i aplikacjach w Chrome Web Store, gdyż część użytkowników może być offline podczas uruchamiania gry. Również AppCache pomaga odciążać serwery hostujące gry - jej pliki pobierane są tylko raz, a za każdym następnym jest ona ładowana z dysku twardego (aktualizacje natomiast są sprawdzane i pobierane w tle). Jeśli chcesz uzyskać więcej informacji na ten temat, zobacz poradnik dotyczący wsparcia offline w Construct 2 (ang.). Najważniejszym warunkiem jest ustawienie przypisania plików z rozszerzeniem .appcache do typu MIME text/cache-manifest. Winnym przypadku wsparcie offline nie będzie działać i Twoje serwery będą obciążone.

Podsumowanie

W tym artykule poznałeś technologie wykorzystywane w Construct 2.
W kolejnym artykule poznasz najlepsze praktyki tworzenia gier w Construct 2.

CC

tagi: GameDev

Komentarze 0

pkt.

Zaloguj się lub Zarejestruj się aby wykonać tę czynność.