Alat penyiapan untuk proyek libGDX Gradle.
Untuk menghasilkan proyek, unduh jar
aplikasi terbaru dan jalankan (biasanya klik dua kali sudah cukup), atau jalankan perintah berikut secara manual (mengganti VERSION
dengan tepat):
java -jar gdx-liftoff-VERSION.jar
Anda harus membangun dengan Java 17 atau lebih baru! Versi Gradle saat ini, serta alat Android saat ini, kini mengharuskan JDK Anda yang terinstal menjadi versi 17 atau lebih tinggi. Terlepas dari platform apa yang Anda targetkan, Gradle 8.10 dan yang lebih baru memerlukan JDK dengan versi minimal 17! Anda masih dapat menargetkan rilis lain, biasanya paling rendah 8, sambil membangun dengan JDK versi 17 dan yang lebih baru. Semua rilis target stabil Java dari 8 hingga 23 berfungsi di sini sekarang. Kami menggunakan Gradle 8.10.2 karena dapat langsung digunakan dengan Java 23 (walaupun baru saja dirilis!).
Jika Anda mengalami masalah, Anda dapat mencoba ?Panduan Mengatasi Masalah?.
Selain sebagian besar fitur gdx-setup
asli, alat gdx-liftoff
menawarkan:
Templat proyek. Anda dapat memilih salah satu dari banyak kerangka proyek yang menyoroti berbagai fitur libGDX.
Validasi masukan instan. Data proyek Anda divalidasi saat Anda mengetikkannya.
Dukungan bahasa JVM lainnya. Anda dapat memilih bahasa tambahan untuk proyek Anda, seperti Kotlin atau Scala. Pustaka standarnya, plugin Gradle, dan folder sumber yang sesuai akan disertakan.
Kustomisasi. Anda memiliki kontrol lebih besar atas versi perangkat lunak yang digunakan oleh aplikasi Anda.
Lebih banyak ekstensi pihak ketiga. Versinya diambil dari Maven Central atau JitPack, sehingga proyek Anda selalu diperbarui.
Konfigurasi otomatis untuk ekstensi yang rumit. Jika Anda mengalami masalah dalam menyiapkan Artemis-ODB, Lombok, atau beberapa perpustakaan lainnya, Liftoff melakukan beberapa pekerjaan tambahan, jadi Anda tidak perlu melakukannya.
Dukungan preferensi. Data dasar aplikasi Anda disimpan, jadi Anda tidak perlu mengisinya setiap kali membuat proyek.
Pelari Gradle opsional. Anda juga dapat menjalankan tugas Gradle setelah pembuatan proyek. Gradle tidak harus dijalankan agar proyek dapat dibuat.
Mendukung semua backend libGDX. Apakah Anda memerlukan backend LWJGL2, LWJGL3, dan/atau Headless? Liftoff menyediakan kotak centang sederhana untuk menambahkan setiap dan semua platform resmi, ditambah beberapa modul khusus lainnya.
Fitur kenyamanan. Jika Anda memiliki JetBrains Toolbox, Anda dapat membuka proyek yang baru dibuat di IDEA dengan satu klik (perlu "Generate Shell Scripts" yang diatur di Toolbox). Jika Anda menggunakan Eclipse, Anda masih dapat mengimpor proyek Gradle secara normal.
Terkini. Proyek ini membanggakan pembaruannya yang cepat setelah rilis komponen eksternal utama seperti Gradle atau libGDX itu sendiri.
Lebih banyak backend yang didukung. Backend tanpa kepala telah menjadi bagian dari libGDX sejak lama, tetapi tidak mudah diakses di gdx-setup; itu adalah kotak centang di sini. TeaVM, alternatif GWT yang semakin populer untuk aplikasi berbasis browser, juga hadir, dan berfungsi dengan Kotlin dan bahasa JVM lainnya serta dengan Java.
Bangun executable asli secara langsung. Plugin Construo memungkinkan Anda merakit JDK dengan JAR proyek Anda dan meluncurkannya dengan Win64 .exe asli, MacOS (x64 atau AARCH64) .app, atau Linux x64 yang dapat dieksekusi. Konfigurasi juga disertakan untuk Graal Native Image, meskipun kecil kemungkinannya untuk langsung "berfungsi".
Untuk keperluan video, @raeleus memproduksi video tutorial ini.
Jika Anda lebih suka membaca teks, ini dia...
Gdx-Liftoff adalah aplikasi GUI yang relatif mudah.
Masukkan nama proyek/paket/nama kelas utama.
Klik Opsi Proyek.
Pilih opsi yang Anda inginkan (platform tambahan, bahasa non-Jawa, ekstensi resmi, dan/atau templat).
Klik Berikutnya.
Pilih ekstensi pihak ketiga yang ingin Anda tambahkan.
Klik Berikutnya.
Masukkan jalur proyek dan secara opsional ubah versi Java (misalnya ke 8 untuk dukungan iOS yang lebih baik).
Klik Hasilkan, dan biarkan keajaiban terjadi.
Setelah itu Anda dapat membuka proyek di jalur yang Anda tentukan, atau membukanya lebih cepat di IDEA jika diinstal bagaimana Liftoff dapat melihatnya (kemungkinan besar menggunakan JetBrains Toolbox, meskipun IDEA yang diinstal secara manual juga dapat digunakan).
Jika Anda ingin menggunakan Kotlin, disarankan menggunakan template Kotlin (seperti Kotlin Logo
); ini menyebutkan bahwa mereka menggunakan "peluncur Kotlin" dalam deskripsinya. Semua perpustakaan KTX tersedia sebagai ekstensi pihak ketiga; ini tidak diperlukan untuk proyek Kotlin, namun dapat membantu. KTX dan perpustakaan berbasis Kotlin lainnya perlu mengaktifkan Kotlin. Saat ini, proyek yang dihasilkan di sini menggunakan Kotlin 2.0.21 secara default, yang mungkin memiliki beberapa ketidaksesuaian dengan rilis 1.9.x sebelumnya. Anda dapat mengatur versi ke rilis terbaru 1.9.x (saat ini 1.9.25), dalam dialog Bahasa, saat Anda memilih Kotlin sebagai opsi. Namun, seri rilis 2.x mengklaim sejumlah perbaikan yang bagus, dan sebagian besar perpustakaan tampaknya hampir kompatibel, atau sudah kompatibel. Liftoff sendiri dibuat menggunakan Kotlin 2.x , serta kode Java yang substansial (kompatibel dengan Java 8).
Beberapa hal memiliki struktur yang berbeda dalam proyek Liftoff, dibandingkan dengan proyek penyiapan gdx. Jika gdx-setup menempatkan hampir semua konfigurasi di /build.gradle
(di root proyek), termasuk untuk subproyek seperti android
atau html
, Liftoff hanya menempatkan konfigurasi bersama di root build.gradle
, menyimpan semua informasi versi yang dapat dikonfigurasi pengguna di /gradle.properties
, dan memindahkan konfigurasi per proyek ke /core/build.gradle
, /android/build.gradle
, /html/build.gradle
, dll. Liftoff juga memanggil proyek yang bergantung pada LWJGL3 lwjgl3
, karena Anda juga dapat membuat proyek yang bergantung pada LWJGL2, dan itu disebut lwjgl2
. Anda mungkin perlu mengubah referensi ke modul "desktop" (seperti panggilan gdx-setup LWJGL3) menjadi lwjgl3
, karena kemungkinan besar itulah modul desktop yang akan Anda gunakan.
Jika Anda menambahkan dependensi ke file build.gradle, Anda mungkin perlu menambahkannya ke /core/build.gradle
daripada /build.gradle
di root. Beberapa dependensi mungkin juga memerlukan bagian yang ditambahkan ke /lwjgl3/build.gradle
, /html/build.gradle
, dan seterusnya. Jika perpustakaan mengatakan untuk menambahkan baris ke bagian dependencies, itu hampir selalu berarti blok di dalam dependencies { }
, tapi tidak di dalam buildscript { }
. Seringkali terdapat dua blok dependensi, dan biasanya Anda menginginkan yang terakhir. Templat yang dipilih di Liftoff menangani ini secara otomatis.
Untuk lebih jelasnya cara menggunakan aplikasi dan cara kerjanya, lihat panduan penggunaan. Jika Anda ingin berkontribusi pada proyek ini, dokumen arsitektur mungkin berguna bagi Anda.
Saat mengirimkan permintaan tarik, harap format aplikasi dengan tugas ktlintFormat
Gradle.
Proyek ini diambil dari repositori czyzby/gdx-setup
. @czyzby dan @kotcrab membuat aplikasi asli, serta sekumpulan perpustakaan yang bergantung padanya (masing-masing gdx-lml
dan VisUI
). Sejak itu, proyek ini dikelola oleh @tommyettinger. Syukurlah, czyzby kembali dan membuat berbagai macam perbaikan, terima kasih banyak! Terima kasih juga kepada @metafore, yang sekarang mengelola gdx-lml (yang dulu dan mungkin masih digunakan).
@raeleus membuat skin Particle Park untuk scene2d.ui, yang diadaptasi menjadi skin default yang ditambahkan ke proyek baru (jika opsi "Hasilkan Aset UI" dipilih). "Accademia di Belle Arti di Urbino dan mahasiswa kursus MA desain Visual" telah membuat font Web Titillium yang digunakan kulit (di bawah lisensi SIL OFL). Oh ya, dan dia melakukan beberapa hal lain mulai dari versi 1.12.1.10, seperti hampir seluruh rilis . Terima kasih banyak kepada raeleus atas perombakan total pengalaman pengguna!
Kontributor proyek lainnya termasuk @Mr00Anderson, @lyze237, @metafore (sekali lagi!), dan @payne911. Orang-orang yang belum menyumbangkan kode secara langsung masih banyak membantu dengan meluangkan waktu mereka untuk menguji pada platform seperti macOS dan iOS; @JojoIce adalah salah satu dari beberapa orang yang membuat perbedaan mengenai iOS. Dan tentu saja, terima kasih banyak kepada semua pengguna awal yang telah menerima rilis yang masih berfungsi sebagian sejak dini!
Ikon acak yang dipotong dan digunakan untuk proyek Android berasal dari proyek OpenMoji. Jika Anda ingin menggunakan ikon-ikon ini dalam format yang tidak terlalu berantakan, ada openmoji-atlas untuk mengakses emoji ini dari libGDX dengan nyaman.
Terima kasih juga kepada semua orang yang telah membuat berbagai perpustakaan dan alat yang menjadi sandaran Liftoff. Dari tim besar yang bertanggung jawab atas Graal Native Image, hingga Construo yang terdiri dari satu tim, beberapa fitur terbaik Liftoff tidak ada dalam kode Liftoff sama sekali.
Semoga berhasil, dan kami harap Anda menghasilkan sesuatu yang hebat!