• Tidak ada hasil yang ditemukan

Membuat Video Game Dengan 3D Unity

N/A
N/A
Protected

Academic year: 2023

Membagikan "Membuat Video Game Dengan 3D Unity"

Copied!
514
0
0

Teks penuh

Saat membuat game dengan mesin game Unity, gunakan Asset Store Unity untuk mengunduh gambar sumber dan kode tambahan. Unity adalah mesin game berkualitas profesional yang digunakan untuk membuat video game yang menargetkan berbagai platform.

PERSONAL

Faktanya, bagi kebanyakan orang, akun pribadi dasar sudah lebih dari cukup dan menyediakan semua fitur dan fleksibilitas yang Anda butuhkan.

MENGUNDUH UNITY DAN KOMPONEN YANG DIPERLUKAN

Anda akan melihat berapa banyak ruang yang digunakan (sekitar 10,3 GB pada saat penulisan), dan jika Anda memilikinya di hard drive, Anda dapat melanjutkan dan mengklik Berikutnya lagi. Yang menjengkelkan, Anda tidak dapat memilih keluar dari Android Studio (karena Google), namun Anda dapat memutuskan apakah Anda menginginkan Android SDK dan perangkat virtual.

HARDWARE DAN ALUR KERJA

Ini mungkin bukan masalah besar jika Anda terutama mengembangkannya dalam 2D ​​(yang sebagian besar akan dibahas dalam buku ini), tetapi tentu tidak ada salahnya memberi diri Anda pilihan. Jika Anda lebih suka bekerja dengan laptop, carilah laptop dengan layar lebih besar (18,3 inci atau lebih besar) dan tenaga yang cukup untuk menanganinya.

MEMULAI INSTALASI PROYEK PERTAMA ANDA

Jika Anda berhasil melakukan semua ini, semuanya akan baik-baik saja pada awalnya dan Anda akan menemukan bahwa pekerjaan Anda berjalan semulus dan senyaman mungkin. Jika Anda belum melakukannya, klik tautannya (Buat satu) dan Anda akan dibawa ke halaman yang sesuai untuk mengaturnya.

CONTOH GAME YANG DIBUAT DENGAN UNITY

Karena persyaratan ini dan penerapan lintas platform Unity yang mudah, game konsol juga sering tersedia di desktop. Unity sering kali disajikan hanya sebagai daftar fitur tanpa pemrograman, yang merupakan pandangan menyesatkan yang tidak akan mengajarkan orang apa yang perlu mereka ketahui untuk membuat judul komersial.

CARA MENGGUNAKAN UNITY

Apa yang Anda lihat di sini tidak sama dengan tampilan di game yang sedang berjalan - Anda dapat melihat sekeliling adegan sesuai keinginan tanpa dibatasi oleh tampilan game. Anda dapat menyeret skrip ke objek dalam tampilan Hierarki, tampilan Tahap, atau tampilan Inspektur (dengan asumsi objek tersebut dipilih).

METODE

Sama seperti metode yang dapat mengembalikan variabel ke kode apa pun yang memanggilnya, kode pemanggil juga dapat meneruskan variabel. Bayangkan sebuah metode yang tidak menghasilkan apa pun dengan cara yang sama seperti pabrik yang tidak menghasilkan produk akhir.

INPUT

Anda kemudian dapat "membuat" kode Anda dalam Visual Studio menggunakan Ctrl+Shift+B (Command+Shift+B di Mac). Anda dapat menentukan kode kunci dari kunci tertentu yang Anda inginkan dengan membaca dokumentasi Unity.

PREFAB

Untuk membuat instance objek prefab dalam sebuah adegan, cukup klik dan seret objek tersebut ke tempatnya dalam tampilan adegan atau tampilan hierarki. Pada tampilan Hierarchy, klik dan drag objek Lamp game (berisi bola) ke tampilan Project.

MENEMUKAN JALAN DAN MEMBANGUN DEMO ANDA DI RUANG 3D

  • IDE DALAM UNITY
  • DUA CARA UNTUK MEMPERKENALKAN GAMEOBJECTS
  • ROTATION AND SCALE
  • KAMERA
  • SIMPAN PROYEK DAN SCENE

