Читаем Написание скриптов для Blender 2.49 полностью

Проектируя сложные объекты с подвижными частями, мы хотели бы управлять перемещением этих частей относительно друг друга. Иногда, для достижения цели мы можем использовать физические движки, например, такие как Bullet physics, но часто этого не достаточно для точного воспроизведения анимации, физический движок  не всегда предоставляет необходимый контроль над сценой. Большую часть времени умное использование многократных ограничений будет вполне достаточным, но иногда взаимосвязи между объектами (другими словами хорошая анимация) не могут быть выражены с точки зрения простых ограничений и ключевой анимации. В таких случаях мы можем расширить возможности Блендера, определив собственные ограничения или отношения между анимируемыми объектами, используя Питон.

В этой главе мы увидим, как можно связать встроенные ограничения с объектами Блендера и как определить сложные отношения между анимированными объектами используя так называемые pydrivers. Мы также определим новые сложные ограничения, которые могут использоваться точно так же, как и встроенные ограничения. Мы пока не будем изучать такие определения, как ключевые кадры (key frames), поскольку мы столкнемся с ними в более поздних главах.

В этой главе мы узнаем:

• Как управлять одним IPO из другого в выражениях Питона

• Как работать с некоторыми ограничениями, присущими pydrivers

• Как управлять движением объектов и костей, добавляя ограничения

• Как написать ограничение в Питоне, которое привяжет один объект к ближайшей к нему вершине на другом объекте

Для начала давайте познакомимся с некоторыми определениями, чтобы получить ясное представление о том, с чем мы имеем дело.

<p>Акцентируем внимание на свойствах анимации</p>

Блендер универсален, но достаточно сложен. Прежде, чем мы сможем манипулировать анимацией объектов с помощью Питона, необходимо, чтобы мы разобрались с основными понятиями.

IPO

В Блендере почти любой объект может быть анимирован. Обычно это делается, с помощью фиксации некоторых параметров, таких как положение в пространстве некоего объекта в определенных ключевых кадрах и интерполяция этих параметров для остальных промежуточных кадров. В Блендере группы объектов, задействованные в анимации собираются в так называемые кривые IPO. Например, все пространственные параметры, такие как местоположение, вращение, и масштаб сгруппированы как тип объекта IPO и могут быть связаны со многими объектами Блендера: мешем, камерой, или лампой. Большинство свойств  материалов в Блендере также могут быть сгруппированы в соответствующем IPO. Получается, что ''Материальный'' тип IPO может быть связан с любым объектом, которому присвоен  материал. Аналогично, тип IPO Лампы должен быть связан с объектом Лампы.

IPO это аббревиатура, но что она обозначает кажется немного неясным. Wiki Блендера заявляет, что она происходит от слова InterPOlation, то есть от математической функции (почитайте Wiki там есть интересная информация на этот счет - прим. пер), но в Блендере мы столкнемся с интерполяцией как с объектом. И большую часть времени будем использовать  IPO как существительное, однако,  это обсуждение становится немного академическим.

Каждый IPO может быть связан с более чем одним объектом. Например, возможно анимировать вращение нескольких объектов, объединив их с одним объектом IPO. В Блендер API кривые IPO представлены объектами IPO. Объект IPO может быть связан с другим объектом посредством метода setIpo(). Следующая таблица дает краткий обзор типов IPO,  IPO-каналов, и список объектов с которыми они могут взаимодействовать. Обратитесь к API документации о модуле Blender.IPO за подробной информацией.

(http://www.blender.org/documentation/249PythonDoc/index.html).

Тип IPO

Object

IPO каналы (некоторые примеры, см. полный список в API документации)

LocX, LocY, LocZ (перемещение)

RotX, RotY, RotZ (вращение)

ScaleX, ScaleY, ScaleZ (маштаб)

Соответствующие объекты в Блендере

Все объекты Блендера, которые можно перемещать: Меш, Лампа, Камера и др.

Тип IPO

Pose

IPO каналы (некоторые примеры, см. полный список в API документации)

RotX, RotY, RotZ (вращение)

Соответствующие объекты в Блендере

Кости (Bone)

Тип IPO

Material

IPO каналы (некоторые примеры, см. полный список в API документации)

R,G,B (рассеянный цвет)

Соответствующие объекты в Блендере

Любые объекты, использующие материалы

Тип IPO

Texture

Перейти на страницу:

Похожие книги

1С: Бухгалтерия 8 с нуля
1С: Бухгалтерия 8 с нуля

Книга содержит полное описание приемов и методов работы с программой 1С:Бухгалтерия 8. Рассматривается автоматизация всех основных участков бухгалтерии: учет наличных и безналичных денежных средств, основных средств и НМА, прихода и расхода товарно-материальных ценностей, зарплаты, производства. Описано, как вводить исходные данные, заполнять справочники и каталоги, работать с первичными документами, проводить их по учету, формировать разнообразные отчеты, выводить данные на печать, настраивать программу и использовать ее сервисные функции. Каждый урок содержит подробное описание рассматриваемой темы с детальным разбором и иллюстрированием всех этапов.Для широкого круга пользователей.

Алексей Анатольевич Гладкий

Программирование, программы, базы данных / Программное обеспечение / Бухучет и аудит / Финансы и бизнес / Книги по IT / Словари и Энциклопедии
1С: Управление торговлей 8.2
1С: Управление торговлей 8.2

Современные торговые предприятия предлагают своим клиентам широчайший ассортимент товаров, который исчисляется тысячами и десятками тысяч наименований. Причем многие позиции могут реализовываться на разных условиях: предоплата, отсрочка платежи, скидка, наценка, объем партии, и т.д. Клиенты зачастую делятся на категории – VIP-клиент, обычный клиент, постоянный клиент, мелкооптовый клиент, и т.д. Товарные позиции могут комплектоваться и разукомплектовываться, многие товары подлежат обязательной сертификации и гигиеническим исследованиям, некондиционные позиции необходимо списывать, на складах периодически должна проводиться инвентаризация, каждая компания должна иметь свою маркетинговую политику и т.д., вообщем – современное торговое предприятие представляет живой организм, находящийся в постоянном движении.Очевидно, что вся эта кипучая деятельность требует автоматизации. Для решения этой задачи существуют специальные программные средства, и в этой книге мы познакомим вам с самым популярным продуктом, предназначенным для автоматизации деятельности торгового предприятия – «1С Управление торговлей», которое реализовано на новейшей технологической платформе версии 1С 8.2.

Алексей Анатольевич Гладкий

Финансы / Программирование, программы, базы данных