Написание скриптов для Blender 2.49 - страница 15

Шрифт
Интервал

стр.

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

Blender.Noise: Шум (Noise) используется в генерации всех (очевидно) случайных образцах, которые формируют основу многих процедурных текстур в Блендере.  Этот модуль дает доступ к тем же программам, которые обеспечивают шум для этих текстур. Это может быть полезным не только в генерации ваших собственных текстур, но можно, например, использовать при произвольном размещении объектов, или осуществлении немного шаткого пути камеры, чтобы добавить реализма к вашей анимации.

Blender.Registry: данные в скриптах, неважно, локальные или глобальные, не сохраняются при выходе из скрипта. Это может быть очень неудобным, например, если Вы хотите сохранить пользовательские настройки для вашего заказного скрипта. Модуль Blender.Registry обеспечивает способ сохранять и извлекать постоянные данные. Тем не менее, он не обеспечивает никаких средств сохранения этих данных на диске, так что это постоянство действует только в течение сеанса Блендера.

>• Blender.Sys: По словам документации этого модуля:

>This module provides a minimal set of helper functions and

>data. Its purpose is to avoid the need for the standard

>Python module os in special os.path, though it is only

>meant for the simplest cases.

Перевод:

Этот модуль обеспечивает минимальный набор вспомогательных функций и данных. Его цель в том, чтобы избегнуть потребности в стандартном модуле Питона os и его подмодуле os.path, но все же, он предназначен только для самых простых случаев. Как мы аргументировали раньше, обычно рекомендуется устанавливать полный дистрибутив Питона, который, кроме прочего, включает модули os и os.path, они дадут Вам доступ к более широкому диапазону функциональности. Следовательно, мы не используем модуль Blender.sys в этой книге.

Blender.Types: Этот модуль предоставляет константы, которые могут быть использованы для проверки типа объектов. Встроенная функция Питона type(), возвращает тип своего аргумента. Это позволяет очень легко проверить объект данного типа по сравнению с одной из констант в этом модуле. Если мы хотим убедиться что некий объект - это объект Curve , мы можем, например, сделать это так:

>…

>if type(someobject) == Blender.Types.CurveType :

>   … сделать что-то, доступное только для объектов Curve …


 Итог

В этой главе, мы увидели как расширять Блендер с помощью полного дистрибутива Питона и познакомились со встроенным редактором. Это позволило нам написать скрипт, хотя и простой, полностью интегрировать его в меню скриптов Блендера и систему помощи. Мы охватили множество моментов, а именно:

• Что возможно и не возможно выполнить с помощью Питона в Блендере

• Как проинсталлировать дистрибутив Питона

• Как использовать встроенный редактор

• Как запускать скрипт на Питоне

• Как изучать встроенные модули

• Как написать простой скрипт, который добавляет объект в сцену

• Как зарегистрировать скрипт в меню скриптов Блендера

• Как документировать ваш скрипт дружественным к пользователю способом

• Как распространять скрипт

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


2

Создание и редактирование объектов

В некотором смысле, меши - наиболее важный тип объектов в 3D-приложении. Они лежат в основе большинства видимых объектов и являются сырьём, которое может быть оснащено (rigged) и анимировано в дальнейшем. В этой главе речь идет о создании мешей и способах манипулировать меш-объектом, как целиком, так и его индивидуальными сущностями, из которых он состоит - вершинами, рёбрами и гранями.


стр.