libgdx Android Studio alatt



Hasonló dokumentumok
libgdx alapú program létrehozása, kép importálása, mozgatása libgdx alapok Android játékfejlesztés Soós András

libgdx alapok, első alkalmazás

Entitások Projektfeladat specifikáció

ANDROID 2.3 TÁBLAGÉP KEZELÉSI ÚTMUTATÓ

Készítette:

ARCHLine.XP Újdonságok. Release 2

ProAnt Felhasználói Útmutató

Android alapok. Android játékfejlesztés

1 Újdonságok a 3D szerkesztő módban

Az anyagdefiníciók szerepe és használata az Architectural Desktop programban

FELHASZNÁLÓI KÉZIKÖNYV

A HunPLUS 2009 újdonságai

CodeBlocks installálási segédlet

9. Entitás modulok. Nagy Gusztáv: Drupal 7 alapismeretek Fejlesztői verzió: október 6.

Kézikönyv. SOFiSTiK SOFiCAD-B (Vasalásszerkesztő modul) 16.5 és 17.1 verzió

ECP. Site Administration System. Felhasználói kézikönyv. v (1. kiadás a és újabb verziójú ECP SAS rendszerekhez)

Példaprogramok Android alá (Lista, mentés, visszatöltés, pattogó android figura) Android alapok. Android játékfejlesztés.

PC World október Microsoft Windows 98 magyar nyelvű változat Szolgáltatási útmutató II. Készítette: Móricz Attila

Alap számológép alkalmazás

ArcGIS 8.3 példa 1. Dr. Iványi Péter

HASZNÁLATI ÚTMUTATÓ DOLGOZÓK IMPORTÁLÁSA KULCS BÉR PROGRAMBÓL AZ ONLINE MUNKAIDŐ NYILVÁNTARTÓ RENDSZERBE. Budapest, november 08.

Biztonság Felhasználói kézikönyv

FATERMÉSI FOK MEGHATÁROZÁSA AZ EGÉSZÁLLOMÁNY ÁTLAGNÖVEDÉKE ALAPJÁN


XXI. Országos Ajtonyi István Irányítástechnikai Programozó Verseny

Kézikönyv. Gyártási lista kezelő infosystemek

Gate Control okostelefon-alkalmazás


Felhasználói leírás v1.0

Kaspersky Internet Security Felhasználói útmutató

SUBUS FEJES SZILVESZTER DR. PINTÉR RÓBERT

Cisco Unified Communications Manager Assistant Felhasználói kézikönyv a Cisco Unified Communications Manager 6.0 rendszerhez

I. fejezet Hello Világ! Programozás tankönyv. II. Fejezet. Helló Világ! avagy a Miért?-ek elkezdődnek

Első lépések. MENÜPONT: Szerkesztés/Saját adatok

HelpyNet kézikönyv LAKOSSÁGI FELHASZNÁLÓKNAK

A Szekszárdi I. Béla Gimnázium Helyi Tanterve

CellCom. Szoftver leírás

Mobil készülékek programozása

HP Scanjet N6310. Felhasználói kézikönyv

Dr. Pétery Kristóf: CorelDRAW 9 testre szabás

Vizuális programozás gyakorlat

SanoCenter FELHASZNÁLÓI KÉZIKÖNYV

Programozás Delphiben

Dr. Pétery Kristóf: Adobe Photoshop Elements 3

Nappali képzés: Számítógéppel segített tervezés szerkesztésben közreműködött: Zobor Bence Kiegészítő- levelező képzés: Számítástechnika 2.

KÖZÉPSZINTŰ GYAKORLATI VIZSGA

Alcor Zest Q813IS Táblagép. Kezelési útmutató

4. Gyakorlat ellenőrzött osztályozás

A program telepítése

Architectural Controller - master

A Measy A2W Miracast Stick bemutatása. A Measy A2W Miracast Stick jellemzői

NISZ Zrt. által kibocsátott USB tokenek telepítése ASP rendszerhez

