# Starter Bowling Mini 3D SMA · Pemula · sesi 41–48 ## Memakai starter Ekstrak seluruh ZIP, Project Manager → Import → project.godot, lalu F5. Panah bergerak pada mode fisika; petunjuk kontrol khusus ada pada HUD. R membuat scene baru. Siapkan folder terpisah sebelum mengubah kode. Godot 4.x; contoh diperiksa dengan 4.4.1 Compatibility. ## Cakupan yang tersedia Lantai, bola dan tiga pin RigidBody3D, satu impuls terkunci, dan reset scene. Pengaturan kekuatan, penilaian pin, serta waktu tenang adalah tugas. Starter adalah acuan struktur dan mekanik minimum, bukan proyek akhir yang memenuhi semua rubrik. Gunakan lab sesi untuk menguji konsep kecil. Siswa membangun integrasi dan keputusan sendiri sesuai tugas presentasi. Tidak ada build executable yang diklaim telah diuji oleh paket ini. ## Susunan node saat runtime Node dibuat oleh world.gd dari bentuk dasar. Jalankan F6 lalu lihat Scene → Remote untuk menelusuri pohonnya. Untuk belajar konstruksi editor, buat scene siswa terpisah dan tambahkan node melalui tombol + sesuai fungsi helper di world.gd. ```text Arena3D WorldEnvironment DirectionalLight3D Camera3D (current) StaticBody3D + CollisionShape3D (lantai) MeshInstance3D / CharacterBody3D / RigidBody3D (sesuai mode) CanvasLayer → Label (HUD) ``` ## Cara membangun di editor 1. Buat root Node3D, simpan scene. 2. Tambahkan bentuk visual dan collision secara terpisah. Collider harus anak badan/area, bukan hanya mesh. Pada 3D, tambahkan kamera current dan lampu. 3. Tambahkan script pada node yang tepat. Implementasikan satu mekanik dari tugas sesi, uji, baru lanjut. 4. Hubungkan signal sekali lewat panel Node atau _ready. Label membaca model, bukan menjadi sumber keadaan. 5. Catat input, keadaan awal, harapan, aktual, perbaikan, dan batas pengujian. ## Urutan praktik - Sesi 41: Lintasan dan badan fisika. Bangun lintasan StaticBody3D, bola serta tiga pin RigidBody3D dengan collision sederhana; simpan arena sebagai scene - Sesi 42: Gravitasi dan material fisika. Bandingkan massa, gesekan dan pantulan pada dua percobaan; ubah satu parameter sambil mencatat hasil - Sesi 43: Input kekuatan terbatas. Gunakan slider atau dua tombol untuk memilih kekuatan dalam rentang tetap; tampilkan nilai yang benar sebelum melempar - Sesi 44: Impuls satu tembakan. Panggil apply_central_impulse sekali pada bola saat status siap; jangan mengubah transform bola setiap frame - Sesi 45: Tunggu hasil fisika. Amati kecepatan bola di _physics_process, butuhkan beberapa frame tenang serta batas waktu sebelum penilaian - Sesi 46: Pin jatuh dan hasil. Bandingkan arah atas tiap pin terhadap Vector3.UP dengan ambang yang diuji; hitung setiap pin maksimal sekali - Sesi 47: Reset dengan instance baru. Hapus instance arena lama lalu instance scene arena baru; sambungkan signal satu kali dan kembalikan status siap - Sesi 48: Presentasi: Bowling Mini 3D. Bandingkan dua kekuatan, klik tembak berulang, dan dua reset; catat variasi fisika tanpa menjanjikan hasil identik bit demi bit ## Kriteria proyek - Bentuk collision cocok dan pin stabil sebelum tembakan - Satu input memberi satu impuls dalam rentang kekuatan - Hasil dinilai setelah jeda tenang atau batas waktu yang tertulis - Arena baru tidak membawa kecepatan atau signal dari putaran lama Sumber: https://docs.godotengine.org/en/stable/