- Последний пост
- 25 мая
- Последнее чтение
- 12 авг.
- Постов за неделю
- 0
- Всего постов
- 20
- Тип
- открытый
- Язык
- русский
- В каталоге с
- 12 авг.
- 1/24сутки в ленте
- —
- 1/48двое суток
- —
- 1/72трое суток
- —
Оценка по просмотрам недавних постов: пост набирает почти всё за первые сутки.
Посты
Houdini Animation Sequencer вышел! Полноценный анимационный таймлайн, над которым я долго работал, добрёл до версии 1.0. Протестировано с Гудини версий 19.5 - 21.0 Ссылки: https://bereg.gumroad.com/l/houdini_animation_sequencer https://boosty.to/houdini/posts/f2a2359d-d814-4057-83ba-90a4934f9b00 Видео: https://www.youtube.com/watch?v=xNBXJv0V-5o Спасибо за внимание! #animation #sequencer
Лично проверил, рекомендую
Отдохнём от COP’ов и поговорим о привязке FLIP к анимированной геометрии. Для такой симуляции нужна жёсткая привязка к геометрии, поэтому задачу нельзя решить через коллизии. В SOP я привязал группы точек к нулям объекта через матрицы, но так как FLIP-солвер не работает с @P, пришлось считать @v как разницу между текущей и предыдущей позицией прямо в солвере. Вот код привязки точек к Obj трансформации: string s1 = chs("link_1"); string s2 = chs("link_2"); matrix m1 = optransform(s1); matrix m2 = optransform(s2); vector bb = relbbox(0,@P);//get bbox float th01 = ch("th1"); float th02 = ch("th2"); //bbox threshold if(bb.x<th01){ @P *=m1; @group_pin=1; @group_pinA=1; } if(bb.x>th02){ @P *=m2; @group_pin=1; @group_pinB=1; } помимо привязки к геометрии я ещё создаю группы (pin, pinA, pinB) их я использую в симуляции. Hip сцену я выложу на boosty
Снова Copernicus и в этот раз задача разобраться с градиентной подрезкой кирпичей. Описание проекта и хип фаил в свободном доступе на boosty Запутаетесь в нодах, пишите)) https://boosty.to/kma3d
Часто спрашивают Houdini 2 AE (спасибо Диме!) Положу к себе чтобы по чатам не искать каждый раз https://disk.yandex.ru/d/YQQ7-B4SBx4f9Q
Оказывается у моего канала на Youtube праздник, Не думал что ему столько лет. 🍰
без подписи
Давно ковырялся с кастомными полями флипа. Случай подвернулся рассказать про этот RnD может кому будет полезно
https://youtu.be/nAkmkOE8ZL0 Следом за хип файлом я записал тутор-разбор симуляции в 21 Houdini Всем приятного просмотра!
💨 В этом .hip файле я собрал граф симуляции дыма в Copernicus. Очень понравились последние обновления — добавили поддержку VDB, и теперь можно делать по-настоящему красивую симуляцию. Как только понимаешь основной принцип сборки графа симуляции в Copernicus, всё становится просто и даже немного игриво 😄 Главное — разобраться, какие ноды нужно связать между собой и за что каждая отвечает. Я подготовил небольшой .hip-файл, который показывает основы передачи 3D-геометрии в Copernicus. Постарался не усложнять граф лишними нодами, чтобы всё было максимально понятно. 📁 Файл доступен бесплатно на моём Boosty-канале. Если тема окажется интересной — запишу мини-гайд по сборке симуляций в Copernicus.
Может кому пригодится цвет в кельвинах, с подробными комментариями ДА, чуть не забыл, у канала есть чат для обсуждения. // Считываем значение параметра "temperature" (ожидается в диапазоне 0–1) float temperature = ch("temperature"); // Преобразуем значение от 0–1 в физически реалистичный диапазон температур в Кельвинах (1666K до 25000K) // 1666 Кельвинов — это примерно самый тёплый (красноватый) цвет черного тела, // 25000 Кельвинов — очень холодный, сине-белый свет float kelvin = fit01(temperature, 1666.0, 25000.0); // Считываем значение яркости (luminance), задаваемое пользователем float luminance = ch("lum"); // Вычисляем цвет в XYZ-цветовом пространстве для заданной температуры и яркости // Функция blackbody возвращает цвет черного тела — физическая модель свечения раскалённого объекта vector xyz = blackbody(kelvin, luminance); // Преобразуем XYZ-цвет в RGB, чтобы можно было отобразить цвет @Cd = xyztorgb(xyz);
Новый тутор, в котором я рассказываю как сделать такой эффект, все сцены как обычно на boosty а тутор на youtube https://youtu.be/QFgrAUFErmo
Вот такая конфетка получилась, Фаил проекта будет на моём boosty (в свободном скачивании) Урок, на Youtube https://youtu.be/Ntz1rkYLQkk
Хип файл с шариками можно скачать у меня на boosty.to/kma3d так же в посте есть краткое описание проекта, доступ к файлу свободный. Качайте, изучайте.
import hou def move_selected_keys_to_current_frame(): keyframes = hou.playbar.selectedKeyframes() current_frame = hou.frame() if not keyframes: return for parm, keys in keyframes.items(): for key in keys: old_frame = key.frame() new_key = hou.Keyframe(key) # копируем параметры ключа new_key.setFrame(current_frame) parm.deleteKeyframeAtFrame(old_frame) # удаляем оригинал parm.setKeyframe(new_key) # ставим на текущем кадре move_selected_keys_to_current_frame() Скрипт перемещает выделенные ключи в текущий кадр. Пользуйтесь! Вешаем на хоткей и упрощаем себе жизнь!)
Вот плейлист с визуальными объяснениями как работают матрицы. Может кому интересно будет углубленно понять. И там объясняется как Марица связана с этой картинкой с осями https://youtube.com/playlist?list=PLVjLpKXnAGLXPaS7FRBjd5yZeXwJxZil2&si=Mo-Ug669f2KzW_MS
Для меня стало открытием что ориентацию кривой можно гибко редактировать, для этого нужно перейти в режим Orient mode и щелкаем по узлам кривой.
Простой сетап вращения колеса по прямой, Файл и описание у меня на бусти (доступ не ограничен). https://boosty.to/kma3d
Переворачивание карт без симуляции, хип фаил и описание кинул на бусти https://boosty.to/kma3d
Всем привет, давно не виделись) Простейший риг коробочки собранный на костях Kinefx. Каждая часть коробки это отдельный пакед, который привязывается к своей кости. После рига уплотняется сетка, сшиваются точки, финальная геометрия немного сглаживается нодой smooth. https://youtu.be/k39t1Pp-w_0 Фаил как обычно на Бусти качайте свободно https://boosty.to/kma3d