Как в Blender 2.81 запускать рендер в основном окне

В Blender 2.81 рендер по умолчанию открывается в новом окне. Для того, чтобы открывать его в текущем окне, как раньше, нужно открыть окно настроек Preferences перейти в раздел Interface и в группе Temporary Windows настроить параметр Render In нужным образом.

Создание компьютерной платы нодами

Стрим от Simon Thommes по созданию печатной платы шейдерными нодами в nodevermber челлендже.

 

 

BIS: обновление материалов под Blender 2.81

В связи с изменениями в структуре нодов в последнем релизе Blender 2.81 все открытые материалы в BIS обновлены под эту версию Blender. Совместимость с младшими версиями Blender могла быть потеряна (зависит от используемых в материале нодов).

Как привязать к нажатию кнопки вызов функции, а не оператора

К нажатию кнопки в пользовательском интерфейсе обычно привязывают вызов нужного оператора. Однако часто действия, которые нужно выполнить при нажатии на кнопку, достаточно просты и не требуют оформления в виде отдельного оператора. Да и забивать стек зарегистрированных операторов множеством специфических операторов, рассчитанных на выполнение одной конкретной узкоспециализированной функции не имеет смысла. Гораздо удобнее было бы связать нажатие кнопки с вызовом отдельной функции, однако API Blender позволяет связывать кнопки только с вызовом оператора.

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

Читать далее «Как привязать к нажатию кнопки вызов функции, а не оператора»

Как получить все возможные значения свойства Enum

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

Если попытаться задать значение, которого нет в перечислимом свойстве, Blender выдаст ошибку вида:

TypeError: bpy_struct: item.attr = val: enum «xxx» not found in (‘value_001′, value_002’, …)

где:

xxx — значение, которые мы попытались задать свойству EnumProperty

value_001, value_002, … — возможные значения, которые может принимать данное свойство EnumProperty

Читать далее «Как получить все возможные значения свойства Enum»

Как переместить курсор к нужному вертексу

Для того, чтобы передвинуть курсор к определенному вертексу меша нужно выполнить следующий код:

Умножение на матрицу мира должно осуществляться именно в таком порядке (матрица слева).

Добавление объекта в сцену в Blender 2.80 Python API

В API Blender 2.79 созданный объект добавляется в сцену через:

Попытка добавить объект в сцену таким образом в Blender 2.80, приводит к ошибке:

‘bpy_prop_collection’ object has no attribute ‘link’

В Blender 2.80 API добавлять объект нужно не в саму сцену, а в ее коллекции.

Добавить объект в активную коллекцию:

Добавить объект в коллекцию по ее имени:

 

Как поставить курсор в начало или в конец активного стрипа в Blender VSE

Чтобы поставить курсор в начало активного стрипа в Blender VSE нужно выполнить команду:

Чтобы переместить курсор в конец активного стрипа:

 

Как правильно задавать параметры математическими выражениями

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

Читать далее «Как правильно задавать параметры математическими выражениями»

Передача параметров в оператор

При создании собственных операторов иногда бывает нужно передавать в них определенные значения — вызывать операторы с параметрами.

Передаваемый параметр должен быть определен, как свойство оператора.

Читать далее «Передача параметров в оператор»

Перенос выделения с UV-развертки на меш

Для переноса выделения с UV-развертки на меш достаточно вспомнить, что развертка напрямую связана с мешем через мешлупы.

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

Читать далее «Перенос выделения с UV-развертки на меш»

Нодвембер

«Нодвембер» (Nodevember) — месячный челлендж, в ходе которого участникам предлагается каждый день создавать один процедурный объект для Blender. Это может быть материал, шейдер, объект,  все, что угодно, лишь бы оно было процедурным. «Все, что состоит из нодов, все это — нодвембер».

Сайт-визитка: nodevember.io

Читать далее «Нодвембер»

Как получить список вертексов, входящих в группу в Vertex Groups

Список вертексов, входящих в группу с определенным именем можно получить следующим образом:

 

Решаем проблему несоответствия размера сечения пути с применённым к нему профилем самому профилю

Автор: Андрей М.

Рубрика “Много букв о простом”

Нужна мне рама. Нет, две рамы: одна побольше другая поменьше, но сделанные из одного профиля. Нарисовал прямоугольник, выставил нужные размеры, продублировал, выставил другие размеры. Нарисовал отдельно профиль. Для сечения обоим прямоугольникам применил этот профиль. …почему получились разные рамы? И ни одна не соответствует размеру профиля? А, масштаб забыл применить. Применил. Размеры сечения поменялись, стали другими, но опять не равными профилю. Как сделать равными — читай ниже!

Решаем проблему несоответствия размера сечения пути с применённым к нему профилем самому профилю.

Такая проблема возникает, когда путь для профилирования строится любым образом, но потом масштабируется до нужного размера. При этом не важно приведён масштаб у него к 1 или нет. Если мы применим к нему нужный нам профиль, то он будет отличается по размеру от заданного… Почему? Сейчас увидим.

Читать далее «Решаем проблему несоответствия размера сечения пути с применённым к нему профилем самому профилю»