A lecke az andengine no1 bevezető és ismerős (blog) hírlevélről
Üdvözlet minden olvasómnak! Elkezdek elterjeszteni a leckék ingyenes fordítását az AndEngine alkalmazások fejlesztésére. Azonban a libGDX-től az AndEngine-hez költözött pillanatnyilag, a cikkek és a fordítások is rendelkezésre állnak.
Bevezetés az AndEngine-be:
Az AndEngine egy OpenGL 2D nyílt forráskódú játék, amelyet Nikolos Gremlich fejlesztett ki. Még akkor is, ha nem rendelkezik az OpenGL OpenGL programozással történő programozással, ez nem akadályozza meg, hogy 2D-s alkalmazásokat futtasson Androidra az OpenGL használatával. A legfontosabb dolog az, hogy a Java-programozás tapasztalatai vannak. Anélkül, sehol.
- • Alkalmazás skálázása különböző eszközökön (különböző felbontások)
- • Támogatja a multi-touch funkciót.
- • Box2D fizikai motor (kiterjesztés formájában) (amelyet például AngryBirds használ)
- • Támogatott térképek támogatása
- • Részecske-rendszerek
- • élő háttérkép (kiterjesztés formájában)
2. Az AndEngine használatának előnyei:
- • Szabad és nyílt forráskód.
- • Önnek tényleg nincs szüksége az OpenGL programozás tapasztalatára (de kívánatos lehet)
- • Gyors, jól tervezett motor
- • Viszonylag nagy, aktív és hasznos közösségek.
- • Számos bővítmény a motor alatt
- • Sok példa a motorteljesítmény bemutatásával
3. A főbb hátrányok:
- • Szinte semmilyen normál dokumentáció (különösen oroszul).
- • Néha lassabban működik, mint a többi motor
- • A dokumentáció hiánya a legfontosabb nehézség a kezdeti szakaszokban (nehéz megérteni a paramétereket, funkciókat, módszereket stb.)
De ahelyett, dokumentáció, a motor aktív angol nyelvű közösség és a nagy fejlődő projekt, amelyben a tapasztaltabb felhasználóknak segíthet kezdő fejlesztők, és ez viszont segít könnyebb, gyorsabb és jobb fejleszteni a játékot.
Olvassa el:
Telepítése előtt van szüksége a már telepített egy csomó Eclipse + JDK + Android SDK (a RuNet tele tanulságokat, hogy hogyan kell ezt csinálni, így a probléma ezzel merül fel).
Olvassa el:
Ebben a leckében megpróbálom röviden leírni az AndEngine játékmotor leggyakrabban használt kifejezéseit és definícióit.
A leírást és a kifejezéseket Nikolos Gremlich alkotja
A motor (a motor) kis lépésekből állítja a játékot. Tehát a motor szinkronizálja a színpadon lévő objektumok megjelenítését, frissíti a képernyőt, feldolgozza az eseményeket, feldolgozza az aktuálisan aktív tevékenységet tartalmazó különböző adatokat. Számos alosztály létezik, például:
- LimitedFPSEngine - ez az osztály megpróbálja elérni a frissítések és renderelés bizonyos értékét egy másodperc alatt.
Az IResolutionPolicy a MotorOptions része. Ez az osztály azt mondja az AndEngine-nek, hogyan kell kezelni a különféle eszközök különböző képernyőméretét. Ez azt jelenti, hogy az RatioResolutionPolicy módszer a SurfaceView maximális méretét maximalizálja, miközben egy bizonyos arányt tart fenn. Ez azt jelenti, hogy az objektumok nem kerülnek torzulásra, míg a SurfaceView a lehető legnagyobb méretben lesz.
- RatioResolutionPolicy - Mindent méretezzen a megfelelő arányban (hátrány - fekete vonalak alakíthatók ki)
- FillResolutionPolicy - nyújtja a képet a képernyő méretének megfelelően (hátrány - a képek megnyújthatók)
A kamera határozza meg a képernyőn rajzolt jelenet téglalapját. Általában egy jelenetben egy kamerát használnak. Vannak olyan alosztályok, amelyek számos funkcióval rendelkeznek, például:
- BoundCamera - a fényképezőgép, amely a megjelenített rész méretét jelzi.
- ZoomCamera - engedélyezheti a méretezést, görgetve a kamerát.
A Scene osztály a gyökértartó minden olyan objektumhoz, amely a képernyőn megjeleníthető. A jelenetnek bizonyos számú rétege van, amely önmagában tartalmazhatja (fix vagy dinamikus) az elemek számát. Vannak olyan alosztályok, mint például a CameraScene / HUD / MenuScene, amelyek ugyanazt a pozíciót foglalják el, függetlenül attól, hogy melyik a kamera helyzete.
- HUD - szemüveghez, térképhez, radarhoz stb. (ez az alosztály követi a kamera változásait, így mindig ugyanazon a helyen, függetlenül a kamera mozgásától)
Egyed:
Az entitás olyan objektumok, mint a sprites, a téglalapok, a szöveg vagy a vonalak. Az objektumok tulajdonságokkal rendelkeznek, például: pozíció / orientáció / méret / szín / stb.
- Sprite - textúrájú tárgyak
- TiledSprite - tárgyak kerámia textúrákkal.
- AnimatedSprite - kiterjesztés TiledSprite, animált sprites.
A textúra egy "kép" egy grafikus chip memóriájában. Androidon a textúra szélességének és magasságának 2-es erősségűnek kell lennie (az utolsó GLES2-ben ez a szabály nem szükséges, ami valóban hasznos lehet a memória mentéséhez). AndEngine textúrákat gyűjt össze több ITextureSourcesből, így a tér hatékonyabban használható.
TextureRegion:
A TextureRegion egy téglalapot határoz meg a textúrán. A TextureRegion spriteket használ, hogy a rendszer tudassa, hogy a Sprite milyen nagyméretű textúrát tartalmaz.