Confecção de scripts e segurança¶
A habilidade de incluir script Python embutidos nos arquivos Blender é um grande agregador de valor para tarefas avançadas como automações, montagem de arranjos de animação e na utilização do motor de jogo. Contudo, ela impõe determinados riscos de segurança pois a linguagem de programação Python não restringe o que os scripts podem fazer.
Portanto, você deve somente executar scripts a partir de fontes confiáveis as quais você conhece e confia.
A execução automática de scripts é desabilitada por padrão, contudo, alguns arquivos Blender necessitam justamente essa opção habilitada para que possam funcionar de maneira apropriada.
Quando um arquivo Blender tenta executar um script e sua execução não é permitida, uma mensagem irá aparecer no cabeçalho com as mensagens de opções Recarregar confiáveis ou Ignorar.

Um alerta de execução automática no cabeçalho da Janela de informações.
Scripts em arquivos Blender¶
Execução automática¶
Presentes aqui, há algumas opções de maneiras diferentes as quais os arquivos Blender podem executar os scripts automaticamente.
- Blocos de textos registrados
- Um bloco de texto pode ter a sua opção Register ou Registrar habilitada, o que significa que ele irá ser carregado durante a inicialização.
- Controladores de animação
- Expressões em Python podem ser usadas para Controlar valores e são muitas vezes usadas em arranjos mais avançados e animações.
- Inicialização automática do motor de jogo
- Scripts muitas vezes são usados para a lógica de jogo, e alguns arquivos Blender podem possuir a bandeira de Inicializar automaticamente habilitada juntamente com os executáveis do jogo, o que os executará sob demanda durante o carregamento do jogo.
Execução dos manuais¶
Existem outras maneiras as quais um arquivo Blender pode executar scripts que requerem interação com o usuário (portanto irão ser executados mesmo que a execução automática esteja desabilitada), mas você deve estar ciente de que este é um dos casos onde isso não é necessariamente óbvio.
- Executando um script no editor de textos.
- A renderização usando o motor de renderização Freestyle, devido ao fato do renderizador Freestyle usar scripts Python para controlar os estilos de linha.
- Execução do motor de jogo.
Controlando a execução de scripts¶
O Blender provê determinadas maneiras de controlar se os scripts que estão dentro de um arquivo Blender podem ser executados automaticamente.
Primeiramente, o navegador de arquivos possui a opção Fontes confiáveis que você pode usar como opção básica caso a caso para controlar a execução automática.
Contudo, você pode esquecer-se de definir isto, ou abrir um arquivo sem a utilização do navegador de arquivos interno do Blender – portanto você pode alterar os padrões (descrições na próxima seção).
Definição de padrões¶
Dentro da aba Arquivo presente no editor «Preferências de usuário», existe a opção de alternância Auto Run Python Scripts.
Isso significa que a opção Fontes confiáveis dentro do navegado de arquivos estará habilitada por padrão, e os scripts poderão ser executados quando os arquivos Blender forem carregados sem a utilização do navegador de arquivos.
Uma vez que esteja habilitada, você tem a opção de excluir determinados diretórios, uma configuração típica pode ser definida como marcar todos os caminhos como confiáveis, exceto o diretório de downloads.

Executar automaticamente scripts Python.
Linha de comando¶
Você pode querer a execução de uma renderização em lotes ou executar alguma outra tarefa a partir da linha de comando – executando o Blender sem uma interface.
Neste caso, as «Preferências de usuário» ainda são utilizadas mas você pode querer que sejam sobrepostas:
- Habilite usando o argumento
-y
ou--enable-autoexec
- Desabilite com o argumento
-Y
ou--disable-autoexec
Exemplo¶
A renderização de uma animação em modo de plano de fundo, permitindo que controladores e outros scripts sejam executados:
blender --background --enable-autoexec my_movie.blend --render-anim
Nota
Estes argumentos de linha de comando podem ser usados para iniciar uma instância regular do Blender e ainda assim irão sobrepor as Preferências de Usuário.