Total Tayangan Halaman

Minggu, 17 Mei 2020

9. UI System | Pemrograman Permainan dengan UNITY

Unity memiliki kelemahan dalam hal UI (user interface). Class GUI yang dimiliki Unity mengharuskan programmer berusaha lebih keras hanya untuk membuat sebuah tombol dan interaksinya. Tetapi sejak versi 4.6 Unity mengeluarkan fitur UI yang sangat baik. Kini pembuatan user interface di Unity semudah drag and drop.

Buatlah project baru di Unity atau cukup scene baru saja jika masih ingin menggunakan project yang sudah digunakan dalam materi sebelumnya. Tambahkan sebuah panel dengan cara klik menu GameObject > UI > Panel.



Semua object UI memiliki satu mekanisme unik yang disebut dengan Anchor. Misalnya untuk panel yang baru saja kita pasang. Kita bisa melihatnya pada panel Transform bahwa secara default Anchor yang dimilikinya adalah Strecth x Strecth.



Gunakan Hand Tool standar dan gunakan mouse (klik kanan dan kiri) untuk mendapatkan pandangan Scene seperti di bawah ini.



Anchor tersebut akan membuat panel yang dibuat akan ikut membesar secara horizontal dan vertikal sesuai dengan ukuran layar game. Kita bisa mengubah jenis Anchor dengan klik kotak penanda Anchor. Misalnya mengubah pilihan pada Top x Left kemudian geser panelnya pada ujung kiri atas. Pilihan ini akan membuat panel ‘menempel’ pada posisi kiri atas Canvas. Tak peduli ukuran layar game berubah-ubah.

Untuk mencobanya silahkan ubah ukuran layar game.



Contoh lainnya misalnya adalah kebalikannya yaitu Top-Right. Ubahlah Anchor panel menjadi Top-Right dan geser panel sampai ujungnya mendekati posisi kanan atas. 

Jalankan game dan ubahlah layar tab game, bisa perhatikan kini bahwa panel akan berusaha untuk selalu menyesuaikan dengan ujung layar game sebelah kanan atas?

Baiklah sekarang kembalikan lagi Anchor menjadi Strecth x Strecth lalu lanjutkan materi berikutnya.
Selanjutnya kita akan membuat tombol. Caranya klik menu GameObject > UI > Button.
Pasang Button sebagai child dari Panel dengan cara drag langsung pada tab Hierarchy.



Jalankan game dan coba geserkan tab Game, lalu perhatikan hasilnya. Meski ukuran panel mengikuti layar game namun posisi dan ukuran button tidak. Hal terpenting yang harus diingat adalah Anchor bekerja untuk setiap objek UI sehingga kita harus mengaturnya satu persatu.

Menguasai Anchor merupakan dasar terpenting dalam penggunaan UI pada Unity. Prosesnya cukup rumit dan mudah, kita hanya perlu sedikit lebih teliti.
Selanjutnya buat sebuah InputField dengan cara klik menu GameObject > UI > InputField. GameObject ini berfungsi untuk menerima inputan dari user.



Tempatkan Inputfield pada panel dan sesuaikan posisinya sesuai keinginan.



Klik GameObject PlaceHolder yang merupakan child dari GameObject InputField pada tab Hierarchy, lalu klik tab Inspector dan pada panel Text ganti parameter Textnya menjadi “Masukkan Nama Anda...”



Selanjutnya tambahkan sebuah Text dengan cara klik menu GameObject > UI > Text.
Tempatkan text sebagai child dari panel.
Atur posisi sesuai kebutuhan.



Anda juga bisa mengganti text yang ada pada Button dengan klik pada Text pada child Button, klik Inspector lalu ubah parameter Text sesuai kebutuhan.



Selanjutnya kita akan buat Script C# baru dan beri nama KlikUI.cs lalu ubah script seperti di bawah ini:



Selanjutnya pasang script pada GameObject. Kita bisa pasang di sembarang GameObject, misalnya saja kita pasang pada Canvas, lalu sesuaikan dua buah parameter public yang dibuat tadi dengan GameObject yang telah kita buat sebelumnya di Scene.

Untuk memudahkan, silahkan ganti nama GameObject Text yang menjadi TextTarget.



Selanjutnya klik Button pada Scene, cari panel event OnClick() pada tab Inspector, klik tombol + di pojok kanan bawah.



Masukkan GameObject yang diberi script (dalam hal ini Canvas) pada parameter Object, dan klik combobox yang bertuliskan No Function dan pilih KlikUI. Dalam hal ini KlikUI adalah script yang dipasang pada GameObject Canvas. Pilih fungsi ClickMe(). Dengan begini, fungsi ClickMe() akan dipanggil jika Button ditekan.



Pada dasarnya, semua fungsi yang dipasang sebuah GameObject yang dipasangkan pada event OnClick akan muncul pada combobox ini.
Jalankan Game, isi InputField dengan nama seseorang dan klik buttonnya. Terlihat hasilnya?

Itu saja yang dapat saya sampaikan. Silahkan komentar jika ada yang ingin ditanyakan.
Mampir juga ke web Universitas Budi Luhur: www.budiluhur.ac.id
Universitas Terbaik di Jakarta 😄







Tidak ada komentar: