Pendahuluan
Kita telah berhasil membuat player bergerak maju dan mundur, serta ke kiri dan kekanan. sekarang bagaimana agar kamera mengikuti player dan kamera bisa rotasi kiri dan kekanan. atas atau bawha.
Baik mari mulia
Agar kamera mengikuti player maka kita perlu menjadikan camera3D sebagai child dari player. Caranya drag camera3D ke dalam node player. Coba jalankan. apakah camera sudah mengikuti palyar?
Nah bagaimana agar kamera bisa bergerak ke kiri dan ke kanan namun tetap berpusat pada objek player?. disini kita dapat menambahkan script untuk rotasi kamera. Berikut langkahnya.
buat Node3D di dalam player dan rename menjadi Kamera. Drag camera3D ke dalam node Kamera yang dibuat tadi. berikut bentuk susnannya:
Selanjutnua klik SCript dibagian viewport dan buat scirpt baru. Berikut bentuk settingannya:
Selanjutnya buat script seperti berikut:
extends Node3D
@export var mouse_sensitivity := 0.003
var rotation_x := 0.0
var rotation_y := 0.0
func _ready():
Input.mouse_mode = Input.MOUSE_MODE_CAPTURED
func _unhandled_input(event):
if event is InputEventMouseMotion:
rotation_y -= event.relative.x * mouse_sensitivity
rotation_x -= event.relative.y * mouse_sensitivity
rotation_x = clamp(rotation_x, deg_to_rad(-60), deg_to_rad(60))
rotation.y = rotation_y
Coba jalankan gimnya. Mungkin anda akan bingung bagaimana cara keluar dari gim. Anda dapat menekan tombol F8 untuk keluar.
Anda perhatikan kamera tidak bisa bergerak atas dan bawah. coba tambah script ini:
rotation.y = rotation_y
rotation.x = rotation_x


0 Komentar