A külföldi katonai missziók áttételes gazdasági hatásai. Lakner Zoltán Kasza Gyula 36 HADTUDOMÁNY 2008/3 4

GroupWise 5.2 használói jegyzet

Grafikus felületek a programozó szempontjából grafikus elemek absztrakt reprezentációja az egyes elemek tulajdonságait leíró adatstruktúrák.

Processzor: Operációs rendszer: Operációs memória: Kijelző: Flash memóriabővítő:

Minden jog fenntartva, beleértve bárminemű sokszorosítás, másolás és közlés jogát is.

AutoCAD MAP DWG mapobject TOPOBASE konvertáló program dokumentáció

NEW UNIVERSE DOLPHIN VÍZÁLLÓ MP3-AS LEJÁTSZÓ HASZNÁLATI UTASÍTÁS

ISE makró (saját alkatrész) készítése

Raiffeisen Electra Terminál. Felhasználói kézikönyv

ÖSSZEFOGLALÓ ÉRTÉKELÉSRE ADOTT TERVEZŐI VÁLASZ

8. fejezet: Kijelölések és görbék. A kijelölés alapjai. A fejezet tartalmából:

2. Gyakorlat Khoros Cantata

Gate Control okostelefon-alkalmazás

1. oldal, összesen: 29 oldal

WEBEC FELHASZNÁLÓI KÉZIKÖNYV

Napfotók (webkamerás felvételek) képfeldolgozása

Szabadtéri óra digitális iránytűvel, RA 202. Kezelési utasítás FŐBB JELLEMZŐK KARÓRA 1. RA202 RA282

34.) Napirend: A beruházások, fejlesztések értékelése, feladatok kijelölése

UniPoll Feedback. Intézményi integrált kérdőívkészítő rendszer vélemény és visszajelzés gyűjtéshez.

Programozás III GRAFIKA RAJZOLÁS SWING FELÜLETEN RAJZOLÁS GRAFIKA HASZNÁLATA. Rajzolni az awt csomag Graphics osztályának metódusaival tudunk.

PÉLDATÁR BEGYAKORLÓ FELADAT SÍKFESZÜLTSÉGI PÉLDA MEGOLDÁSA VÉGESELEM-MÓDSZERREL

A Gyorstelepítés rövid leírását lásd a hátsó borítón.

(11) Lajstromszám: E (13) T2 EURÓPAI SZABADALOM SZÖVEGÉNEK FORDÍTÁSA. 1. ábra

Szolár szabályozó. EMS plus O. Kezelési útmutató Logamatic SC (2015/06) A kezelés előtt figyelmesen olvassa el.

HP Deskjet 3050A J611 series

Töltőfunkció Kezelési Utasítás

Kötegelt nyomtatványok kezelése a java-s nyomtatványkitöltő programban (pl.: 1044 kötegelt nyomtatvány - HIPA; 10ELEKAFA - Elekáfa)

Nokia C Felhasználói kézikönyv

Rövid használati útmutató

Tisztelt Ügyfelünk! Cégek / Cég törzsadatai / Cég törzsadatainak módosítása / TB fül

Minden jog fenntartva, beleértve bárminemű sokszorosítás, másolás és közlés jogát is.

Karbantartás. Az ESZR Karbantartás menüjébentudjuk elvégezni az alábbiakat:

Aronic Főkönyv kettős könyvviteli programrendszer

ICR-E DVR ICR-E83H; ICR-E163H ICR-H41; ICR-H81 Felhasználóí kézikönyv ver 2.1

TomTom Bridge Referencia útmutató

Kanadai DOC közlemény Fontos biztonsági utasítások fejezet Üzembehelyezés A monitor kicsomagolása... 4

Előszó. Bevezetés. Java objektumok leképzése relációs adatbázisokra OJB-vel Viczián István Viczián István

Felhasználói kézikönyv

1. ábra. Néhány tipikus ikon képe

1. Vásárlás regisztrációval a regisztrációs űrlap kitöltésével: felhasználónév, és cím megadásával, amiről ban visszaigazolást kap.

