Drivers Panel – Панель Драйверів¶
Reference – Довідка
- Editor – Редактор:
Graph editor – Редактор Графів
- Mode – Режим:
Драйвери – Драйвери
- Panel – Панель:
– «регіон Бічносмуги > Драйвери»
- Shortcut – Шоткат:
N
Reference – Довідка
- Menu – Меню:
– «Контекстне меню > Редагувати Драйвер»
- Shortcut – Шоткат:
Ctrl-D
Ця панель видима у бічносмузі редактора драйверів Drivers Editor або як випливне меню, коли додається драйвер для властивості.
Вона показує властивість, що скеровується, за яким слідує серія устав, що визначають, як драйвер працює.
Driver Settings – Устави Драйвера¶
Type – Тип¶
Існує два категорії драйверів:
Built-in functions – вбудовані функції (Average – усереднення, Sum – сума, Min – мінімум та Max – максимум)
Керована властивість буде мати значення усереднення, суми, найнижчого чи найвищого (відповідно) зі значень, на які посилаються змінні драйвера Driver Variables. Якщо є лише одна змінна драйвера, то ці функції даватимуть однаковий результат.
Custom (Scripted Expression) – Кастомне (Скриптовий Вираз).
Довільний вираз Python, який може посилатися на змінні драйвера Driver Variables за іменем. Дивіться Expressions.
Driver Value – Значення Драйвера¶
Поточний результат укладу драйвера. Корисно для цілей зневадження.
Variables – Змінні¶
Дивіться Driver Variables.
Update Dependencies – Оновити Залежності¶
Силує оновлення для залежностей значення драйвера Driver Value.
Show in Drivers Editor – Показ у Редакторі Драйверів¶
Відкриває повністю функціональний редактор драйверів Drivers Editor. Ця кнопка показується лише у випливній версії панелі Drivers.
Driver Variables – Змінні Драйверів¶
Змінні є посиланнями на властивості, канали трансформацій або результат порівняння між трансформаціями двох об’єктів.
Драйвери повинні звертатися до даних об’єкта через змінні драйверів Driver Variables, а не через прямі посилання у виразі на Python, щоб залежності були коректно відстежені.
- Add Input Variable – Додати Змінну Уводу
Додає нову змінну драйвера Driver Variable.
- Copy/Paste Variables – Копіювати/Вставити Змінні
Копіює список поточних змін, що його можна було вставити в інший список змінних драйвера.
- Name – Ім’я
Ім’я для використання в скриптових виразах. Це ім’я повинно починатися з літери, і містити лише літери, цифри або підкреслення.
- Variable Type – Тип Змінної
Тип використовуваної змінної.
- Single Property – Одинична Властивість
-
Дістає значення властивості RNA, визначеної посиланням на блок даних та рядком шляху.
У випадку властивостей трансформ, це поверне точне значення властивості інтерфейсу користувача, тоді як канал трансформ Transform Channel врахує приріднювання та/або примуси при потребі.
Дивіться також Custom Properties – Кастомні Властивості.
- ID Type – Тип за Ідентифікатором
Тип блоку за ідентифікатором. Наприклад: Key, Image, Object, Material.
- ID – Ідентифікатор
Ідентифікатор типу блоку за ідентифікатором. Наприклад: «Material.001».
- RNA Path – Шлях RNA
The RNA name of the property, based on a subset of Python attribute access syntax. For example:
location.x
orlocation[0]
for the X location animation channel value (before parenting or constraints), or["prop_name"]
for a custom property.- Fallback
If enabled, allows specifying a fallback value to use as the variable value if the RNA Path cannot be resolved, instead of causing a driver evaluation failure. For more info see Context Property below.
Порада
The easiest way to create a variable of this type is to use the Copy As New Driver context menu option of the input property, and paste the result into the driver via Paste Driver Variables.
- Transform Channel – Канал Трансформ
-
Отримує значення каналу Трансформ від об’єкта або кістки.
- ID – Ідентифікатор
Ідентифікатор об’єкта. Наприклад: Cube, Armature, Camera.
- Bone – Кістка
For armatures, the name of the Armature bone. For example: «Bone», «Bone.002», «Arm.r».
- Type – Тип
Наприклад: X Location, X Rotation, X Scale.
Опція Average Scale – «Усереднення Масштабу» дістає комбіноване значення масштабу, обчислене як кубічний корінь загальної зміни об’єму. На відміну від X/Y/Z Scale, це значення може бути від’ємним, якщо об’єкт перевернутий від’ємним масштабуванням.
- Mode (Rotation) – Режим (Обертання)
Для каналів обертання визначає тип даних обертання для використання, включаючи різні явні порядки за Ейлером – Euler. Стандартним є використання порядку за Ейлером цілі. Дивіться Rotation Channel Modes.
- Space – Простір
World Space – Простір Світу, Transform Space – Простір Трансформ, Local Space – Локальний Простір.
- Rotational Difference – Різниця Обертань
Надає значення різниці обертань між двома об’єктами або кістками, у радіанах.
- Bone – Кістка
For armatures, the name of the Armature bone. For example: «Bone», «Bone.002», «Arm.r».
- Distance – Відстань
-
Надає значення відстані між двома об’єктами або кістками.
- Bone – Кістка
For armatures, the name of the Armature bone. For example: «Bone», «Bone.002», «Arm.r».
- Space – Простір
World Space – Простір Світу, Transform Space – Простір Трансформ, Local Space – Локальний Простір.
- Context Property
-
Provides the value of a property that is implicitly referring to either a scene or a view layer of the currently evaluating animation system. This is a weak reference which does not lead to the scene or view layer referenced from the driver to be linked when linking animation data.
An example when such properties comes in play is referring to a transformation of the active camera. It is possible to set up a driver in a character file, and make the driver use the set camera when the character is linked into a set.
- Context – Контекст
Active Scene, Active View Layer.
- RNA Path – Шлях RNA
The RNA name of the property, based on a subset of Python attribute access syntax. For example:
camera.location.x
orcamera.location[0]
for the camera X location animation channel value (before parenting or constraints), or["prop_name"]
for a custom property.- Fallback
If enabled, allows specifying a fallback value to use as the variable value if the RNA Path cannot be resolved, instead of causing a driver evaluation failure.
This feature can be very useful for making drivers more robust when implementing scene-global options using custom properties. When the object is linked into a different scene, these custom properties may not exist there, and the fallbacks can be used to provide sensible default values.
Fallbacks can also be used to emulate the lookup behavior of the View Layer mode of the material Attribute Node.
Порада
Although the values of the x/y/z animation channels for the camera location can be accessed via
camera.location[0/1/2]
, retrieving its world space location and orientation after parenting and constraints currently requires usingcamera.matrix_world
. This property can be understood easily by viewing the matrix as an array of four vectors in World space:matrix_world[0][0/1/2]
is the Screen Right direction vector (camera local X).matrix_world[1][0/1/2]
is the Screen Up direction vector (camera local Y).matrix_world[2][0/1/2]
is the opposite of the direction the camera is pointing.matrix_world[3][0/1/2]
is the location of the camera.
- Value – Значення
Показує значення змінної.
Rotation Channel Modes – Режими Каналів Обертання¶
Канали Трансформ Обертання підтримують ряд режимів операції, включаючи:
- Auto Euler – Авто Ейлер
Використовує порядок за Euler цілі для розкомпонування обертання на канали.
- XYZ Euler, …
Явно визначає порядок за Euler для використання.
- Quaternion – Кватерніон
Надає представлення Quaternion для обертання.
- Swing and X/Y/Z Twist – Гойдання та Кручення X/Y/Z
Розкладає обертання на дві частини: обертання гойдання Swing, що націлюється на визначену вісь в його фінальному напрямку, та за ним, обертання кручення Twist навколо цієї осі. Це часто необхідно для керування коригувальними ключами форм Shape Keys та кістками для органічного обертання суглоба.
Це розкладання часто продукується в оснастках, використовуючи допоміжну кістку за допомогою примусу загасального відстеження Damped Track Constraint для витягання частини гойдання та її нащадка за допомогою копіювання трансформ Copy Transforms для витягання компонента кручення.
Значеннями каналів для Swing and Y Twist є:
- Y Rotation – Обертання Y
Справжній кут обертання кручення.
- W Rotation – Обертання W
Справжній кут обертання гойдання, незалежно від його напрямку.
- X Rotation, Z Rotation – Обертання X, Обертання Z
Виважені кути, що представляють величину гойдання навколо осі X/Z.
Ця величина кута дорівнює W Rotation, коли обертання є чисто навколо цієї осі, та щезає до нуля, як напрямок змінюється у напрямі до іншої осі, дотримуючись кривих спаду з графа справа.
Математично, кути гойдання обчислюються з компонентів кватерніона, за допомогою \(2 \arccos(w)\) для W та \(2 \arcsin(x)\) тощо для інших. Компонент обертання гойдання, що відповідає осі кручення, є завжди 0, та замінюється кутом кручення.
Expressions – Вирази¶
- Expression – Вираз
Поле тексту, де ви можете уводити довільний вираз на Python, що посилається на змінні драйвера Driver Variables за їх іменами..
Вираз має доступ до набору стандартних констант та математичних функцій із
math
,bl_math
та інших модулів, наданих у просторі імен драйверів Driver Namespace. Щодо прикладу додавання кастомної функції у простір імен дивіться driver namespace example.З міркувань продуктивності найкраще використовувати наскільки це можливо підмножину Simple Expressions.
- Use Self – Self-змінна
Якщо ця опція увімкнена, то змінна
self
може використовуватися для драйверів для посилання на власні їх дані. Корисно для об’єктів та кісток, щоб уникати створювання змінної драйвера Driver Variable, що спрямована на саму себе.Приклад:
self.location.x
, що застосовується до властивості обертання по Y одного і того ж об’єкта, змусить перекидатися при переміщуванні.Зауважте, що залежності для властивостей доступні через
self
, можуть не бути повністю відстежені.
Simple Expressions – Прості Вирази¶
Blender може обчислювати корисну підмножину виразів драйверів на Python безпосередньо, що значно покращує продуктивність, особливо на багатоядерних системах. Щоб скористатися цим, вираз драйвера повинен використовувати лише наступні функціональності:
- Variable Names – Імена Змінних
Використовуються символи лише набору ASCII.
- Literals – Літерали
Дійсночислові та десяткові цілочислові.
- Globals – Глобали
frame
- Constants – Константи
pi
– «пі»,True
– «істина»,False
– «хиба»- Operators – Оператори
+
,-
,*
,/
,==
,!=
,<
,<=
,>
,>=
,and
– «та»,or
– «або»,not
– «ні», conditional operator – умовний оператор/ ternary if – тернарний оператор або потрійне якщо- Standard Functions – Стандартні Функції
min
,max
,radians
,degrees
,abs
,fabs
,floor
,ceil
,trunc
,round
,int
,sin
,cos
,tan
,asin
,acos
,atan
,atan2
,exp
,log
,sqrt
,pow
,fmod
- Blender Provided Functions – Надані Blender’ом Функції
lerp
,clamp
,smoothstep
Прості вирази обчислюються навіть тоді, коли виконання скрипту Python вимкнено.
Коли використовується вираз поза цією підмножиною, то Blender показу попередження «Slow Python expression» – «Повільний вираз Python». Проте, поки більшість драйверів використовують прості вирази, використання складного виразу в кількох вибраних – це нормально.
Дивись також
Extending Blender with Python – Розширення Blender за допомогою Python.
Python і щодо нього документація – `documentation.