Houdini — профессиональный программный пакет для работы с трёхмерной графикой, разработан компанией Side Effects Software (Торонто, Канада). Главное отличие данного пакета в том, что он является средой визуального программирования.
- 1 Основные возможности программы
- 2 Операторы. Ноды (Nodes)
- 3 Графы (Networks)
- 4 Пользовательские ноды (Digital assets)
- 5 Программирование в Houdini
- 6 Достижения
- 7 Версии Houdini
- 8 Примечания
Основные возможности программы
- Моделирование
- множество геометрических примитивов(англ.) ( рус. (куб, сфера, и т. д.)
- полигональное моделирование
- сплайны (включая B-сплайны (NURBS), кривые Безье)
- метаболы
- L-система
- ноды для изменения свойств объектов, объединённых в группу: SOPs (surface operators)
- группирование геометрии
- частицы — ноды для работы с частицами, объединёнными в группу: POPs (particle operators)
- вокселы
- основанная на ключевых кадрах анимация
- с возможностью процедурного управления каналами параметров сцены с помощью HScript или с помощью операторов группы CHOPs (channel operators)
- редактор ключевых кадров — с возможностью графического представления параметра сцены, изменения типа интерполяции значения и расположения во времени ключевого кадра
- персонажная анимация — инструменты для персонажной анимации: скелеты, риг, волосы и шерсть (с просчётом физического взаимодействия), взаимодействиe персонажей (Crowd control) и т. д.
- твёрдых (Rigid Body) и мягких тел (Soft Body)
- «верёвчатых» тел (Wire)
- тканей (Cloth)
- волос и шерсти (Fur)
- расчёт физического поведения и визуализации газов и жидкостей (моделирование поведения огня, дыма, большинства атмосферных явлений, растворения одной жидкости в другой, карты намокания (Wet Map) и т. д.)
- большой набор источников света
- шейдеры освещения (Light Shader)
- просчёт большинства физических свойств света: теней, глобального освещения, каустики и т. д.
- библиотека материалов
- возможность создания пользовательского материала путём редактирования существующего или программирования шейдера материала — SHOPs (shading operator)
- удобная нодовая структура рендеринга (ROPs — render operators) с возможностью очереди просчёта, иерархического взаимодействия нод просчёта между собой. Ноды рендеринга «помнят» свои параметры, что даёт возможность быстрого пересчёта нужных элементов сцены
- поддержка различных средств визуализации: Mantra, Renderman, mental ray, и других
- поддержка основных графических форматов для экспорта сцены с поддержкой многоплановых изображений
- сетевой рендеринг
- рендеринг для отдельно взятых источников света или объектов принадлежащих к определённой группе геометрии
- встроенный инструмент для Композитинга с (COPs — composite operators) с полноценной поддержкой пикселов с глубиной цвета 32 бита с плавающей точкой
- информация из COPs может быть напрямую использована в сцене проекта
Операторы. Ноды (Nodes)
Оператор — это основная структурная единица Houdini, способная в соответствии с её типом обрабатывать определённые данные и возвращать результат. В большинстве случаев, пользователь имеет дело с графическим представлением оператора — нодой, которая отображается в виде прямоугольника с входными и выходными соединениями. Выходное соединение одной ноды можно связать с входным другой, тем самым, обеспечивая передачу данных между ними. Можно сказать, что моделирование в Houdini — это процесс создания и связывания операторов (нод). Любое действие в проекте будет порождать новый оператор, поэтому, пользователь всегда имеет возможность изменять параметры произведённых действий, а также отменять (удалять) действия или временно отключать.
Houdini vs Cinema 4D что лучше? (ПЕРЕВОД)
Никогда не скачивай Houdini
Графы (Networks)
Пример графов в Houdini
Меню выбора ноды в Houdini
Соединения нод или операторов, образуют графы (Networks). Такие графы могут относится к одному из ниже приведённых контекстных типов: [2]
- Objects (OBJ) — является контейнером верхнего уровня для всех геометрических объектов (источников света, камер, объектов SOPs и т д.). Позволяет определять пространственные и иерархические зависимости между объектами сцены
- Geometry (SOP) — обладает полным функционалом для моделирования. Обычно такой граф содержит ноды-генераторы (куб, сфера, плоскость) и ноды-преобразования (трансформация, сжатие, булевые операции). Такой граф может содержать только одну активную ноду, которая будеть определять результирующую геометрию объекта SOP
- Particles (POP) — такой граф позволяет создавать источники частиц и определять их поведение с помощью соответствующих нод
- Motion and audio channel operators (CHOP) — такой граф содержит ноды для управления каналами данных (любой параметр сцены, информация из аудиофайла). Является инструментом процедурной анимации
- Compositing (COP) — содержит ноды 2D-преобразования графических изображений. Является полноценным инструментом композитинга. По сравнению с другими пакетами моделирования, инструмент композитингаHoudini — это не отдельная программа. Данные из COP могут быть напрямую задействованы в трехмерной сцене
- Dynamics (DOP) — граф для создания физических свойств объекта и расчёта их взаимодействия. Позволяет создавать реалистичное поведение объектов, к примеру, столкновение твёрдых тел с расчётом деформации или разрушения исходных объектов или поведение тканей
- Shaders (SHOP) — содержит ноды шейдеров. Параметры этих нод изменяют свойства определённого шейдера
- Render outputs (ROP) — содержит ноды рендеринга. Каждая такая нода обладает определённым набором параметров визуализации, к примеру: диапазон кадров для просчёта, активная камера, имя фаила для сохранения результатов рендеринга и т д. Такие ноды могут соединятся между собой, создавая зависимости
- VEX Builder (VOP) — граф для визуального программирования Houdini. Преимущественно используется для программирования шейдеров.
Граф каждого из типов обладает своим собственным, уникальным набором операторов, при этом, почти в любом графе можно создать подграф другого типа, а также существуют механизмы обмена информацией между графами различных типов. К примеру, при создании источника частиц в графе POP может быть использована информация из объекта SOP, которая будет определять геометрическую форму источника.
Пользовательские ноды (Digital assets)
Пример процедурной модели книги
Графы могут быть объединены в самостоятельную структуру — «пользовательскую ноду» (Digital asset) со своим названием и набором регулируемых параметров. Существуют примеры создания очень сложных процедурных моделей с большим числом регулировок, к примеру: процедурная дорога, которая в зависимости от перепадов высот сама встраивает сложные мосты или туннели, пользователю лишь нужно указать путь, по которому эта дорога будет проходить или процедурная книга, где пользователь указывает количество страниц, размеры и путь папки с текстурами; изменяя параметр, отвечающий за номер открытой страницы, можно создавать анимацию перелистывания книги или журнала.
Программирование в Houdini
Все операции в Houdini доступны для выполнения и с помощью программного кода. Оператор, при этом, представляется в виде класса, а параметры оператора в виде членов этого класса. Каждый оператор имеет свой адрес в проекте схожий по структуре с Unix-подобными операционными системами. Переменные и параметры функций оператора могут обрабатывать большое количество типов данных:
- Геометрические данные — точки, примитивы, нормали, проекции, кривые и т. д.;
- Графические данные — растровый массив данных из графического файла или напрямую из встроенного композера COPs;
- Частицы — структуры данных для POPs;
- Физические данные — DOPs;
- Строчные данные — текстовые параметры операторов;
- Числовые данные — параметры операторов, атрибуты, векторы, большинство данных для программирования шейдеров и т. д.;
- Информация с устройств ввода — мыши, клавиатуры, графического планшета, MIDI-порта, микрофона;
- RAW данные из файла;
- Данные из TCP/IP-соединения;
- Аудио-поток из файла или виртуального микрофона расположенного в пространстве сцены.
Достижения
За использование Houdini для имитации природных явлений с помощью частиц и сложных процедурных трёхмерных моделей, компания Side Effects Software в 2002 году, получила премию «Оскар» за технические достижения (Scientific and Engineering Award) [3] .
Версии Houdini
Houdini относительно дорогой продукт, но существует и бесплатная версия Houdini Apprentice — которую можно использовать в некоммерческих целях, а также свободно загрузить с официального сайта программы.
Примечания
- ↑Spatial audio(неопр.)(недоступная ссылка). Дата обращения: 4 октября 2010.Архивировано 1 июля 2012 года.(англ.)
- ↑Network types(неопр.)(недоступная ссылка). Дата обращения: 4 октября 2010.Архивировано 1 июля 2012 года.(англ.)
- ↑75th Annual Academy Awards (2002)(неопр.)(недоступная ссылка). Дата обращения: 3 октября 2010.Архивировано 21 июня 2012 года.(англ.)
Источник: xn--h1ajim.xn--p1ai
Разработка мобильных приложений и компьютерных игр
Houdini — профессиональный программный пакет для работы с трёхмерной графикой, разработан компанией Side Effects Software (Торонто, Канада). Главное отличие данного пакета в том, что он является средой визуального программирования.
Основные возможности программы
- Моделирование
- Анимация
- основанная на ключевых кадрах анимация
- возможностью процедурного управления каналами параметров сцены с помощью HScript или с помощью операторов группы CHOPs (channel operators)
- редактор ключевых кадров — с возможностью графического представления параметра сцены, изменения типа интерполяции значения и расположения во времении ключевого кадра
- персонажная анимация — инструменты для персонажной анимации: скелеты, риг, волосы и шерсть (с просчётом физического взаимодействия), взаимодействиe персонажев (Crowd control) и т. д.
- твёрдых (Rigid Body) и мягких тел (Soft Body)
- «верёвчатых» тел (Wire)
- тканей (Cloth)
- волос и шерсти
- расчёт физического поведения и визуализации газов и жидкостей (моделирование поведения огня, дыма, большинства атмосферных явлений, растворения одной жидкости в другой, карты намокания (Wet Map) и т. д.)
- библиотека материалов
- возможность создания пользовательского материала путём редактирования существующего или программирования шейдера материала — SHOPs (shading operator)
Операторы. Ноды (Nodes)
Оператор — это основная структурная единица Houdini, способная в соответствии с её типом обрабатывать определённые данные и возвращать результат.
В большинстве случаев, пользователь имеет дело с графическим представлением оператора — нодой, которая отображается в виде прямоугольника с входными и выходными соединениями.
Выходное соединение одной ноды можно связать с входным другой, тем самым, обеспечивая передачу данных между ними. Можно сказать, что моделирование в Houdini — это процесс создания и связывания операторов (нод).
Любое действие в проекте будет порождать новый оператор, поэтому, пользователь всегда имеет возможность изменять параметры произведённых действий, а также отменять (удалять) действия или временно отключать.
Графы (Networks)
Пример графов в Houdini
Меню выбора ноды в Houdini
Соединения нод или операторов, образуют графы (Networks). Такие графы могут относится к одному из ниже приведённых контекстных типов:[1]
- Objects (OBJ) — является контейнером верхнего уровня для всех геометрических объектов (источников света, камер, объектов SOPs и т д.). Позволяет определять пространственные и иерархические зависимости между объектами сцены
- Geometry (SOP) — обладает полным функционалом для моделирования. Обычно такой граф содержит ноды-генераторы (куб, сфера, плоскость) и ноды-преобразования (трансформация, сжатие, булевые операции). Такой граф может содержать только одну активную ноду, которая будеть определять результирующую геометрию объекта SOP
- Particles (POP) — такой граф позволяет создавать источники частиц и определять их поведение с помощью соответствующих нод
- Motion and audio channel operators (CHOP) — такой граф содержит ноды для управления каналами данных (любой параметр сцены, информация из аудиофайла). Является инструментом процедурной анимации
- Compositing (COP) — содержит ноды 2D-преобразования графических изображений. Является полноценным инструментом композитинга. По сравнению с другими пакетами моделирования, инструмент композитинга Houdini — это не отдельная программа. Данные из COP могут быть напрямую задействованы в трехмерной сцене
- Dynamics (DOP) — граф для создания физических свойств объекта и расчёта их взаимодействия. Позволяет создавать реалистичное поведение объектов, к примеру, столкновение твёрдых тел с расчётом деформации или разрушения исходных объектов или поведение тканей
- Shaders (SHOP) — содержит ноды шейдеров. Параметры этих нод изменяют свойства определённого шейдера
- Render outputs (ROP) — содержит ноды рендеринга. Каждая такая нода обладает определённым набором параметров визуализации, к примеру: диапазон кадров для просчёта, активная камера, имя фаила для сохранения результатов рендеринга и т д. Такие ноды могут соединятся между собой, создавая зависимости
- VEX Builder (VOP) — граф для визуального программирования Houdini. Преимущественно используется для программирования шейдеров.
Граф каждого из типов обладает своим собственным, уникальным набором операторов, при этом, почти в любом графе можно создать подграф другого типа, а также существуют механизмы обмена информацией между графами различных типов. К примеру, при создании источника частиц в графе POP может быть использована информация из объекта SOP, которая будет определять геометрическую форму источника.
- Получить ссылку
- Электронная почта
- Другие приложения
Популярные сообщения
Обзор конструктора SiriusSat-3U
Описание Тестовые прошивки для всех систем идут в комплекте, написаны на Processing, либо ДРАКОН. Через предоставленную прошивку nrf_reciev_SD.ino для блока связи можно связать все модули и получать на SD-карту состояние всех систем. Подключив Arduino Uno с радиомодулем к ПК и залив tonedemo_nrf.ino, можно общаться с радиомодулем спутника, например, запросить телеметрию.
Так же у них в комлпекте идёт скрипт Sputnik_GUI.py, который даёт возможность вводить/выводить информацию через графический интерфейс. Общение с наземной станцией, по сути, происходит с помощью bitlash — шелл-скрипта для ардуино. Таким образом, наземная станция — это Arduino Uno с модулем NRF24L01+ и соответствующей прошивкой. Процесс взаимодействия — отправка по Serial команд arduino, которая направляет их на такой же радиомодуль на спутник. На спутнике модули связаны шиной I2C. По сути все прошивки тестовые, и для нормальной работы нужно большую часть всего писать самомуСобственно, в прошивках происходит что-то
Область применения воксельной графики
Сейчас в мире господствует полигональная графика, но воксели всё ещё занимают значимую нишу в области 3D графики. Существует несколько отраслей, в которых воксельная графика применяется не менее активно чем любая другая. Медицина Сейчас самая часто используемая область применения воксельной графики, это медицина.
Медицинское оборудование обычно возвращает данные в виде множества срезов человеческого тела или как облако точек. Оба этих формата естественным образом представляются в воксельном формате, что делает их очень удобными для визуализации таким способом. Воксельное октодерево Стандартным способом хранения и обработки вокселей является структура данных, называемая разреженным воксельным октодеревом. Воксельное октодерево это дерево, корневая нода которого содержит всё пространство, хранимое деревом. Каждая нода делит свё пространство на 8 частей как куб 2х2х2, сохраняя в своих 8 потомках подпространства своей области. Если вся область поддерева занимается однородным материал
Источник: mmcs-magnus.blogspot.com
Интерфейс Houdini и логика
Интерфейс Houdini — это урок из серии курсов «Houdini. Быстрый старт». Рассматриваем логику и основные элементы интерфейса Houdini.
Логика Houdini
Houdini — это пакет процедурного моделирования, анимации, эффектов, симуляции, рендера и композитинга. Процедурность в Houdini — это основной козырь программы, и в то же время — неведомая большинству сила, которая способна отпугнуть
Для большего понимания логики проведём небольшой исторический экскурс. Прародитель Houdini — это программное обеспечение Prisms, по сути состоящее из нескольких блоков, отвечающих за разные задачи. Официальная история Houdini начинается именно с даты представления Prisms с графическим интерфейсом в 1987 году. Уже тогда ПО работало по принципам нодового построения (рис.1)
По-прежнему вся работа в пакете Houdini строится именно на нодовом процессе (связях узловых точек), которые располагаются в особом пространстве, образуя цепь последовательностей (шагов). К каждому шагу можно вернуться и внести изменения, которые на лету отразятся на всех последующих шагах (нодах).
Лучше всего, при освоении нового пакета, программы, чего угодно, представлять себя на месте отца-основателя этой программы. Возможно это была группа людей — не важно. Важно то, что изначально идея была довольно проста. У любого продукта — изначальная идея довольно проста, уже после она обрастает разными образами, функциями, технологиями.
В примере с Гудини — изначальная идея — создать графический пакет с визуальными программными узлами. То есть по сути, это визуальное программирование геометрии. Это отличает Houdini от большинства 3D-пакетов, где изначальная логика была другой. К примеру в Foundry Modo процедурное моделирование появилось гораздо позже, а изначально весь процесс строился на классическом (деструктивном) моделировании.
Для ещё большего понимания рассмотрим процесс построения геометрии на простом примере, но без графической оболочки, которая есть в Houdini, Maya или любом другом пакете. Итак, я решил моделить в блокноте и начинаю написание программного кода:
- Я описываю куб 6 гранями. Для этого определяю в мировом пространстве координату каждой из 8 его вершин, соединяю их рёбрами и заполняю полигонами
- На каждой грани располагаю по одному отверстию
- В определённый момент я понимаю, что это должен быть не куб, а октаэдр с 8 гранями
- В этот момент мне нужно вернуться к первым строкам кода и переписать их, что потянет за собой и следующие строки, потому что изменяется и координата каждой грани
Houdini же хранит вышеописанную последовательность действий в цепи соединённых между собой нод, которые создаются автоматически. Представьте себе блокнот, который сам переписывает все следующие строки, если меняется предыдущая. Только строки эти отображаются в графическом виде нод и связи между ними можно определять по-своему. Теперь мне достаточно вернуться к шагу определения граней, внести изменения и все они передадутся на последующие шаги, то есть отверстие появится на всех гранях
Такой подход к построению форм называется процедурным. То есть Houdini — это процедурный пакет работы с графикой. Под этот подход реализован весь интерфейс, и логика строится именно с опорой на процедурность. Таким образом, интерфейс Houdini делится на элементы, которые как раз и участвуют в операциях с логикой нодовых связей. Интерфейс Houdini вы можете видеть на рис.2
- Видовое представление сцены (вьюпорт)
- Окно нодового представления сцены (схематика)
- Окно параметров объектов и нод
- Панель инструментов трансформации, выделения, привязки и навигации
- Панель инструментов отображения
- Панель операционных инструментов (для конкретного режима)
- Полка основных инструментов Houdini
- Главное меню. Содержит главные операции взаимодействия со сценой и интерфейсом
- Тайм-лайн (анимационная шкала)
- Настройка обновления сцены (ручное/автоматическое)
- Статусная строка (пульс Houdini). Здесь выводятся важные сообщения системы
Всё пространство, которое показано на рис.1 — это рабочий стол (Desktop)
Чтобы поменять рабочий стол, нужно воспользоваться выпадающим меню (расположено сразу за главным меню вверху). Рабочие столы позволяют быстро менять компоновки окон, панелей и вкладок под текущую задачу
Рабочий стол включает в себя:
- окна
- шелфы (полки инструментов) с вкладками
- панели инструментов
- тайм-лайн
- меню
- и прочие элементы
Элементы управления компонентами рабочих пространств
Настройка окон
Между окнами есть пунктирные полоски. Нажимая на них можно менять положение окон местами
Стрелки между окнами сворачивают или разворачивают панели на весь экран
Чёрные стрелки в углу панелей — временно свернуть или показать окно/панель
Наведение в пространстве между окнами (оранжевая подсветка) — курсор приобретает вид обоюдной стрелки и можно менять размер окна перетаскиванием
Под белым треугольником вверху окна есть возможность разделить панель на части Split Pane (по вертикали или горизонтали)
Разделить интерфейс на 2 части по горизонтали — Alt+]
Разделить интерфейс на 2 части по вертикали — Alt+[
Чтобы убрать разделение, нужно закрыть все вкладки окна. Это можно сделать вручную (крестик в углу каждой вкладки). Или кликом по тому же белому треугольнику в углу окна → Close All Tabs — клавиши — Alt+/
Развернуть текущее окно (в которой находится курсор) на весь экран — Ctrl+B (или белый прямоугольник в углу панели вкладок текущей панели
Нажав на белый квадрат в панели вьюпорта можно разделить вьюпорт на несколько окон по предустановке
Вкладки рабочих пространств и окон
Добавить вкладку в панель — белый плюс рядом с каждой группой вкладок → New Pane Tab Type (выбрать из существующих) или New Pan Tab (создать пустую)
Заменить текущую вкладку на другую — ПКМ по активной вкладке → выбрать из списка
Вкладки можно перетаскивать (менять местами) или помещать в другие панели
Настройка Shelves (полок)
Полки — это наборы инструментов. На рис.1 под цифрой 7 они показаны. На этом рисунке активно 2 полки. Каждая полка всходит в набор — Shelf Set
Верхние шелфы (полки со вкладками можно убирать или добавлять) кликом по белому треугольнику → пункт меню Shelf Sets → выбрать нужные полки и активировать чек-бокс рядом с нужным элементом
Чтобы добавить вкладки к полке используем белый треугольник внизу → New Shelf
Чтобы добавить новую полку: под тем же значком → New Shelf Set
Чтобы убрать полку — выбрать Remove Shelf Set (останется в конфиге)
Чтобы удалить полку окончательно, в том числе из конфига — Delete Shelf Set
Сброс интерфейса по-умолчанию
- Чтобы сбросить интерфейс: кликнуть по выпадающему списку Desktop → выбрать Reload Current Desktop
- Чтобы полностью сбросить настроенные полки (их содержимое), например, если лишнее было удалено, нужно отредактировать файл конфигурации по пути «имя пользователя:Documentshoudini***toolbardefault.shelf». Либо же просто удалить этот файл default.shelf — в этом случае, полки и их содержимое вернётся к изначальному виду.
- При желании можно удалить и весь каталог Houdini** из директории документов по пути выше. При этом будет инициирован девственно-чистый запуск Houdini.
- Внимание! Редактирование и удаление документов нужно делать после закрытия программы!
Источник: kondratiki.pro