Unlimited WordPress themes, graphics, videos & courses! Unlimited asset downloads! From $16.50/m
Advertisement
  1. Game Development
  2. Programming
Gamedevelopment

Avatar Dinamis di Unity

by
Difficulty:IntermediateLength:MediumLanguages:

Indonesian (Bahasa Indonesia) translation by ⚡ Rova Rindrata (you can also view the original English article)

Dalam tutorial ini saya akan menunjukkan kepada Anda cara membuat menu kustomisasi karakter yang sederhana, dan bagaimana cara menyimpan data yang diperlukan untuk digunakan dalam sebuah permainan. Kita akan membuat avatar pemain (pesawat dalam contoh ini), menyesuaikannya dengan menambahkan lampiran opsional atau mengubah warna, menyimpan data, memuat level lain, dan membuatnya kembali dari data yang disimpan. Ini secara efektif memungkinkan Anda untuk menyesuaikannya di luar dunia permainan; dalam sistem menu, sehingga tersedia di mana pun yang Anda inginkan, bahkan setelah berhenti dan memulai kembali permainannya.


Klik tombol untuk mengubah avatar Anda.

Anda akan membutuhkan pemahaman dasar tentang Unity untuk ini. Jika Anda ingin memodelkan obyek Anda sendiri, Anda dapat melakukannya juga, tetapi model 3d yang digunakan dalam tutorial ini juga tersedia untuk Anda unduh di sini. Seluruh proyek, jika Anda ingin mencari sesuatu, juga dapat diunduh di sini.


Menyiapkan Proyek

Buat proyek Unity baru. Kita akan membutuhkan 2 tingkatan di sana, sehingga kita dapat beralih di antara mereka. Simpan adegan saat ini dan beri nama "levelMenu". Kemudian buka pengaturan build (file -- build settings) dan tekan "add current scene". Ini diperlukan agar nanti kita dapat mengaksesnya dan memuatnya secara langsung.

Kemudian buat adegan baru dan beri nama "levelGame", dan tambahkan juga ke pengaturan build. Sekarang, adegan dasar harus ada, memungkinkan kita untuk mengisinya dengan berbagai hal.

cc01

Membuat Pesawat

Kita akan menggunakan pesawat terbang sebagai "karakter" untuk saat ini (ini jauh lebih mudah untuk ditangani daripada manusia sepenuhnya :). Dapatkan aset-3d (di sini lagi) dan salin ke folder aset Anda. Buat kubus, dan tukar mesh untuk plane-mesh. Buat material baru dan tambahkan ke pesawat. Akhirnya, seret pesawat ke folder proyek untuk membuat prefab darinya.


GUI Kustomisasi Avatar

Untuk menyesuaikan pesawat, kita perlu semacam antarmuka.

Buat skrip baru dan beri nama plane.js. Masukkan kode berikut ke dalamnya

Tambahkan skrip ke plane-prefab, dan letakkan pesawat di adegan. Pindahkan kamera sehingga melihat pesawat, sehingga kita bisa melihat perubahan yang akan kita lakukan padanya. Ketika Anda menjalankannya, apakah akan terlihat seperti ini:

cc05

Jika Anda menekan tombol, warna pesawat akan berubah. Anda dapat mencobanya di build ini: UNDUH PROYEK SUMBER 1.

Tanda kurung if(Application.loadedLevel == 0) menonaktifkan tombol jika level lain kecuali menu (level 0) dimuat. Ini berguna untuk mengelola sistem gui.


Memuat Level Selanjutnya

Di "levelGame" Anda, letakkan pesawat lain, dan buat kamera melihatnya. Jika Anda mencobanya, belum ada yang terjadi, karena kita belum menambahkan adaptasi ke data yang disimpan. Saat Anda berada di sana, buat adegan berbeda dari adegan "levelMenu", sehingga membedakan keduanya lebih mudah. Cukup memberikan warna latar belakang yang berbeda pada Main Camera.

Sekarang kembali ke level "levelMenu", semuanya akan dilakukan dari sana. Buka skrip plane dan tambahkan baris berikut ke sana, tepat di bawah kode untuk tombol:

