MultLabs

MultLabs 

Аддоны, модификаторы и полезные штуки для Blender

18subscribers

56posts

Showcase

8
goals1
0 of 100 paid subscribers
У самурая нет цели, только путь!

О - оптимизация

Тут такая задача всплыла, сделать анимацию переворота фейсов на треугольной сфере. Поскольку эта сфера состоит из правильных треугольников, нужно взять каждый фейс, отделить его и развернуть по биссектрисе любого угла. Ну что, берем Vector Rotate и нужно только задать центр вращения и ось для каждого фейса:
С центром все просто. Просто вычислить центр для каждого острова сетки:
Для оси это довольно сложно, потому что здесь понадобятся узлы топологии. Для каждого треугольника нужно вычесть одну вершину из центра двух других, чтобы получить ось, которая проходит из одной точки в центр противоположной стороны:
Итого, готово, все работает:
Я публикую ответ и тут смотрю со своим ответом пришел Маркус:
Это что за магия? Почему тут все в 10 раз проще? Давайте разбираться.
Во-первых, центр полигона. Технически это конечно среднее арифметическое всех его точек. Но, зачем это нужно, если блендер и так определит центр полигона если попросить его через смену домена на полигоны? Вместо 5 нод, две:
Дальше больше. Зачем нам определять середину еджа, если у нас уже есть центр полигона, и мы его уже получили в 2 нода? Упрощаем:
Так выглядит финальный сетап:
Гораздо проще не правда ли? Надо чаще юзать Interpolate on Domain.
Исходничек отдельным постом.
Subscription levels3

Исходники

$3.5 per month
Доступ к файликам

Бонусы

$6.9 per month
Доступ к файликам и бонусы

Супер-подписка

$20.7 per month
Подписка для блендер-гуру
Go up