Panduan / Bangunan & Sumber Daya
Menyembunyikan dan mengubah ukuran elemen HUD dengan resource pack
Hotbar, crosshair, dan bilah XP semuanya berada dalam satu atlas tekstur. Berikut cara membuat sebagiannya tak terlihat, apa yang tidak bisa dipindahkan, dan trik font untuk teks HUD kustom.
Tidak ada konfigurasi untuk menyembunyikan hotbar. Yang ada adalah tekstur — dan membuat sebagiannya transparan akan menghilangkannya secara visual sementara semuanya tetap berfungsi.
Semuanya ada dalam satu folder
assets/minecraft/textures/gui/sprites/hud/
Versi modern memecah atlas widgets.png lama menjadi sprite-sprite individual: hotbar.png, crosshair.png, experience_bar_background.png, heart/full.png, dan seterusnya. Mengganti salah satunya dengan PNG yang sepenuhnya transparan dengan dimensi yang sama akan menyembunyikannya.
Dimensi yang sama penting untuk apa pun yang kamu gambar. Sprite meregang untuk mengisi slotnya secara default, jadi kanvas yang lebih kecil dengan gambar yang terlihat di dalamnya akan tampak buram. Sprite yang sepenuhnya transparan akan tersembunyi pada ukuran apa pun — tidak ada yang bisa diburamkan.
Apa yang bisa dan tidak bisa kamu lakukan
Bisa:
- menyembunyikan elemen apa pun dengan membuat sprite-nya transparan
- mengubah gaya semuanya — hati yang berbeda, crosshair minimalis, hotbar bertema
- mengubah ukuran tampilan dengan menggambar konten yang lebih kecil di dalam kanvas berukuran sama
Tidak bisa:
- memindahkan elemen. Posisinya di-hardcode; hanya artwork-nya yang berupa data.
- menyembunyikan slot hotbar secara terpisah dari framenya — keduanya satu sprite.
- mengubah fungsi sebuah slot. Ini hanya kosmetik, dan itemnya tetap bisa dipilih.
Poin terakhir itu perlu dinyatakan dengan jelas: hotbar yang tersembunyi tetap sebuah hotbar. Ini bukan pembatasan inventaris, dan pemain tetap bisa menggunakan slot-slotnya.
Jebakan nine-slice
Sebagian sprite GUI bersifat nine-sliced — sudutnya tetap, tepinya diregangkan. Di HUD, hanya latar belakang locator bar yang demikian; sebagian besar tombol dan kotak di tempat lain dalam gui/sprites/ juga demikian. Sebuah .mcmeta di samping PNG mendeklarasikan bordernya:
{ "gui": { "scaling": { "type": "nine_slice", "width": 200, "height": 20,
"border": { "left": 2, "top": 2, "right": 2, "bottom": 2 } } } }
Ganti sprite semacam itu tanpa mencocokkan mcmeta-nya dan hasilnya akan meregang dengan salah. Salin .mcmeta vanilla bersama PNG-mu jika ragu.
Teks HUD kustom melalui font
Trik yang benar-benar ampuh: tentukan penyedia font yang glifnya berupa gambar, lalu cetak karakter-karakter tersebut dengan /title atau bossbar. Teksnya akan dirender sebagai artwork-mu.
assets/minecraft/font/default.json
Letakkan di namespace minecraft dan penyediamu akan digabungkan dengan font default vanilla. Jika kamu memakai namespace sendiri, setiap komponen teks yang menggunakannya harus menyebutkannya, dengan "font":"my_pack:default".
{ "providers": [
{ "type": "bitmap", "file": "my_pack:font/icons.png", "ascent": 8, "height": 9,
"chars": [""] }
] }
Gunakan codepoint private-use ( ke atas) agar tidak ada yang bertabrakan dengan teks asli. Lalu /title @a actionbar {"text":""} akan menggambar gambarmu di action bar.
Beginilah cara server menampilkan bilah kesehatan kustom, ikon mata uang, dan meter progres tanpa mod di sisi klien — hanya dengan resource pack.
Font ruang negatif
Tentukan glif dengan advances negatif dan kamu bisa memindahkan kursor ke belakang, menumpuk gambar di atas satu sama lain. Itulah teknik di balik HUD server yang tampak seperti antarmuka sungguhan. Rumit, dan itu satu-satunya cara untuk memposisikan apa pun.
Sembunyikan atau ubah gaya elemen HUD dan buat penyedia font dengan codepoint yang dialokasikan untukmu di HUD Customizer & Font Pack Maker.