Saya membuat game Zelda-esque top-down sederhana di libgdx, dan saya ingin menerapkan ruang bawah tanah berbasis ubin yang dihasilkan secara prosedural, mirip dengan ini.
Libgdx memang memiliki kelas yang disebut TiledMap yang tampaknya sesuai dengan kebutuhan saya, namun dokumentasi di luar dokumen resmi menunjukkan bahwa TiledMaps hanya dapat digunakan bersama dengan file .tmx, atau dengan kata lain peta pra-desain. Saya telah melakukan cukup banyak Googling tanpa hasil, jadi saya bertanya di sini sebagai upaya terakhir berharap bahwa seseorang memiliki pengalaman menggunakan libgdx untuk peta ubin yang dihasilkan secara dinamis.
edit: Bisakah saya menggunakan StaticTiledMapTiles bersamaan dengan tutorial yang saya tautkan di atas untuk mencapai tujuan saya?
Terima kasih!
Jawaban:
Anda dapat membuat peta ubin tanpa menggunakan .tmx.
sumber
.tmx
file dari libgdx github.com/libgdx/libgdx/blob/master/tests/gdx-tests/src/com/… . Terima kasih.Berdasarkan saran dari / r / gamedev , saya telah memutuskan untuk tidak menggunakan TibedMap libgdx, dll. Kelas bawaan dan hanya membuat sendiri.
Saya bisa masuk ke detail yang lebih besar jika diminta, tapi inilah yang saya lakukan, pada dasarnya.
1: Hasilkan sebuah penjara bawah tanah dengan menggunakan algoritma yang awalnya saya tautkan, dan simpan koordinat ubin (bukan koordinat piksel) menggunakan
Coordinate
kelas yang saya buat dalam aHashMap<Coord, MapTile>
.MapTile
hanya kelas yang memiliki data tentang jenis ubin.2: Dalam
draw()
fungsi kelas utama saya, saya menambahkan kode berikutYang iterates atas setiap
Coordinate
dalamdungeonMap
dan menarik ubin (jika koordinat ada dalam frustrasi kamera) dengan globaltileSize
offset.sumber