MC Toolkit

Panduan / Perintah & Data

Cutscene kamera tanpa mod: keyframe, interpolasi, dan trik spectator

Vanilla menggerakkan kamera dengan satu cara — fungsi teleport yang berjalan tiap tick — dan registry timeline mengatur suasana di sekitarnya. Untuk apa masing-masing berguna, dan smoothing yang membuatnya tidak terlihat kaku.

Tidak ada objek kamera di vanilla, jadi cutscene adalah ilusi yang dibangun dari teleport, dengan timeline untuk mengubah dunia di sekitarnya.

Metode 1: teleport Pemain setiap tick

Cara lama yang universal. Masukkan Pemain ke spectator, lalu gerakkan mereka sepanjang jalur:

gamemode spectator @s
tp @s 100.0 70.0 200.0 -90.0 10.0

satu tp per tick dari rantai fungsi. Ini berfungsi di semua versi dan tidak butuh apa pun yang khusus. Masalahnya semua soal kehalusan:

  • 20 keyframe per detik. Syuting sepuluh detik berarti 200 baris tp.
  • Langkah linear terlihat mekanis. Pergerakan kamera sungguhan melambat di awal dan akhir.
  • Rotasi membungkus dengan buruk. Dari yaw 170 ke -170 adalah putaran 20 derajat, tapi interpolasi naif berputar 340 derajat ke arah yang salah. Normalisasi selisih sudut ke rentang -180…180 sebelum melangkah.

Membuat baris-baris itu adalah tugas alat keyframe — kamu menempatkan beberapa posisi dan alat itu menghasilkan fungsi per-tick dengan easing yang sudah diterapkan.

Easing

Perbedaan antara amatir dan layak tonton adalah kurva interpolasinya. Di antara dua keyframe, dengan t dari 0 ke 1:

linear      t
ease-in-out t < 0.5 ? 2t²  :  1 − 2(1−t)²
smoothstep  t² × (3 − 2t)

smoothstep adalah default yang aman. Terapkan ke posisi dan rotasi bersamaan atau kamera akan tiba sebelum selesai berputar.

Metode 2: timeline, untuk segala hal kecuali kamera

Versi terbaru menambahkan registry timeline, dan menggoda untuk membacanya sebagai trek kamera:

data/<namespace>/timeline/intro.json

Bukan itu. Timeline berjalan terhadap jam dunia dan keyframe-nya adalah atribut lingkungan — warna langit dan kabut, suara ambient dan musik, Cahaya — dengan interpolasi bawaan. Timeline tidak bisa menggerakkan Pemain, jadi kameranya sendiri tetap metode 1. Yang dilakukan timeline dengan baik adalah suasana cutscene: memudarkan langit, menggeser kabut, dan menukar musik selaras dengan teleport, tanpa perintah per-tick untuk masing-masing.

Biayanya adalah timeline hanya ada di versi terbaru, jadi Peta yang menyasar klien lama harus memalsukan suasana dengan /time dan /weather.

Menahan Pemain di tempatnya

Jalur teleport berbenturan dengan dua hal:

  • Input Pemain. Spectator membuat Pemain bisa terbang menjauh di tengah syuting. Teleport ulang setiap tick menimpanya, yang jadi salah satu alasan metode brute-force ini bertahan.
  • Pemuatan chunk. Kamera yang terbang ke area yang belum dimuat akan menampilkan kehampaan. /forceload jalurnya sebelum syuting dan hapus setelahnya.

Menyembunyikan HUD

Mode spectator dan F1 sudah cukup untuk sebagian besar kebutuhan. Untuk frame yang bersih, resource pack yang mengosongkan sprite HUD menghilangkan crosshair dan hotbar tanpa Pemain menekan apa pun — lihat panduan HUD.

Tempatkan keyframe di sepanjang jalur dan ekspor fungsi per-tick-nya, lalu bangun timeline yang mengatur adegan di sekitarnya, dengan Cutscene & Timeline Builders.

Pembuat cutscene dan linimasa →

Panduan lainnya

Lihat semua →