Под катом вы найдете отзыв специалистов из Houdini Team краснодарской студии Plarium о видеокурсах и от Mix Training, посвященных работе с языками Python и Vex в графической программе Houdini.
Также в этом посте ребята делятся подборкой материалов, которые будут полезны всем интересующимся.

Немного вводной
Языком Vex пугают начинающих пользователей Houdini. Во многом благодаря ему сложился стереотип о том, что в Houdini обязательно нужно кодить. На самом деле в Houdini можно кодить, и это как раз облегчает и ускоряет многие процессы, а не усложняет их. Например, помогает избежать вот таких жутковатых сетапов:

Язык Vex создавался для написания шейдеров в рендере Mantra (встроенный рендер программы Houdini), но довольно быстро вышел за пределы изначального использования благодаря своей гибкости, простоте и скорости. Название языка происходит от сокращения Vector EXpressions, но с помощью него можно манипулировать совершенно разными типами данных. Так, Vex в основном используется для различного рода манипуляций составляющими геометрии (точками, полигонами), а также для процедурного создания геометрии.
Язык Vex довольно нетребователен к синтаксису и форматированию кода, обладает не очень высоким порогом вхождения. Зачастую достаточно пары-тройки строчек, чтобы достичь желаемого результата. Среди его плюсов также многопоточность и, как следствие, хорошая скорость. Программирование на Vex нужно как для решения элементарных задач, так и для комплексных и сложных вычислений, и со всем этим язык справляется крайне быстро. С его помощью можно делать массу потрясающих вещей в процедурном моделинге, в анимации и симуляциях.
Конечно, нам нравится, когда кто-то думает, что мы такие все из себя программеры, но на самом деле мы привыкли к функциональности и удобству (хотя многие, работая в Houdini первый раз, могут решить, что удобнее только спать на гвоздях). Если бы какой-то инструмент не делал нашу жизнь проще, мы бы им не пользовались. Поэтому не стоит воспринимать возможность программирования как то, что мешает начать изучать Houdini. Vex — это всего лишь еще один (пусть и очень хороший) инструмент среди множества других.
Python, гораздо более известный в широких кругах, в представлении и подробном описании не нуждается. Расскажем, зачем он нам. В контексте Houdini Python используется для управления самой программой (создание нод в проекте, операции с файлами, автоматизация повторяющихся операций, воспроизведение сложных комбинаций действий и т. д.). Также программирование на Python нам нужно для создания красивых интерфейсов в инструментах и написания удобных команд, управляющих ассетами при нажатии на кнопку. Если бы в Houdini-ассете существовала кнопка «сделать красиво», она была бы написана на Python. Кроме того, иногда он применяется для манипуляции геометрией (как и язык Vex), но необходимо понимать, что Python менее интуитивен в настройке для таких целей и зачастую справляется с этой работой медленнее, чем Vex.
Подробнее о курсах
Разработчик Houdini — компания Side Effects Software — выпускает так много обновлений и предоставляет столько возможностей для пользователей, что официальная документация и официальные обучающие курсы просто не успевают актуализироваться. Поэтому мы по крупицам собираем информацию из разных источников (платных, бесплатных, официальных и не очень), чтобы в наиболее полном объеме овладеть этими гибкими и мощными инструментами — языками программирования Vex и Python (да и Houdini в целом). Наш выбор пал на курсы от Mix Training, так как они претендовали на широкий охват материала о Python и Vex в Houdini.
У автора курсов есть (неплохой ресурс для желающих начать обучение Houdini), отличающийся неформальной расслабленной подачей и большим количеством тем, от моушен-дизайна до геймдева. Помимо канала у него еще своя гаражная death-metal-группа. Мы решили, что автору стоит доверять, и приобрели и , по 8 часов каждый курс (можно смотреть на скорости 1,5).
Плюсы
- Полезность для специалистов разного уровня. Эти курсы можно сравнить с библиотекой, в которой лежат все самые важные аспекты Vex и Python в Houdini, от элементарных вещей до продвинутых и сложных сетапов. В Vex — от определения атрибутов и переменных до оригинальной реализации алгоритма Space Colonization. В Python — от простого автоматического создания нод в сцене и маленьких улучшений в самой программе Houdini до написанного с нуля менеджера атрибутов. Есть вся необходимая базовая информация по синтаксису этих двух языков и об их взаимодействии с Houdini.
В курсе много всего для начинающих, но это нас совершенно не смутило. Пересматривая видеоуроки или перечитывая статьи о базовых вещах в Houdini, находишь что-то новое и по-новому понимаешь уже известное. Кроме того, в Houdini почти все можно делать разными способами, формируя со временем свой уникальный стиль, поэтому за работой мастера всегда наблюдать ценно и интересно. Даже то, как организованы ноды в проекте, может многое сказать о его создателе.
- Актуальность. Обширные и фундаментальные курсы редко бывают современными. Многие из них не угнались за развитием программы Houdini, которая за последние три года довольно сильно изменилась. На смену устоявшимся подходам пришли новые, более оптимизированные и удобные (старые никуда не делись, но перестали быть предпочтительными). В частности, увеличилась доля языка Vex в работе с Houdini. Изучая основы Houdini, важно знать, какие методы актуальны, чтобы, сталкиваясь с более старым (и зачастую более сложным) учебным материалом, понимать, как эффективно применить получаемую информацию на практике.
И минусы…
- В курсах нет готовых решений для реального продакшена. Автор выбирает темы уроков и способы решения задач скорее для демонстрации возможного, чем для получения оптимизированного конечного результата. Эти решения не всегда самые эффективные, и не все из них подходят под определение «лучших практик». Если вы ищете пошаговую инструкцию, охватывающую все стадии производства от начала до финального рендера (как , например), то эти курсы не совсем для вас. Автор предпочитает оставлять финал открытым, что может немного обескуражить начинающих пользователей Houdini.
- Побочные эффекты неформальной подачи и импровизации. Автор иногда делает ошибки (что может быть и плюсом) или тратит время урока на то, чтобы что-то вспомнить или сконцентрироваться. Учитывая, что информация в курсах во многом ознакомительного характера из-за широты охвата материала, возможности подробно останавливаться на каких-то моментах нет. Из-за этого заминки автора и его спонтанные решения могут вызывать еще больше вопросов. К счастью, у него есть о создании менеджера проектов в Houdini с помощью Python, и в некоторых аспектах они более практичны и подробны, чем информация по той же теме в курсах.
На наш взгляд, плюсы сильно перевешивают минусы. Если у вас есть желание более или менее систематизированно изучать возможности программирования в Houdini (и саму Houdini), то с этих видеуроков можно начать. Они также будут хорошим дополнением к другим обучающим материалам и ресурсам — как обзор основных аспектов использования Vex и Python в Houdini или видеосправочник, в котором можно быстро что-то подсмотреть.
Бонус: несколько вдохновляющих и обучающих ссылок
- — GreyScaleGorilla в мире Houdini (пользователи Cinema4d нас поймут). Очень широкий охват тем и отличная подача материала. Кстати, совсем недавно у них стартовал новый сезон.
- — человек-легенда в houdini-комьюнити. Он больше про вдохновение, чем про конкретные практические приемы. Вспомните о нем, если будет нужно увидеть и почувствовать, что можно делать в Houdini.
- — отличный дизайнер и преподаватель.
- — автор одного из самых значимых и популярных ресурсов для обучения Houdini — . Ресурс, обновляющийся регулярно, просто ломится от количества полезной информации и готовых решений. Однозначно рекомендуем.
- — наша соотечественница, автор знакомого многим великолепного курса для Houdini . Осилить его полностью с первого и даже со второго раза вряд ли получится, но бросать точно не стоит: так много информации о продвинутых практиках применения Vex и процедурном моделинге найти трудно. Для вдохновения рекомендуем ознакомиться с презентацией автора .
- — канал с очень качественными уроками по Houdini на русском языке. Настолько качественными, что некоторые англоязычные пользователи даже хотели бы выучить русский, чтобы иметь возможность эти уроки смотреть. Учебные материалы разделены по в зависимости от уровня сложности.
Источник: habr.com
