Lõplik kaustade/failide hierarhia¶
project/ (kogu projekt)¶
Siin asub settings.gradle, build.gradle ja kõik alam-moodulid (core, lwjgl3, assets jne).
See on kogu projekti keskpunkt.
core/¶
Peamine mänguloogika (platvormist sõltumatu). Kõik, mis puudutab mängu käitumist ja mehhaanikat.
core/src/main/java/¶
Siin asuvad Java klassid:
Game class – mängu käivitamine ja ekraanide haldamine.
Screens/ – kõik ekraanid (menüü, mänguekraan, lõpp jne).
Entities/ – mänguobjektid (mängija, AI, vaenlased, majad jne).
Systems/ – mänguloogika, füüsika, AI liikumine, kokkupõrked.
Utils/ – abiklassid (näiteks juhuslikkuse generaator, matemaatika).
core/assets/¶
Mängus kasutatavad ressursid (kuid Eclipse/IDEA neid siit ei lae). Kasutatakse peamiselt testimiseks või tööriistade jaoks.
assets/ – tegelikud mänguressursid¶
LibGDX kasutab seda kui põhikausta, kust mäng faile loeb.
Siia pannakse:
pildid (
.png,.jpg)atlas-failid (
*.atlas)helid
muusika
fontid (
.ttf,.fnt)levelite failid (
.json,.tmx,.xml)
lwjgl3/¶
Siin on:
Lwjgl3Launcher.java – Java fail, mis käivitab mängu arvutis.
StartupHelper.java – OS-iga seotud abiklass.
konfiguratsioon (ekraani suurus, VSync, pealkiri jne).
Kuna töötab Java desktopis, võib siia panna ka:
tööriistad (
TexturePackerTool)skriptid
lokaalse töötlemise
tools/ (kui kasutad eraldi tööriistu)¶
Mõeldud mitte-mängu Java programmidele, näiteks:
TexturePacker
JSON konverterid
leveli genereerijad
asseti kokkupakkimise skriptid
Tabel¶
Fail / Kaust |
Selgitus |
|---|---|
|
Mängu loogika ja kogu tegelik kood. |
|
Mängu käivitamine arvutis ja platvormispetsiifiline osa. |
|
Kõik pildid, helid, atlas-failid, fondid. |
|
Programmid, mis töötlevad ressursse (TexturePacker). |
|
Mängu alguspunkt + ekraanide haldus. |
|
Iga mängu ekraan (menüü, mäng jne). |
|
Mängijad, AI, objektid. |
|
Liikumine, füüsika, AI loogika. |
|
Abiklassid. |
|
TexturePacker väljund (atlas + png). |
Järgmine osa videost käsitleb serveri JAR-faili loomist ja selle üleslaadimist TalTech’i serverisse. Te ei pea seda hetkel tegema, kuna see toimub semestri teises pooles.