Cobalah! Sebuah tombol baru akan muncul, dan jika Anda menekannya, itu akan memuat level baru. Pesawat di tingkat lain akan memiliki tampilan "dasar". Langkah selanjutnya adalah menyesuaikannya begitu level telah dimuat.


Menyimpan Data Avatar

Unity hadir dengan fungsi "PlayerPrefs". Ini memungkinkan untuk menyimpan dan memuat data pada perangkat apa pun yang digunakan. Pertama kita akan menyimpan warna pesawat, dan kemudian melihat tentang membuatnya kembali pada level kedua yang dimuat.

Sesuaikan tombol muat level agar terlihat seperti ini:

Saat mengklik tombol "load level", permainan sekarang akan menyimpan komponen warna merah, hijau dan biru sebagai tiga nilai terpisah. Merah akan disimpan sebagai "planeColorR", hijau akan disimpan sebagai "planeColorG", dan biru disimpan sebagai "planeColorB". Nilai-nilai ini disimpan di luar permainan di komputer (atau perangkat apa pun ini akan berjalan, seperti perangkat iOS, Android atau Ouya), dan dapat diambil kapan saja.


Mengadaptasi Avatar Pemain ke Data yang Disimpan

Bukan menambahkan kode ini ke skrip:

Ketika level sedang dimulai, pesawat akan mendapatkan data warna yang disimpan, dan menerapkannya ke pesawat. Jika Anda mencobanya sekarang, dan itu tampak hitam, itu karena belum ada data yang disimpan! Untuk mencegah ini, Anda dapat mengaturnya agar hanya beradaptasi di tingkat kedua:


Aksesoris

Mari kita lakukan beberapa hal lain untuk menyesuaikan pesawat! Dalam file-3d Anda juga akan menemukan beberapa bom. Kita akan membuatnya sehingga mereka bisa diletakkan di bawah pesawat dan disimpan juga.

Mulailah dengan membuat obyek bom. Buat kubus dan tukarkan mesh untuk mesh-bom. Tambahkan warna abu-abu, dan kemudian induk rudal ke pesawat dan pusatkan di bawahnya. Seharusnya terlihat seperti ini:

cc04

Jika Anda menekan "apply" saat pesawat berada di inspector, bom baru akan ditambahkan ke prefab, dan pesawat di tingkatan "levelGame" akan diperbarui secara otomatis juga.

Sekarang tambahkan baris ini ke skrip:

Sebelum mencobanya, ingatlah untuk menyeret obyek "bomb" di adegan ke slot "bombs" di pesawat, jika tidak, itu tidak akan berhasil.

cc03

Seluruh skrip akan terlihat seperti ini:

Ketika Anda menekan tombol "load level" sekarang, keadaan bom disimpan. Saat memulai level baru, bom kemudian dinonaktifkan atau diaktifkan, tergantung pada status yang disimpan. Anda dapat mencobanya di build ini: UNDUH PROYEK SUMBER 2.


Kesimpulan

Kita sudah selesai! Sekarang Anda tahu cara 

  • menyesuaikan sebuah "karakter"
  • simpan data ke perangkat apa pun yang dijalankan permainan
  • buat ulang karakter dengan data yang disimpan

"Karakter" pemain yang disesuaikan ini akan tersedia kapan saja selama permainan.

Kita telah hanya menggunakan pesawat terbang sederhana sebagai contoh "karakter" kita, tetapi itu bisa apa saja. Perahu, mobil, manusia, hewan, bahkan hal-hal sederhana, seperti kubus atau bola, dapat digunakan untuk mewakili pemain Anda dalam permainan Anda. Ini juga dapat digunakan untuk menyesuaikan item lain, seperti senjata, kendaraan, kebiasaan, gaya rambut, atau bahkan dekorasi di rumah besar yang terus-menerus. Bersenang-senanglah!

Advertisement
Advertisement
Advertisement
Advertisement
Looking for something to help kick start your next project?
Envato Market has a range of items for sale to help get you started.