Scripts et sécurité

la possibilité d’inclure des scripts Python dans des fichiers blend est précieuse pour les tâches avancées telles que le rigging et l’automation. Cependant, ceci constitue un risque de sécurité puisque Python ne limite pas ce qu’un script peut faire.

Par conséquent vous ne devriez lancer que des scripts de sources connues et de confiance.

L’exécution automatique est désactivée par défaut. Cependant, certains fichiers blend ont besoin de cela pour fonctionner correctement.

Quand un fichier blend essaie d’exécuter un script et n’y est pas autorisé, un dialogue va apparaître, dans lequel vous pouvez choisir Allow Execution (autoriser l’exécution) ou Ignore (ignorer) les scripts.

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

Une alerte de lancement automatique dans l’entête de l’Éditeur Info.

Scripts dans des fichiers blend

Exécution automatique

Voici les différentes façons pour les fichiers blend de lancer automatiquement des scripts.

Blocs de texte enregistrés
A text data-block can have its Register option enabled which means it will load on start.
Contrôleurs d’animation
Les expressions Python peuvent être utilisées pour contrôler les valeurs et sont souvent utilisées dans les rigs et animations plus avancés.

Exécution manuelle

Il y a d’autres façons de lancer des scripts dans un fichier blend qui requièrent l’intervention de l’utilisateur (par conséquent ils seront lancés même si l’exécution automatique est désactivée), mais vous devriez être conscient que c’est le cas car cela n’est pas nécessairement évident.

  • Exécuter un script dans l’Éditeur de texte.
  • Rendering with Freestyle, because Freestyle uses scripts to control line styles.

Contrôle de l’exécution d’un script

Blender offre un certain nombre de moyens pour contrôler l’exécution automatique d’un fichier blend.

Tout d’abord, le Navigateur de fichiers possède l’option Trusted Source que vous pouvez utiliser au cas par cas pour contrôler l’exécution automatique.

Cependant, il se peut que vous ayez oublié de le définir, ou ouvert un fichier sans passer par le Navigateur de fichiers – aussi vous pouvez modifier les réglages par défaut (décrits ci-après).

Réglages par défaut

Dans l’onglet File de Preferences, il y a le bouton interrupteur Auto Run Python Scripts.

Ceci veut dire que l’option Trusted Source dans le Navigateur de fichiers sera activée par défaut, et les scripts peuvent se lancer au chargement des fichiers blend sans utiliser le Navigateur de fichiers.

Une fois l’option activée, vous avez la possibilité d’exclure certains dossiers ; une configuration typique serait de faire confiance à tous les chemins à l’exception du dossier download (téléchargement).

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

La case à cocher Auto Run Python Scripts.

Ligne de commande

Il se peut que vous souhaitiez exécuter le rendu par lot ou quelque autre tâche depuis la ligne de commande – en lançant Blender sans interface utilisateur.

Dans ce cas, les Preferences sont encore utilisées mais il se peut que vous vouliez les ignorer :

  • Activez avec -y ou --enable-autoexec
  • Désactivez avec -Y ou --disable-autoexec

Exemple

Le rendu d’un animation en mode d’arrière-plan, avec permission pour les contrôleurs et autres scripts de se lancer :

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

Note

Ces arguments de ligne de commande peuvent être utilisés pour démarrer une instance normale de Blender et ignoreront toujours les Preferences.