Követelmény, projekt, funkcionalitás 41 CSK 1

NEPTUN_TÖRZS. (Funkcionális leírás)

Felhasználói kézikönyv az Interreg Danube Programme weboldalának látogatói számára

Dr. Pétery Kristóf: AutoCAD LT 2002 Blokkok, Xrefek

HP Scanjet 3770 digitális, síkágyas lapolvasó

Java felhasználói felület

Látványos oktatás egyszerő multimédiás elemek programozásával Delphiben

Felhasználói kézikönyv

Átírás:

libgdx Android Studio alatt LibGdx alapú program létrehozása, meglévő projekt importálása, képek mozgatása Készítette: Lukácsi Roland Frissítette: Hajdu Richárd Karádi Gábor Kiglics Norbert Verkman István

Tartalom 1 Bevezetés... 2 2 Projekt importálása az Android Studioba... 3 3 Megvalósítás... 4 3.1 Kirajzolás... 4 3.2 Irányítás... 9

1 Bevezetés Az alábbiakban egy egyszerű Adroid alapú applikációt fogunk készíteni a libgdx segítségével. Nem kisebb feladat vár ránk, mint egy pálcikaember mozgatása ide-oda a képernyőn a kijelző nyomogatásával. A program készítését lépésről lépésre fogjuk bemutatni.

2 Projekt importálása az Android Studioba LibGdx alapú projekt létrehozásáról A libgdx letöltésének telepítési lépéseinek bemutatása című dokumentumban esik szó, ezzel ez a dokumentum külön nem foglalkozik. Amennyiben már elsajátítottuk a libgdx projekt létrehozásának csínját-bínját, akkor az első lépés, hogy importáljuk a frissen létrehozott Gradle projektünket. Ehhez kattintsunk a File menüpontra, majd az Import Projekt pontra. Keressük meg a projektünk mappáját, jelen esetben test, majd jelöljük ki a build.gradle fájlt, aztán kattintsunk az OK gombra. 1. ábra Importálás Ha mindent helyesen csináltunk, akkor az Android Studio kis idő múlva beimportálja a projektet.

3 Megvalósítás 3.1 Kirajzolás Adott tehát egy üres Projekt. Keressük meg a core mappán belül a fő osztályt, ami jelen esetben NewGame néven szerepel. Amikor a Gradle generál egy új projektet, ez az osztály egy ApplicationAdapter típusú osztály lesz, ami a mi kis küldetésünknek tökéletesen megfelel. 2. ábra Üres projekt Töröljünk ki minden felesleges sort, maradjon csak egy üres create() és render() függvény a képen látható módon. Annyit azért érdemes tudni, hogy a create() függvény egyszer fut csak le az osztály meghívásakor, míg a render() függvény folyamatosan fut, egy véget nem érő ciklus, ha úgy tetszik. Először is szükségünk lesz egy képre, amit majd mozgathatunk. Töltsünk le egy tetszőlegeset az Internetről. Itt mindenki kiélheti a fantáziáját, mi egy egyszerű pálcika embert fogunk használni. 3. ábra Pálcikaember

Tipp: Ha a kép valamilyen háttérrel rendelkezik, még ha fehér is, akkor is meg fog jelenni a figuránk körül. Ezért érdemes valamilyen képszerkesztő programmal eltüntetni a hátteret. A Gimp erre a célra tökéletesen megfelel. Ha megvan a kép, helyezzük azt az android/assets mappába a képen látható módon. Jelen esetben stickman.png nevű fájl tartalmazza a nagy tettekre hivatott pálcika emberkénket. 4. ábra Források Következő lépésben hozzunk létre hősünknek egy textúrát 5. ábra Textúra Rajzoltassunk ki a fehér hátteret. 6. ábra Háttér

