MULTIMEDIA
MODUL III
MEMBERIKAN EFEK GRAVITASI, BENTURAN, TOMBOL
KONTROL, DAN EFEK KAMERA PADA OBJECT
Oleh :
Nama : Syaiful Bahri
NPM
: 2014520007
LEMBAR PENGESAHAN
PRAKTIKUM
: MULTIMEDIA
MODUL KE-
: III (Tiga)
JUDUL MODUL
TANGGAL PRAKTIKUM
: 22/10/2016
NAMA
: Syaiful Bahri
NPM
: 2014520007
NILAI
Akhmad Tzauri
Mengetahui,
Dosen Praktikum
HASIL PRAKTIKUM
Setelah mempelajari apa itu Node dan Scene, serta bagaimana memasukkan gambar
dan tulisan dalam project godot di modul II sebelumnya, kali ini pada modul III kita
mempelajari bagaimana memberikan efek jatuh/gravitasi, benturan, tombol kontrol dan
efek kamera pada object(gambar).
Sebelum kita memberikan efek-efek yang di sebutkan diatas, terlebih dahulu kita buat
project baru dan buatlah Node serta simpanlah seperti langkah-langakah yang kita pelajari
di modul sebelumnya.
A. Memberikan Efek Jatuh/Gravitasi Pada Object
1. Setelah scene project sudah siap, terlebih dahulu sebelum memberikan efek
gravitasi kita letakkan object gambar pada scene di turunan Node2D seperti pada
modul II sebelumnya.
3. Setelah itu pada Scene ubahlah Sprite menjadi turunan dari RigidBody2D dengan
cara klik drag and drop Sprite ke RigidBody2D hingga posisi seperti pada gambar
dibawah ini.
4. Setelah kita jalankan project maka object yang kita posisikan di atas akan jatuh
seperti halnya ada gravitasi, kita juga dapat mengatur seberapa cepat object itu
jatuh dengan mengubah nilai berat/weight dari RigidBody2D melalui inspector.
3. Setelah gambar tanah/papan sudah siap maka letakkan object gambar pada scene di
turunan Node2D seperti pada penjelasan sebelumnya.
4. Untuk menghindari kebingungan ubahlah nama node Sprite object sesuai keinginan
dengan klik 2x pada node dan masukkan nama baru , disini untuk object yang jatuh
saya beri nama objek dan yang satunya saya beri nama tanah.
5. Masih pada turunan Node2D buatlah Node baru, karena tanah/papan ini kita buat
tidak bergerak atau diam maka pilihlah StaticBody2D.
6. Setelah itu pada turunan StaticBody2D kita buat Node baru yaitu CollisionShape2D.
7. Pada inspector CollisionShape2D, ubahlah Shape yang tadinya bernilai null menjadi
New RetangleShape2D.
10. Setelah kita jalankan project maka object yang kita posisikan di atas akan jatuh dan
mendarat pada object yang di bawah yang kita ilustrasikan sebagai tanah.
2. Buatlah Button/tombol apa yang akan kita buat dengan cara klik Scene Project
Settings pilih Input Map.
3. Pada kolom Action kita ketik nama button/tombol yang akan dibuat, nama tombol
boleh di bisi sesuai keinginan, disini saya beri nama btn_left untuk tombol geser
ke kiri, dan btn_right untuk tombol geser ke kanan.
4. klik tanda + pada tombol yang kita buat, karena kita ingin menggerakkan object
dengan tombol panah pada keyboard maka kita pilih Key.
5. Jika muncul jendela Confirm maka kita tekan panah pada keyboard, tekan tombol
panah kanan untuk btn_right dan sebaliknya. Ulangi langkah 3-5 untuk tombol
satunya, jika selesai klik Close.
extends RigidBody2D
export var speed = 200;
var btn_left = Input.is_action_pressed("btn_left")
var btn_right = Input.is_action_pressed("btn_right")
func _ready():
set_fixed_process(true)
func _fixed_process(delta):
btn_left = Input.is_action_pressed("btn_left")
btn_right = Input.is_action_pressed("btn_right")
if btn_left:
self.set_linear_velocity(Vector2(-speed, self.get_linear_velocity().y))
elif btn_right:
self.set_linear_velocity(Vector2(speed, self.get_linear_velocity().y))
else:
self.set_linear_velocity(Vector2(0, self.get_linear_velocity().y))
7. Agar object yang telah mendarat saat di gerakkan ke kanan dan ke kiri tidak
terguling-guling dan dapat di geser layaknya berselancar maka pada Inspector
RigidBody2D nilai Friction di ubah 0.
8. Setelah kita jalankan project maka object yang kita posisikan di atas akan jatuh dan
mendarat pada object yang di bawah yang kita ilustrasikan sebagai tanah, dan kita
dapat menggeser object yang jatuh ke kanan atau ke kiri dengan tombol panah
kanan atau kiri pada keyboard.
2. Posisikan Camera sesuai keinginan dengan batas biru, setelah itu centang Current
pada Inspector Camera2D.
3. Setelah kita jalankan project maka Camera/layar akan fokus terhadap Object yang
jatuh dikarenakan node Camera2D kita letakkan di RigidBody2D.