Анимирование секущей плоскости в SketchUp без плагинов
SkupTipsdisclaimer
Здесь - описание общих принципов и основного алгоритма (не пошаговая инструкция). Это значит, что оно рассчитано на более менее опытного пользователя SketchUp, который понимает основные логическте механизмы программы и который самостоятельно разберется с детализацией своих действий. Если у вас недостаточно опыта, то в случае отрицательного результата (или когда что-то сломается) - вам будет сложнее обнаружить где вы ошиблись.
Понимание
Что было проще схватить все нюансы метода, вот основные четыре вещи, которые нужно понимать:
Первое, и самое главное: весь трюк основан на странности поведения секущей плоскости в момент анимировнного перехода от одной сцены к другой, а именно: SketchUp анимирует переход состояния секущей плоскости из включенного в выключенное (не совсем понятно зачем это сделано, и иногда кажется что это тот самый случай, когда можно сказать "не баг, а фича").
Ещё раз:
вы не передвигаете секущую плоскость - вы активируете и дезактивируете ее, а SketchUp рисует переход между этими состояниями, который выглядит как перемещение плоскости
🤷🏻♂
Второе. Необходимо, что бы Сцены (Scene), стили (Style) и анимация (Scene Transitions) были корректно настроены, а также нужно помнить, что для вкл/выкл секущей плоскости нужно использовать команду Active Cut, а не Hide или скрытие обьекта в Outliner




Третье. Вкладывайте секущие плоскости в группы что бы изолировать влияние разреза на модель и получать сложные эффекты анимации нескольких секущих плоскостей. Этим вы можете режиссировать появление и исчезание множества объектов модели. Тут важно только следить за "запоминанием" (update scene) состояния каждой секущей плоскости в каждой сцене, если их будет много.
Четвертое. Ограничения. Вы не можете точно определять одну из двух крайних точек положения секущей плоскости.
Представьте, что вам нужно переместить объект из точки А в точку Б:
Вы МОЖЕТЕ: определить одну из точек, можете определить вектор перемещения (перпендикуляр), а также время самого перемещения.
Но, вы НЕ ОПРЕДЕЛЯЕТЕ: вторую точку, а также скорость перемещения (как зависимость расстояния и времени, первое из которых - неизвестно).

Положение второй точки определяет SketchUp, на основе данных о размере модели, а именно: расстояние, на которое будет анимироваться перемещение плоскости - это размер пространства контейнера, в которое заключена секущая плоскость:

P.S. у меня были ситуации, когда это расстояние определялось размером всей модели - заключение в группу не помогало
Так же, стоит помнить: вы не можете анимировать поворот плоскости, не можете делать разное время перехода между сценами одной модели, не можете делать один переход плоскости сквозь несколько сцен (можно только между соседними) и другие подобные ограничения.
Как сделать
Алгоритм для "появления объекта из пустоты" такой:
1. Ставим секущую плоскость в необходимую точку А - туда, где мы хотим что бы было начало анимации. В этом положении плоскость должна быть активной (Active Cut)
2. Создаём на это состояние сцену. Это будет первая сцена - начало анимации.
3. Выключаем активность плоскости (Active Cut)
4. Сохраняем состояние как вторую сцену, как конец движения.
Итог должен выглядеть так:
Сцена А:
- секущая плоскость в начальном положении
- активна
Сцена Б:
- секущая плоскость в том же положении
- неактивна


Анимация должна получиться какой-то такой:
Если основа получилась, то можно применить творческий подход с использованием вложенных групп и получить это:

Или вот такой вариант - три куба находятся в одном месте и последовательно исчезают:
В целом - ничего сложного, хоть и может сначала показаться что не интуитивно. Просто потренеруйтесь.
Если остались вопросы - пишите в наш чат в Telegram, будем разбираться
И не забывайте подписываться на мой канал о SketchUp в Телеграме: https://telegram.me/skuptips.