Tampilan ini menunjukkan kepada Anda permainan sebenarnya seperti yang ditayangkan secara langsung. Klik pada tampilan permainan Anda dan Anda akan melihat kotak dengan warna biru berbeda di latar belakang. Klik pada kamera dan Anda akan melihat pengaturan bernama Latar Belakang di Inspektur, yang saat ini berwarna biru.

MEMULAI DEMO 3D DENGAN CODING DAN MENAMBAHKAN FISIKA

MEMBANGUN DEMO YANG MENEMPATKAN ANDA DI RUANG 3D

MEMAHAMI RUANG KOORDINAT 3D

Sesuaikan posisi dan skala objek ini serta namanya untuk membuat lantai; Gambar 2.6 menunjukkan nilai yang ditetapkan untuk lantai di Inspektur (hanya kubus terlebih dahulu sebelum Anda memperluasnya). Jika Anda tersesat dalam suatu pemandangan, tekan F untuk mengatur ulang pandangan Anda ke objek yang dipilih saat ini. Misalnya, pada Gambar 2.7, semua dinding berada di bawah objek akar yang kosong, sehingga daftar hierarki akan terlihat terorganisir.

LAMPU DAN KAMERA

Lampu pengarah adalah jenis sumber cahaya yang semua sinar cahayanya disejajarkan dan diproyeksikan secara merata, menerangi segala sesuatu dalam pemandangan dengan cara yang sama. Saya sarankan menempatkannya jauh di atas ruangan sehingga secara intuitif terasa seperti matahari dan tidak mengganggu saat Anda mengatur pemandangan lainnya. Untuk lampu sorot, buatlah beberapa menggunakan menu yang sama dan letakkan di sekitar ruangan di tempat yang gelap, pastikan semua dinding menyala.

COLLIDER DAN SUDUT PANDANG PLAYER

Agar pemain dapat berjalan di sekitar lokasi kejadian, Anda akan menulis skrip gerakan yang melekat pada pemain. Tip Variabel publik diekspos di inspektur sehingga Anda dapat menyesuaikan nilai komponen setelah menambahkan komponen ke objek permainan. Mengingat kita dapat mendeskripsikan rotasi di sekitar sumbu X, Y, dan Z, ini berarti tiga parameter Rotate() adalah rotasi X, Y, dan Z.

RUANG KOORDINAT LOKAL VS. GLOBAL

Berbagai sumbu digambarkan pada Gambar 3.15 (perhatikan bagaimana "kiri" terhadap bidang adalah arah yang berbeda dari "kiri" ke dunia), namun cara termudah untuk memahami lokal dan global adalah melalui sebuah contoh. Pertama, kali ini kita tidak menggunakan Rotate(), jadi kita memerlukan variabel (disebut _rotationX di sini karena berputar secara vertikal di sekitar sumbu X) untuk menyimpan sudut rotasi. Metode memutar() mengotomatiskan proses ini untuk kita, menambah sudut rotasi dan kemudian membuat vektor baru.

SUDUT EULER VS. QUATERNION

Melihat sekeliling sebagai respons terhadap masukan mouse adalah bagian penting dari kontrol orang pertama, tetapi Anda baru setengah jalan. Coba ubah nilai parameter untuk melihat bagaimana pergerakannya berubah (terutama coba tukar angka pertama dan kedua); setelah bereksperimen sedikit, Anda dapat melanjutkan dengan menambahkan input keyboard. Masukkan kode gerakan baru ini dan Anda akan dapat bergerak dengan menekan tombol panah atau tombol huruf WASD, standar di sebagian besar game FPS.

MENYETEL LAJU GERAKAN YANG TIDAK BERGANTUNG PADA KECEPATAN KOMPUTER KOMPUTER

Tombol panah kiri/kanan dan huruf A/D ditetapkan ke Horizontal, sedangkan tombol panah atas/bawah dan huruf W/S ditetapkan ke Vertikal. Seperti yang mungkin Anda perhatikan saat bereksperimen dengan metode Translate(), koordinat X bergerak maju mundur dan koordinat Z bergerak maju mundur.

