Guides / Commands & Data

สร้างคัตซีนกล้องโดยไม่ต้องใช้ม็อด: คีย์เฟรม, การประมาณค่า และเทคนิคสำหรับโหมดผู้ชม

สองวิธีในการเคลื่อนย้ายกล้องในเกมเวอร์ชันวานิลลา — ฟังก์ชันเทเลพอร์ตแบบต่อติ๊ก หรือการลงทะเบียนไทม์ไลน์ แต่ละวิธีเหมาะกับอะไร และการปรับให้ภาพเคลื่อนไหวราบรื่นเพื่อไม่ให้ดูเหมือนหุ่นยนต์

ในเกมเวอร์ชันวานิลลาไม่มีออบเจกต์กล้อง ดังนั้นคัตซีนจึงเป็นภาพลวงตาอย่างใดอย่างหนึ่งจากสองวิธีนี้

วิธีที่ 1: เทเลพอร์ตผู้เล่นทุกติ๊ก

วิธีเก่าแก่ที่ใช้ได้ทั่วไป ให้ผู้เล่นอยู่ในโหมดผู้ชม จากนั้นเคลื่อนย้ายผู้เล่นไปตามเส้นทาง:

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

หนึ่ง tp ต่อติ๊กจากฟังก์ชันต่อเนื่อง วิธีนี้ใช้ได้กับทุกเวอร์ชันและไม่ต้องการอะไรเป็นพิเศษ ปัญหาทั้งหมดอยู่ที่ความราบรื่น:

  • 20 คีย์เฟรมต่อวินาที การถ่าย 10 วินาทีคือ 200 บรรทัด tp
  • การเคลื่อนที่แบบเส้นตรงดูเหมือนกลไก การเคลื่อนที่ของกล้องจริงจะมีการเร่งและลดความเร็ว
  • การหมุนมีปัญหา การเปลี่ยนจาก yaw 170 เป็น -170 คือการหมุน 20 องศา แต่การประมาณค่าแบบตรงไปตรงมาจะหมุน 340 องศาไปในทิศทางที่ผิดปกติ ปรับค่าความแตกต่างของมุมให้อยู่ในช่วง -180…180 ก่อนที่จะก้าวไป

การสร้างบรรทัดเหล่านั้นคือสิ่งที่เครื่องมือคีย์เฟรมมีไว้สำหรับ — คุณวางตำแหน่งไม่กี่ตำแหน่งและมันจะสร้างฟังก์ชันต่อติ๊กพร้อมกับการปรับความเร็ว

การปรับความเร็ว (Easing)

ความแตกต่างระหว่างมือสมัครเล่นกับสิ่งที่ดูได้คือเส้นโค้งการประมาณค่า (interpolation curve) ระหว่างสองคีย์เฟรม โดยมี t จาก 0 ถึง 1:

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

smoothstep คือค่าเริ่มต้นที่ปลอดภัย ใช้กับตำแหน่งและการหมุนพร้อมกัน มิฉะนั้นกล้องจะมาถึงก่อนที่จะหมุนเสร็จ

วิธีที่ 2: การลงทะเบียนไทม์ไลน์

เวอร์ชันใหม่ๆ เพิ่มรูปแบบไทม์ไลน์ที่อธิบายการถ่ายทั้งหมดเป็นข้อมูล แทนที่จะเป็นเทเลพอร์ตหลายร้อยครั้ง:

data/<namespace>/timeline/intro.json

คีย์เฟรมพร้อมเวลาและโหมดการประมาณค่า (interpolation modes) เล่นด้วยคำสั่งเดียว ข้อดี:

  • ขนาดเล็กกว่ามาก หกคีย์เฟรมแทนที่จะเป็นเทเลพอร์ตสองร้อยครั้ง
  • การประมาณค่าเป็นแบบเนทีฟ ดังนั้นจึงไม่จำเป็นต้องคำนวณการปรับความเร็วด้วยตนเอง
  • ไม่ขึ้นอยู่กับอัตราเฟรม — ไม่กระตุกเหมือนการเทเลพอร์ตต่อติ๊กบนเซิร์ฟเวอร์ที่มีโหลด

ข้อเสียคือมีเฉพาะในเวอร์ชันล่าสุดเท่านั้น ดังนั้นแผนที่ที่กำหนดเป้าหมายไปยังไคลเอนต์เวอร์ชันเก่าก็ยังคงต้องใช้วิธีที่ 1

การรักษาสถานะผู้เล่น

ทั้งสองวิธีต้องต่อสู้กับสองสิ่ง:

  • การป้อนข้อมูลของผู้เล่น โหมดผู้ชมทำให้ผู้เล่นบินหนีไปกลางคัตซีนได้ การเทเลพอร์ตกลับทุกติ๊กจะแทนที่การกระทำนั้น ซึ่งเป็นเหตุผลหนึ่งที่วิธีแบบใช้กำลังยังคงอยู่
  • การโหลดชังก์ กล้องที่บินไปยังตำแหน่งที่ยังไม่ได้โหลดจะแสดงช่องว่าง /forceload เส้นทางก่อนการถ่ายและลบออกหลังจากนั้น

การซ่อน HUD

/gamerule doImmediateRespawn, โหมดผู้ชม และ F1 จะช่วยให้คุณไปถึงเป้าหมายได้เกือบทั้งหมด สำหรับเฟรมที่สะอาดตา แพ็กทรัพยากรที่ทำให้สไปรต์ HUD ว่างเปล่าจะลบเป้าเล็งและช่องลัดออกโดยที่ผู้เล่นไม่ต้องกดอะไรเลย — ดูคู่มือ HUD

วางคีย์เฟรมบนเส้นทางและส่งออกฟังก์ชันต่อติ๊กหรือ JSON ไทม์ไลน์ด้วย เครื่องมือสร้างคัตซีนและไทม์ไลน์ (Cutscene & Timeline Builders)

ตัวสร้างคัตซีนและไทม์ไลน์ →

More guides

Browse all →

กำลังหาเครื่องมือ Minecraft อื่นอยู่ไหม

ชุดเครื่องมือสร้าง ดู และแปลงไฟล์ที่ทำงานในเบราว์เซอร์ ฟรีทั้งหมด