Últimas noticias
Uso de bloques en Rhino 8: guía paso a paso para modelos arquitectónicosGuía de MoGraph en Cinema 4D: crea escenas con Cloner, Fields y TracerCómo crear prompts de video arquitectónico con Gemini Omni Flash: guía paso a pasoGestiona scripts de Python de forma segura en Blender: ajustes y APIAivres presenta los sistemas Vera Rubin NVL72 y HGX Rubin NVL8DupEdge y History en Rhino 8: guía para extraer curvas de aristasComponentes de SketchUp: guía para gestionar elementos repetidosGeneración de imágenes arquitectónicas con Nano Banana 2.1: API y promptsCreación de contenido procedimental con Unreal Engine PCG: guía inicialAnálisis de videos de arquitectura con Gemini API: guía paso a paso
TutorialesBlender

Gestiona scripts de Python de forma segura en Blender: ajustes y API

Los scripts de Python en archivos de Blender pueden servir para rigging y automatización, pero también implican riesgos de seguridad. Esta guía explica los ajustes de ejecución automática y los fundamentos de la API de colecciones.

Espacio de trabajo de visualización arquitectónica organizado con un modelo de interior agrupadoImagen IA
Imagen ilustrativa generada con IA.Imagen: 3dsınıfı / FCA AI

En resumen

  1. La ejecución automática de scripts de archivos .blend está desactivada de forma predeterminada en Blender.
  2. La opción Trusted Source del Explorador de archivos permite gestionar los permisos de ejecución automática para cada archivo.
  3. En la línea de comandos, -y o --enable-autoexec activa la ejecución, mientras que -Y o --disable-autoexec la desactiva.
  4. Collection.objects.link() añade un objeto a una colección; unlink() lo quita.

¿Qué aprenderás en esta guía?

Añadir scripts de Python a archivos de Blender puede resultar útil para tareas avanzadas como el rigging y la automatización. El rigging consiste en crear los sistemas de movimiento y control de un personaje u objeto. Sin embargo, los scripts de Python no tienen restricciones sobre lo que pueden hacer dentro de un archivo, por lo que ejecutar un script de origen desconocido puede suponer un riesgo de seguridad.

En esta guía aprenderás a interpretar el aviso de scripts que aparece al abrir un archivo .blend, a gestionar la ejecución automática en los ajustes generales y para cada archivo, y a entender para qué sirven las opciones de la línea de comandos. En la última sección veremos la relación entre colecciones y objetos en la API de Python de Blender. Estos pasos no demuestran que un script sea seguro: es necesario evaluar con cuidado su procedencia y los permisos de ejecución.

Requisitos y preparación

La guía se basa en la documentación de seguridad de scripts de Blender y en la documentación de la API de Python de Blender. Una de las páginas de la API se titula Blender 5.2 Python API Documentation. Las fuentes no especifican requisitos de hardware ni de cuenta de usuario. Si trabajas con otra versión de Blender, compara el uso de la API con la documentación correspondiente a esa versión.

Antes de empezar, comprueba de dónde procede el archivo y si es necesario ejecutar los scripts que contiene. La documentación de seguridad de Blender recomienda ejecutar únicamente scripts cuyo origen se conoce y en los que se confía. Mantener desactivada la ejecución automática no significa que el archivo no contenga código ni que ese código no pueda ejecutarse mediante una acción del usuario.

Paso a paso: gestionar los permisos de ejecución de scripts

  1. Revisa el aviso que aparece al abrir el archivo. Blender puede mostrar un cuadro de diálogo al abrir un archivo que contiene un script cuya ejecución no está permitida. El aviso incluye las opciones Allow Execution, que permite ejecutar los scripts, e Ignore, que los omite. Si no confías en el origen del archivo, no autorices su ejecución.

  2. Usa Trusted Source para gestionar cada archivo por separado. La opción Trusted Source del Explorador de archivos de Blender permite decidir si se autoriza la ejecución automática para un archivo concreto. Así puedes evaluar cada archivo por separado. Si los archivos se abren sin usar el Explorador de archivos, conviene revisar la opción predeterminada general.

  3. Comprueba el ajuste general de ejecución automática. Al activar Auto Run Python Scripts en Preferences, Trusted Source queda habilitado de forma predeterminada en el Explorador de archivos. Este ajuste también puede permitir que se ejecuten scripts al cargar archivos sin usar el Explorador de archivos. Es posible excluir directorios concretos. Un ejemplo de la documentación consiste en considerar de confianza las rutas que no pertenecen al directorio de descargas; no lo tomes como una regla general adecuada para todos los entornos de trabajo.

  4. Ten en cuenta las distintas vías por las que pueden ejecutarse los scripts. Entre las vías de ejecución automática que menciona la documentación de Blender están los bloques de datos Text con la opción Register activada y los drivers de animación que gestionan valores mediante expresiones de Python. Además, aunque la ejecución automática esté desactivada, hay vías que requieren la interacción del usuario: ejecutar manualmente un script en el Text Editor y renderizar con Freestyle, que controla los estilos de línea mediante scripts. Por eso, revisar solo el ajuste de ejecución automática no basta para conocer todo el comportamiento del código de un archivo.

  5. Distingue las relaciones entre objetos en la API de colecciones. En la API de Python de Blender, Collection.objects muestra los objetos que pertenecen directamente a la colección correspondiente. La operación link de esta interfaz añade un objeto a la colección; unlink lo quita. Collection.all_objects incluye los objetos de la colección correspondiente y de sus colecciones secundarias, y se define como de solo lectura. Al revisar qué modifica un script, no confundas estos dos ámbitos.

  6. Elige la opción con cuidado al ejecutar en segundo plano. Las opciones de la línea de comandos pueden anular los ajustes de Blender Preferences. La documentación oficial muestra este ejemplo para permitir la ejecución de drivers y otros scripts al renderizar una animación en modo de segundo plano:

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