MEMINDAHKAN CHARACTERCONTROLLER UNTUK DETEKSI COLLISION

Pengertian Transform yang digunakan sebagai kata kerja berarti mengubah dari satu ruang koordinat ke ruang koordinat lainnya (lihat bagian 2.3.3 jika Anda tidak ingat apa itu ruang koordinat). Ini bagus jika Anda ingin pemainnya terbang mengelilingi lokasi kejadian, namun bagaimana jika Anda ingin pemainnya berjalan-jalan di tanah. Karena objek pemain sekarang hanya berputar secara horizontal, tidak ada lagi masalah dengan kemiringan gravitasi ke bawah.

MEMOLES SKRIP YANG SUDAH JADI

Deklarasikan variabel gravitasi dan kemudian gunakan nilai gravitasi tersebut untuk sumbu Y seperti yang ditunjukkan dalam daftar berikut. Saya membuat sprite tanah kedua dengan cara yang persis sama seperti yang pertama dan kemudian menyalinnya ke mana pun saya membutuhkan tanah di bawah permukaan rumput saya. Anda juga dapat menggunakan Ctrl untuk membuat pilihan massal, seperti yang Anda lakukan di sebagian besar program Windows.

MEMULAI CODING DALAM C#

Sekarang klik mainkan dan Anda akan menemukan bahwa Squarey terus bergerak ke kanan dan kemudian menuruni tangga menuju kehancuran terakhirnya. Coba atur nilai ini ke -1 dan Anda akan melihat bahwa Squarey sekarang bergerak ke arah yang berlawanan, menjauh dari tangga dan menuju penurunan tiba-tiba. Sekarang mainkan permainannya dan Anda akan menemukan bahwa Squarey bisa melompat - tetapi hanya jika dia berada di tanah yang kokoh.

MENAMBAHKAN MUSUH DAN MENGEMBANGKAN GRAFIS GAME 3D

MEMOTRET MELALUI RAYCAST

Dengan kata lain, lampu sorot menerangi apa yang ada di depannya dan membiarkan segala sesuatunya tetap gelap. Alternatifnya, jika Anda sudah memiliki cahaya dalam pemandangan, Anda dapat mengubah jenisnya menjadi Spot dan menjadikannya sorotan. Alternatifnya, jika Anda sudah memiliki lampu dalam sebuah pemandangan, Anda dapat mengubah jenisnya menjadi Directional dan itu akan menjadi direction.

MEMBUAT CAHAYA DARI OBJEK

Faktanya, Anda menggunakan cahaya terarah seperti matahari di Jam 4, "Medan dan Lingkungan". Cahaya dari cahaya terarah memancar secara merata dalam garis paralel di seluruh pemandangan. Cara alternatif untuk menambahkan cahaya ke objek adalah dengan memilih objek dan memilih Component > Render > Light. Jika Anda tidak ingin menggunakan tekstur khusus untuk lingkaran cahaya, Anda dapat membiarkannya kosong dan menggunakan lingkaran default.

KAMERA

Tambahkan highlight ke kamera utama dengan memilih Main Camera, lalu klik Component > Render > Glow dan ubah jenisnya menjadi Spot. Dengan kamera utama dipilih, klik dan seret tekstur biohazard ke properti cookie komponen cahaya. Objek yang jaraknya lebih dekat dari medan dekat atau lebih jauh dari medan jauh tidak akan terlihat.

LAYERS

Meskipun lapisan bawaan tidak berguna bagi Anda saat ini, Anda dapat dengan mudah membuka kuncinya dengan tiga cara berbeda: Dengan mengklik pemilih lapisan pada toolbar tampilan pemandangan (lihat Gambar 5.9), Anda dapat memilih lapisan mana yang ditampilkan dalam tampilan pemandangan dan mana yang tidak. Hal terakhir yang perlu Anda ketahui tentang lapisan adalah Anda dapat menggunakannya untuk menentukan apa yang dapat dilihat dan tidak dapat dilihat oleh kamera.

