Scripting & Security – Скриптування та Безпека

The ability to include Python scripts within blend-files is valuable for advanced tasks such as rigging and automation. However, it poses a security risk since Python does not restrict what a script can do. Therefore, you should only run scripts from sources you know and trust. Automatic execution is disabled by default; however, some blend-files need this to function properly.

Коли blend-файл намагається виконати скрипт, але це не дозволено, то з’явиться діалог. У ньому ви можете обрати дозволити виконання Allow Execution або ігнорувати Ignore скрипти.

../../_images/advanced_scripting_security_autorun-scripts-dialog.png

Попередження про Авто-запуск у заголовку Редактора Інфо – Info Editor.

Scripts in Blend-Files – Скрипти у Blend-Файлах

Auto Execution – Авто Виконання

Ось різні способи, якими blend-файли можуть автоматично запускати скрипти.

Registered Text-Blocks – Зареєстровані Блоки Тексту

Блок даних тексту може мати увімкнену опцію реєстрування Register, що означає, що він буде завантажуватися при запуску програми.

Animation Drivers – Драйвери Анімації

Вирази на Python можуть бути використані для значень Drive та часто використовуються у більш просунутих оснастках та анімаціях.

Manual Execution – Виконання Вручну

Існують і інші способи, якими можна виконувати скрипти у blend-файлах, що вимагають взаємодії користувача (а тому ці скрипти будуть виконуватися, коли опція авто виконання вимкнута), але ви повинні знати, що так буває, і це не є обов’язково очевидним.

  • Виконання скрипту у Редакторі Тексту – Text Editor.

  • Рендеринг рушієм Freestyle, оскільки Freestyle використовує скрипти для керування стилями ліній.

Controlling Script Execution – Керування Виконанням Скрипту

Blender надає кілька способів керуванням тим, чи скриптам із blend-файлу дозволено автоматично виконуватися.

First, the File Browser has the option Trusted Source which you can use on a case-by-case basis to control auto execution. Since you may forget to set this, or may open a file without going through the File Browser, you can change the default (described next).

Setting Defaults – Установлення Стандартів

In the Preferences, there is the toggle to Auto Run Python Scripts. This means the Trusted Source option in the File Browser will be enabled by default, and scripts can run when blend-files are loaded without using the File Browser. Once enabled you have the option to exclude certain directories; a typical configuration would be to trust all paths except for the download directory.

../../_images/animation_drivers_troubleshooting_autorun-user-preference.png

Стяг авто запуску скриптів Auto Run Python Scripts.

Command Line – Командний Рядок

You may want to perform batch rendering or some other task from the command line, running Blender without an interface. In this case, the Preferences are still used but you may want to override them:

  • Увімкнення здійснюється через додання до команди виконання Blender’а аргументу -y або --enable-autoexec

  • Вимикання здійснюється через додання до команди виконання Blender’а аргументу -Y or --disable-autoexec

Example – Приклад

To render an animation in background mode, allowing drivers and other scripts to run:

blender --background --enable-autoexec my_movie.blend --render-anim

Примітка

Ці аргументи командного рядка можуть використовуватися для запуску звичайного примірника Blender’а та замістять уподобання Preferences.