The Best Resource for Minecraft
The Best Resource for Minecraft

Катсцени з камерою без модів: ключові кадри, інтерполяція та трюки з режимом спостерігача

Катсцени з камерою без модів: ключові кадри, інтерполяція та трюки з режимом спостерігача

Два способи переміщення камери у ванілі — щотикова функція телепортації або реєстр часової шкали. Для чого підходить кожен із них, і згладжування, яке робить рух природним.

У ванільній грі немає об'єкта камери, тому катсцена — це одна з двох ілюзій.

Спосіб 1: телепортувати гравця щотику

Старий універсальний спосіб. Переведіть гравця в режим спостерігача, а потім переміщуйте його вздовж шляху:

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

один tp per tick from a function chain. It works on every version and needs nothing special. The problems are all about smoothness:

  • 20 ключових кадрів на секунду. Десятисекундний кадр — це 200 tp lines.
  • Лінійні кроки виглядають неприродно. Справжній рух камери має плавний початок і кінець.
  • Обертання некоректно перескакує. Перехід з yaw 170 до -170 — це поворот на 20 градусів, але наївна

інтерполяція крутить на 340 градусів у хибний бік. Нормалізуйте різницю кутів до діапазону -180…180 перед кроком.

Генерація цих рядків — ось для чого потрібен інструмент ключових кадрів: ви вказуєте кілька позицій, а він створює щотикову функцію із застосованим згладжуванням.

Згладжування

Різниця між аматорським і якісним виглядом полягає у кривій інтерполяції. Між двома ключовими кадрами, з t from 0 to 1:

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

smoothstep is the safe default. Apply it to position and rotation together or the camera arrives before it finishes turning.

Спосіб 2: реєстр часової шкали

Новіші версії додають формат часової шкали, який описує всю сцену як дані, а не як сотні телепортацій:

data/<namespace>/timeline/intro.json

Ключові кадри з часом та режимами інтерполяції, що відтворюються однією командою. Переваги:

  • Набагато менший розмір. Шість ключових кадрів замість двохсот телепортацій.
  • Інтерполяція є нативною, тому ніяких ручних обчислень для згладжування.
  • Незалежність від частоти кадрів — вона не смикається, як щотикова телепортація на

навантаженому сервері.

Мінус у тому, що це доступно лише у свіжих версіях, тому карти для старіших клієнтів все ще потребують способу 1.

Утримання гравця на місці

Обидва способи борються з двома речами:

  • Керування гравця. Режим спостерігача дозволяє гравцеві полетіти геть під час зйомки. Повторна телепортація щотику

перекриває це, що є однією з причин, чому цей прямолінійний спосіб досі використовується.

  • Завантаження чанків. Камера, що летить у незавантажену область, показує порожнечу. /forceload the path

перед сценою та приберіть після неї.

Приховування інтерфейсу

/gamerule doImmediateRespawn, spectator mode and F1 get you most of the way. For a clean frame, a resource pack that blanks the HUD sprites removes the crosshair and hotbar without the player pressing anything — see the HUD guide.

Розміщуйте ключові кадри на шляху та експортуйте або щотикову функцію, або JSON часової шкали за допомогою Конструктори катсцен і часових шкал.

Спробувати інструмент: Cutscene & Timeline Builders →