RAYTRACING - APA ITU RAYCASTING?

Pesan konsol ini menunjukkan koordinat 3D dari titik di mana pancaran sinar mengenai (nilai XYZ yang kita bahas di Bab 2). Langkah kita selanjutnya adalah menambahkan dua jenis indikator visual: titik bidik di tengah layar dan tanda di tempat terkena sinar. Memanggil SphereIndicator() dari kode raycasting memastikan bahwa akan ada indikator visual yang menunjukkan dengan tepat di mana sinar tersebut mengenai.

MEMBUAT SKRIP TARGET REAKTIF

Sinar pertama ditembakkan melalui bagian tengah layar, tapi kali ini akan menembak ke depan di depan karakter; Gambar 3.6 mengilustrasikan hal ini. Buat skrip baru bernama WanderingAI, lampirkan ke objek target (bersama dengan skrip ReactiveTarget), dan tulis kode dari daftar berikut. Salah satu kekhasan dari perilaku saat ini adalah musuh terus bergerak maju setelah terkena pukulan.

STRUKTUR KODE AI

Seperti yang sudah dijelaskan pada bagian sebelumnya, langkah pertama dalam membuat prefab adalah membuat objek pada scene yang akan menjadi prefab, jadi mari kita buat bola api. Kode yang menciptakan bola api ketika belum ada di tempat kejadian bertindak sebagai kode yang berfungsi. Seperti yang ditunjukkan pada Gambar 3.11, seret Fireball Prefab dari Project ke slot Fireball Prefab di Inspector (sekali lagi, seperti yang Anda lakukan dengan SceneController).

MEMAHAMI ASET SENI

Kita akan membahas cara kerjanya untuk model yang lebih kompleks nanti di bab ini, namun untuk level kotak putih, gambar 2D akan bertindak sebagai wallpaper yang menutupi dinding (lihat Gambar 4-40). Seperti yang dapat Anda lihat dari persamaan pada Gambar 4-4, teksturnya mengubah konstruksi digital yang tidak nyata menjadi dinding bata. Ini menyalin file ke dalam proyek Unity Anda (lihat Gambar 4-42), di mana file tersebut diimpor sebagai tekstur dan dapat digunakan dalam adegan 3D.

APA ITU SKYBOX?

Ada satu pengaturan impor halus yang dapat Anda sesuaikan; klik tekstur yang diimpor untuk melihat propertinya di Inspector, dan ubah pengaturan Wrap Mode (ditunjukkan pada Gambar 4-13) dari Loop ke Clip (jangan lupa klik Apply setelah selesai). Unduhan sampel mencakup file .blend untuk Anda gunakan; Gambar 4.14 menunjukkan model sofa di Blender. Material ini secara default kosong (seperti material baru lainnya), jadi tetapkan tekstur bangku (ditunjukkan pada Gambar 4-16) dengan cara yang sama seperti sebelumnya Anda menetapkan batu bata ke dinding: seret gambar tekstur ke dalam proyek untuk mengimpornya ke Kesatuan dan tarik tekstur yang ada, diimpor ke dalam slot tekstur material sofa.

MENGANIMASIKAN KARAKTER DENGAN MECANIM

Anda akan melihat pada gambar 5.7 bahwa objek peta belakang hanya memiliki dua komponen, komponen Transform default pada semua objek dalam adegan, dan komponen baru yang disebut Sprite Renderer. Dapatkan semua gambar yang diperlukan dari contoh unduhan (lihat gambar 4.76) dan kemudian impor gambar tersebut ke proyek Anda. Seperti yang ditunjukkan pada gambar 6.6, seret sprite (ingat, bukan tekstur!) dari tampilan Proyek untuk menetapkan gambar ke objek.

Referensi

Dokumen terkait

Sedangkan fraksi 36 etil asetat, metanol dan air yang bersifat polar juga memiliki efek sinergis terhadap amoxicillin dan chloramphenicol sedangkan fraksi 35 hanya sinergis terhadap