A Gdx.gl.glClearColor() függvény red, green, blue, alpha értékeket vár 0 és 1 között. Ha mindent paramétert beállítunk egyesre (1,1,1,1) és lefuttatjuk, akkor csak fehér hátteret kapunk. 7. ábra Teszt 1 Tipp: Minden apró módosítást nem érdemes valós eszközön tesztelni, teszteljünk desktop módban olyan változtatásoknál, amik nem érintik a valós eszközön való működést, összességében sok időt spórolhatunk ezzel. Hozzunk létre egy Sprite objektumot, hogy könnyebben kezelhessük a textúránkat. 8. ábra Sprite A Sprite egyébként egy nagyon hasznos dolog. Méretet, elfordulási szöget, kép orientációt, pozíciót és sok egyéb dolgot művelhetünk vele.

Állítsunk is be a pálcika emberünk kezdeti értékeit. 9. ábra Paraméterek A width és height értékek lesznek a pálcikaemberünk szélessége és magassága. A szélesség jelen esetben a képernyő szélességének fele, a magasság pedig a figura szélességének kétszerese. A figurát a képernyő bal alsó sarkában helyezzük el, ezért a 0,0 paraméterek a setposition-nél.

Elérkezett az idő, hogy kirajzoljuk a figuránkat, de ehhez létre kell hoznunk egy SpriteBatch nevű objektumot. Egyébiránt mindent, amit ki szeretnénk rajzolni, a SpriteBatch.begin() és SpriteBach.end() függvények közé kell, hogy kerüljön. Futtatva a programot, a következőt látjuk: 10. ábra SpriteBatch 11. ábra Teszt 2

Bizony megveregethetjük a vállunkat. Mérföldkőhöz érkeztünk, ott pihen a figura az alsó sarokban az elvárásainknak megfelelően, már csak mozgásra kell bírni. Lássunk hozzá. 3.2 Irányítás Először is kezelni kell az interakciókat valahogy. Szerencsére a libgdx ilyen osztállyal is szolgál: az InputProcessor névre hallgató osztály tökéletesen megfelel a célnak. Nem hozunk létre új osztályt, inkább a New Game osztályon belül implementáljuk. Előfordulhat, hogy a studio valamit nem talál. Fel fogja ajánlani, hogy importáljuk a megfelelő csomagot, és hívjuk meg a szükséges metódusokat. 12. ábra Függvények Számunkra jelen példa esetében ezek közül a touchdown() és touchdragged() metódusok érdekesek. Valósítsuk meg, hogy hősünk oda ugráljon a képernyőn, ahova bökünk!

Először is állítsuk be az InputProcessort: Majd kezeljük az érintést: 13. ábra InputProcessor 14. ábra Irányítás 1 Hogy mi szükség az y változó bevezetésére mikor van nekünk egy screeny paraméterünk is? A fejlesztők valamilyen kifacsart humorérzéktől vezérelve úgy gondolták vicces lesz invertálni az Y koordináta lekért értékeit, így egy 800 magas kijelző aljára bökve 800, tetejére bökve 0 értéket kapunk, ami nem túl jó, ezért vonjuk ki a magasságból a lekért értéket így korrekt értékeket kapunk. Ha futtatjuk a programot, láthatjuk, hogy az megfelelően működik, csupán két probléma van: egyrészt az, hogy ha végighúzzuk a képernyőn az ujjunkat, akkor nem a megfelelően reagál, valamint a figura kicsit jobbra föl csúszik a bökéshez képest. Utóbbi azért van, mert a figura orientációja a bal alsó sarkában helyezkedik el. Ez a középpont pedig nem a figura mértani középpontja. Oldjuk meg a problémát úgy hogy a képet tartalmazó sprite méreteinek a felét kivonjuk a bökés pozíciójából.

15. ábra Irányítás 2 Ugyanezeket a sorokat bemásolva a touchdragged() függvénybe a másik problémánk is megoldódik egy csapásra, és immár ide-oda húzogathatjuk karakterünket. 16. ábra Irányítás 3 Futtassuk le! Ha mindent jól csináltunk, a program megfelelően fog működni.