ADS

Menyiapkan Area Permainan

 

Menyiapkan Area Permainan

Pada bagian pertama ini, kita akan menyiapkan area permainan. Mari kita mulai dengan mengimpor aset awal dan menyiapkan latar permainan.

Kami telah menyiapkan proyek Godot dengan model 3D dan suara yang akan kami gunakan untuk tutorial ini, yang ditautkan di halaman indeks. Jika Anda belum melakukannya, Anda dapat mengunduh arsip di sini: Aset Squash the Creeps .

Setelah Anda mengunduhnya, ekstrak arsip .zip di komputer Anda. Buka Godot Project Manager dan klik tombol Import .

../../_images/01.import_button.webp

Pada jendela pop-up impor, masukkan jalur lengkap ke direktori yang baru dibuat squash_the_creeps_start/. Anda dapat mengeklik tombol Browse di sebelah kanan untuk membuka peramban berkas dan menavigasi ke project.godotberkas yang ada di dalam folder tersebut.

../../_images/02.browse_to_project_folder.webp

Klik Impor & Edit untuk membuka proyek di editor.

../../_images/03.import_and_edit.webp

Jendela yang memberitahukan Anda bahwa proyek tersebut dibuat oleh versi Godot yang lebih lama mungkin akan muncul. Klik Convert Full Project untuk mengonversi proyek ke versi Godot Anda saat ini.

../../_images/import_project_to_4.x_prompt.webp

Proyek awal berisi ikon dan dua folder: art/dan fonts/. Di sana, Anda akan menemukan aset seni dan musik yang akan kita gunakan dalam permainan.

../../_images/04.start_assets.png

Ada dua model 3D, player.glbdan mob.glb, beberapa material yang termasuk dalam model ini, dan trek musik.

Menyiapkan area yang dapat dimainkan

Kita akan membuat adegan utama dengan Node biasa sebagai akarnya. Di dock Scene , klik tombol Add Child Node yang diwakili oleh ikon "+" di kiri atas dan klik dua kali pada Node . Beri nama node Main. Metode alternatif untuk mengganti nama node adalah dengan mengklik kanan pada Node dan memilih Rename (atau F2). Atau, untuk menambahkan node ke adegan, Anda dapat menekan pada macOS).Ctrl + ACmd + A

../../_images/05.main_node.png

Simpan pemandangan main.tscndengan menekan pada macOS).Ctrl + SCmd + S

Kita akan mulai dengan menambahkan lantai yang akan mencegah karakter jatuh. Untuk membuat penumbuk statis seperti lantai, dinding, atau langit-langit, Anda dapat menggunakan simpul StaticBody3D . Mereka memerlukan simpul anak CollisionShape3D untuk menentukan area tumbukan. Dengan Mainsimpul yang dipilih, tambahkan simpul StaticBody3D , lalu CollisionShape3D . Ubah nama StaticBody3D menjadi Ground.

../../_images/adding_static_body3D.webp

Pohon adegan Anda akan terlihat seperti ini

../../_images/06.staticbody_node.png

Tanda peringatan di sebelah CollisionShape3D muncul karena kami belum menentukan bentuknya. Jika Anda mengklik ikon tersebut, akan muncul popup yang memberi Anda informasi lebih lanjut.

../../_images/07.collision_shape_warning.png

Untuk membuat bentuk, pilih simpul CollisionShape3D , buka Inspektur dan klik bidang <kosong> di samping properti Bentuk . Buat BoxShape3D baru .

../../_images/08.create_box_shape3D.jpg

Bentuk kotaknya sangat cocok untuk tanah datar dan dinding. Ketebalannya membuatnya andal untuk memblokir objek yang bergerak cepat sekalipun.

Kerangka kotak muncul di viewport dengan tiga titik oranye. Anda dapat mengeklik dan menyeretnya untuk mengedit luasan bentuk secara interaktif. Kita juga dapat mengatur ukuran secara tepat di inspektur. Klik BoxShape3D untuk memperluas sumber daya. Atur Ukurannya ke pada 60sumbu X, 2untuk sumbu Y, dan 60untuk sumbu Z.

../../_images/09.box_size.webp

Bentuk tabrakan tidak terlihat. Kita perlu menambahkan lantai visual yang sesuai dengannya. Pilih Groundnode dan tambahkan MeshInstance3D sebagai anaknya.

../../_images/10.mesh_instance3d.png

Di Inspektur , klik bidang di sebelah Mesh dan buat sumber daya BoxMesh untuk membuat kotak yang terlihat.

../../_images/11.box_mesh.webp

Sekali lagi, ukurannya terlalu kecil secara default. Klik ikon kotak untuk memperluas sumber daya dan atur Ukurannya menjadi , 602dan 60.

../../_images/12.cube_resized.png

Anda akan melihat lempengan abu-abu lebar yang menutupi kisi serta sumbu biru dan merah di area pandang.

Kita akan memindahkan tanah ke bawah sehingga kita dapat melihat kisi lantai. Untuk melakukan ini, fitur snap grid dapat digunakan. Snap grid dapat diaktifkan dengan 2 cara di editor 3D. Yang pertama adalah dengan menekan tombol Use Snap (atau menekan Ytombol). Yang kedua adalah dengan memilih node, menyeret handle pada gizmo lalu menahannya Ctrlsambil tetap mengklik untuk mengaktifkan snap selama Ctrlditahan.

../../_images/gunakan_snap.webp

Mulailah dengan mengatur snapping dengan metode pilihan Anda. Kemudian gerakkan Groundnode menggunakan sumbu Y (panah hijau pada gizmo).

../../_images/move_gizmo_y_axis.webp

Catatan

Jika Anda tidak dapat melihat manipulator objek 3D seperti pada gambar di atas, pastikan Mode Pilih aktif di bilah alat di atas tampilan.

../../_images/14.select_mode_icon.png

Pindahkan ground ke bawah 1meter, agar grid editor terlihat. Label di sudut kiri bawah viewport memberi tahu Anda seberapa banyak Anda menerjemahkan node.

../../_images/15.translation_amount.png

Catatan

Memindahkan simpul Ground ke bawah akan memindahkan kedua anak bersamanya. Pastikan Anda memindahkan simpul Ground , bukan MeshInstance3D atau CollisionShape3D .

Pada akhirnya, Groundtransform.position.y seharusnya adalah -1

../../_images/ground_down1meter.webp

Mari tambahkan cahaya terarah agar pemandangan kita tidak sepenuhnya berwarna abu-abu. Pilih simpul Main dan tambahkan simpul anak DirectionalLight3D .

../../_images/create_direction_light3d.webp

Kita perlu memindahkan dan memutar simpul DirectionalLight3D . Pindahkan ke atas dengan mengeklik dan menyeret panah hijau manipulator dan klik serta seret pada busur merah untuk memutarnya di sekitar sumbu X, hingga tanah menyala.

Di Inspektur , aktifkan Bayangan -> Diaktifkan dengan mengklik kotak centang.

../../_images/16.turn_on_shadows.webp

Pada titik ini, proyek Anda akan terlihat seperti ini.

../../_images/17.project_with_light.webp

Itulah titik awal kita. Di bagian selanjutnya, kita akan mengerjakan adegan pemain dan gerakan dasar.

Tidak ada komentar:

Posting Komentar