MC Toolkit

أدلة / الأوامر والبيانات

مقاطع المشاهد السينمائية دون مود: الإطارات المفتاحية والاستيفاء وحيل وضع المتفرج

النسخة الأصلية تحرّك الكاميرا بطريقة واحدة — دالة النقل الآني لكل تكة — وسجل الجدول الزمني يضبط الجو حولها. ما الذي يصلح له كل منهما، والتنعيم الذي يمنعها من الظهور بمظهر آلي.

لا يوجد كائن كاميرا في النسخة الأصلية، لذا فإن المشهد السينمائي وهم مبني من عمليات النقل الآني، مع جدول زمني لتغيير العالم من حوله.

الطريقة 1: نقل اللاعب آنيًا كل تكة

الطريقة القديمة الشاملة. ضع اللاعب في وضع المتفرج، ثم حرّكه على طول مسار:

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

واحد tp لكل تكة من سلسلة دوال. تعمل على كل إصدار ولا تحتاج شيئًا خاصًا. المشاكل كلها تتعلق بالسلاسة:

  • 20 إطارًا مفتاحيًا في الثانية. لقطة مدتها عشر ثوانٍ تعني 200 سطر tp.
  • الخطوات الخطية تبدو آلية. حركات الكاميرا الحقيقية تتسارع وتبطئ.
  • الدوران يلتف بشكل سيئ. الانتقال من الانحراف 170 إلى ‎-170 هو دورة بمقدار 20 درجة، لكن الاستيفاء الساذج يدور 340 درجة في الاتجاه الخاطئ. طبّع فرق الزاوية إلى النطاق ‎-180…180 قبل الخطوة.

توليد تلك الأسطر هو ما تُستخدم له أداة الإطارات المفتاحية — تضع حفنة من المواضع فتُخرج لك دالة لكل تكة مع تطبيق التنعيم.

التنعيم

الفرق بين الهاوي والمُشاهَد هو منحنى الاستيفاء. بين إطارين مفتاحيين، مع t من 0 إلى 1:

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

smoothstep هو الافتراضي الآمن. طبّقه على الموضع والدوران معًا وإلا وصلت الكاميرا قبل أن تنتهي من الالتفاف.

الطريقة 2: الجداول الزمنية، لكل شيء عدا الكاميرا

أضافت الإصدارات الحديثة سجل timeline، ومن المُغري قراءته كمسار كاميرا:

data/<namespace>/timeline/intro.json

لكنه ليس كذلك. يعمل الجدول الزمني مقابل ساعة العالم ويضع إطارات مفتاحية لـسمات البيئة — لون السماء والضباب، والصوت المحيط والموسيقى، والضوء — مع استيفاء أصلي. لا يستطيع تحريك اللاعب، لذا تبقى الكاميرا نفسها في الطريقة 1. ما يبرع فيه الجدول الزمني هو مزاج المشهد السينمائي: تلاشي السماء، وتغيير الضباب، وتبديل الموسيقى بالتزامن مع عمليات النقل الآني، دون أمر لكل تكة لكل منها.

الثمن أنه موجود فقط في الإصدارات الحديثة، لذا على خريطة تستهدف عملاء أقدم أن تتظاهر بالمزاج عبر /time و/weather.

إبقاء اللاعب في مكانه

مسار النقل الآني يصارع أمرين:

  • إدخال اللاعب. يسمح وضع المتفرج للاعب بالطيران بعيدًا في منتصف اللقطة. إعادة النقل الآني كل تكة تتجاوز ذلك، وهذا أحد أسباب بقاء الطريقة القسرية.
  • تحميل القطع. كاميرا تطير إلى مكان غير محمّل تُظهر الفراغ. /forceload المسار قبل اللقطة وأزله بعدها.

إخفاء واجهة اللاعب

وضع المتفرج وF1 يوصلك معظم الطريق. لإطار نظيف، حزمة موارد تُفرّغ صور واجهة اللاعب تُزيل المؤشر وشريط الأدوات دون أن يضغط اللاعب أي شيء — راجع دليل واجهة اللاعب.

ضع الإطارات المفتاحية على مسار وصدّر دالة لكل تكة، وابنِ الجدول الزمني الذي يهيئ المشهد حولها، عبر Cutscene & Timeline Builders.

منشئو المشاهد السينمائية والخطوط الزمنية →

المزيد من الأدلة

عرض الكل →