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

Здесь есть возможность читать онлайн «Michel Anders - Написание скриптов для Blender 2.49» весь текст электронной книги совершенно бесплатно (целиком полную версию без сокращений). В некоторых случаях можно слушать аудио, скачать через торрент в формате fb2 и присутствует краткое содержание. Жанр: Программы, на русском языке. Описание произведения, (предисловие) а так же отзывы посетителей доступны на портале библиотеки ЛибКат.

Написание скриптов для Blender 2.49: краткое содержание, описание и аннотация

Предлагаем к чтению аннотацию, описание, краткое содержание или предисловие (зависит от того, что написал сам автор книги «Написание скриптов для Blender 2.49»). Если вы не нашли необходимую информацию о книге — напишите в комментариях, мы постараемся отыскать её.

Расширьте мощность и гибкость Блендера с помощью Питона: высокоуровневого, легкого для изучения скриптового языка

Написание скриптов для Blender 2.49 — читать онлайн бесплатно полную книгу (весь текст) целиком

Ниже представлен текст книги, разбитый по страницам. Система сохранения места последней прочитанной страницы, позволяет с удобством читать онлайн бесплатно книгу «Написание скриптов для Blender 2.49», без необходимости каждый раз заново искать на чём Вы остановились. Поставьте закладку, и сможете в любой момент перейти на страницу, на которой закончили чтение.

Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

Выделенная строка в следующем куске кода определяет, в четной или нечетной секунде мы находимся. Если мы в четной секунде, мы наращиваем диффузный цвет до белого, так что мы просто сохраняем нашу вычисленную долю. Если мы в нечетной секунде, мы затемняем диффузный цвет до черного, так что мы вычитаем долю из максимально возможного значения (25). Наконец, мы масштабируем нашу величину в пределы между 0 и 1 и назначаем её во все три цветовых компонента для получения оттенка серого:

import Blender

def setcolor(mat):

s = Blender.Get('curframe')%25

if int(Blender.Get('curframe')/25.0)%2 == 0:

c = s

else:

c = 25-s

c /= 25.0

mat.rgbCol = [c,c,c]

if Blender.bylink and Blender.event == 'FrameChanged':

setcolor(Blender.link)

Скрипт заканчивается важной проверкой: Blender.bylink будет Истиной (True), только в том случае, если этот скрипт был вызван как script handler, и в этом случае Blender.event содержит тип события. Мы хотим действовать только при изменении кадра, так что мы проверяем здесь наличие этого события. Если эти условия удовлетворены, мы передаем Blender.link в нашу функцию setcolor() , так как там содержится объект, с которым наш связанный скрипт ассоциирован - в нашем случае это будет объект Material (Материал). (Этот скрипт доступен как MaterialScriptLink.py в файле scriptlinks.blend .)

Следующим пунктом в нашем списке нужно соединить скрипт с объектом, чей материал мы хотим изменить. Следовательно, мы выбираем объект, и в Окне Кнопоквыбираем панель Script. В панели Scriptlinks(Скриптсвязи), мы включаем скриптсвязи (кнопка Enable Script Links ) и выбираем кнопку MaterialScriptLinks. (Если нет кнопки MaterialScriptLinks, тогда выбранному объекту не был назначен материал. Убедитесь в том, что он есть.) Там должна теперь появиться надпись Select Script linkс кнопкой New(Новый). Щелкните на New, появится выпадающий список с доступными скриптами (файлы в текстовом редакторе). В нашем случае мы выбираем MaterialScriptLink.py , и на этом всё. Мы можем теперь протестировать нашу скриптсвязь, изменяя кадр в 3D-виде (с помощью клавиш стрелок). Цвет нашего объекта должен изменяться при изменении номера кадра. (Если у цвета не видно изменений, проверьте тип отображения в 3D-виде, должно быть solid или shaded.)

Изменение слоев Если мы хотим изменить видимостьобъекта изменение назначенного - фото 51
Изменение слоев

Если мы хотим изменить видимостьобъекта, изменение назначенного слоя (слоёв) - более распространённая и мощная техника, чем изменения свойств материала. Изменение назначенного слоя имеет, например, преимущество в том, что мы можем сделать объект полностью невидимым для ламп, которые сконфигурированы на освещение только определенных слоёв, и множество аспектов анимации (например, отклонение частиц воздействием полей) также могут быть ограничены определенными слоями. Также, изменение слоев не ограничено объектами со связанными с ними материалами. Вы можете точно так же легко изменить слой для Лампы или Камеры .

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

import Blender

def setlayer(ob):

layer = 1+int(Blender.Get('curframe')/25.0)%2

ob.layers = [ layer ]

ob.makeDisplayList()

Blender.Window.RedrawAll()

if Blender.bylink and Blender.event == 'FrameChanged':

setlayer(Blender.link)

Как и в нашем предыдущем скрипте, последние строки нашего скрипта проверяют, что он был вызван как скриптсвязь и по событию изменения кадров, и если это так, передают связанный объект в функцию setlayer() . (Скрипт доступен как OddEvenScriptlink.py в файле scriptlinks.blend .)

Все, что осталось сделать, это назначить скрипт как скриптсвязь ( scriptlink ) выбранному объекту. Снова, это выполняется в Окне Кнопок | панель Script, щелкая по кнопке Enabling Script Linksв панели Scriptlinks(если это необходимо, она могла все ещё быть выбранной после нашего предыдущего примера. Это глобальный выбор, то есть, включено или выключено для всех объектов). На этот раз мы выбираем скриптсвязи объекта вместо скриптсвязей материала и щелкаем на New, чтобы выбрать OddEvenScriptlink.py из выпадающего списка.

Читать дальше
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

Похожие книги на «Написание скриптов для Blender 2.49»

Представляем Вашему вниманию похожие книги на «Написание скриптов для Blender 2.49» списком для выбора. Мы отобрали схожую по названию и смыслу литературу в надежде предоставить читателям больше вариантов отыскать новые, интересные, ещё непрочитанные произведения.


Отзывы о книге «Написание скриптов для Blender 2.49»

Обсуждение, отзывы о книге «Написание скриптов для Blender 2.49» и просто собственные мнения читателей. Оставьте ваши комментарии, напишите, что Вы думаете о произведении, его смысле или главных героях. Укажите что конкретно понравилось, а что нет, и почему Вы так считаете.

x