Se puede usar -y en lugar de --enable-autoexec. Para desactivar la ejecución automática, están las opciones --disable-autoexec y -Y. Estas opciones no eliminan la necesidad de evaluar si el archivo que se va a ejecutar es de confianza. Comprueba especialmente qué archivo se abre y con qué permisos en los procesos automatizados.

Errores frecuentes

El primer error es interpretar que, si la ejecución automática está desactivada, no se puede ejecutar ningún código del archivo. La documentación de Blender también describe vías que requieren la interacción del usuario, como ejecutar manualmente un script en el Text Editor o renderizar con Freestyle. El segundo error es considerar de confianza todos los directorios y activar Auto Run Python Scripts sin pensarlo. Decide si confías en un archivo en función de su procedencia.

Tampoco confundas las opciones de activación y desactivación en la línea de comandos: -y y --enable-autoexec permiten la ejecución automática; -Y y --disable-autoexec la desactivan. Autorizar la ejecución de un archivo no significa que el código que contiene sea de confianza.

Al trabajar con colecciones, distingue los objetos vinculados directamente de la lista que también incluye objetos de colecciones secundarias. Collection.objects y Collection.all_objects no abarcan lo mismo. Al revisar el efecto de un script, comprobar esta diferencia en la documentación de la API ayuda a entender qué objetos se incluirán en la operación.

Efectos en los flujos de trabajo de arquitectura, interiores y visualización

La documentación de Blender no relaciona la seguridad de los scripts con un uso específico en arquitectura o interiorismo. Aun así, este tema puede tenerse en cuenta en los flujos de visualización en los que se comparten archivos de Blender entre equipos: comprobar el origen del archivo, conceder con criterio el permiso de ejecución automática y entender el alcance de los scripts que modifican la escena son medidas prudentes al trabajar con archivos.

La API de colecciones ofrece una distinción básica al revisar código de automatización que organiza objetos en grupos. Sin embargo, las fuentes no detallan plantillas de proyecto específicas, compatibilidad de complementos, rendimiento del hardware ni condiciones de licencia. Por eso, antes de integrar scripts en un flujo de trabajo, comprueba la documentación de la API de la versión de Blender que utilizas y ejecuta código solo si procede de fuentes de confianza.

Próximos pasos

Primero, revisa el ajuste predeterminado de Auto Run Python Scripts y las decisiones de Trusted Source para cada archivo según tu flujo de trabajo actual. Después, comprueba si el archivo que estás usando muestra un aviso de ejecución automática y por qué vías podrían activarse sus scripts. Incluye en el proceso entender el origen del archivo, no solo descartar el aviso.

Al revisar un script que utiliza colecciones, distingue los objetos vinculados directamente de los que están en colecciones secundarias y confirma la operación necesaria en la referencia de la API. La documentación de la API de Python de Blender incluye las secciones Quickstart, API Overview y Best Practice. También puede descargarse para consultarla sin conexión. En la línea de comandos, elige la opción de ejecución automática solo después de evaluar si el archivo es de confianza.

Fuentes y licencia

Esta guía se ha traducido y adaptado al turco a partir del documento oficial Scripting & Security de Blender, las referencias de CollectionObjects y Collection API, y la documentación de Blender Python API. Las fuentes tienen licencia CC BY-SA 4.0.

Fuentes

3 fuentes
D(
docs.blender.org (CC BY-SA 4.0)docs.blender.org/manual/en/latest/advanced/scripting/security.html
Resumen
D(
docs.blender.org (CC BY-SA 4.0)docs.blender.org/api/current/bpy.types.CollectionObjects.html
Resumen
D(
docs.blender.org (CC BY-SA 4.0)docs.blender.org/api/current/bpy.types.Collection.html
Resumen

No republicamos los textos de las fuentes; las citas breves van marcadas y el resto es resumen y comentario propios.

La opinión de 3dsınıfı
3dValoración del editor

Para los estudios de arquitectura y los equipos de visualización de Turquía, el aporte más práctico de esta guía es que incorpora la seguridad de los archivos a las decisiones de automatización. En los archivos de Blender que se comparten dentro de un equipo, comprobar el origen y evaluar los permisos de ejecución automática para cada archivo son medidas preventivas que pueden aplicarse al flujo de trabajo.

Las fuentes no especifican precios, requisitos de hardware ni mejoras de rendimiento, así que no es posible deducir de la guía un ahorro de costes o una ganancia de velocidad. Estudiantes y equipos que utilizan scripts pueden aprovecharla para entender los fundamentos de la API de colecciones; antes de usar un script en un proyecto, deben comprobar por separado que sea de confianza y compatible con la versión utilizada.

Preguntas frecuentes

¿Los scripts de Python se ejecutan automáticamente de forma predeterminada en Blender?

No. Según la documentación de Blender, la ejecución automática está desactivada de forma predeterminada. Sin embargo, existen vías que requieren la interacción del usuario, como ejecutar un script manualmente o renderizar con Freestyle.

¿Cómo se gestionan los permisos de los scripts en archivos .blend de Blender?

Al abrir un archivo, el aviso permite autorizar la ejecución u omitir los scripts. Trusted Source, en el Explorador de archivos, y Auto Run Python Scripts, en Preferences, también permiten gestionar la ejecución automática.

¿Cómo se añade un objeto a una colección en la API de Python de Blender?

Collection.objects.link() añade el objeto a la colección; unlink() lo quita. Collection.all_objects también incluye los objetos de las colecciones secundarias y es de solo lectura.

Los comentarios y el foro están en turco.Únete al debate
+

Noticias relacionadas