"Si un trabajador quiere hacer bien su trabajo, primero debe afilar sus herramientas." - Confucio, "Las Analectas de Confucio. Lu Linggong"
Página delantera > Programación > After Effects Proyectos de secuencias de comandos y guía de síntesis

After Effects Proyectos de secuencias de comandos y guía de síntesis

Publicado el 2025-05-01
Navegar:863

Scripting: After Effects Projects and Compositions

Contenido
Introducción
Solicitud
Proyecto
carpetas y composiciones
Ejemplo
consejos rápidos
Conclusión

Introducción

En este artículo revisaré algunos de los conceptos básicos de navegar por los proyectos y composiciones de efectos posteriores utilizando un script. Haré referencia a algunas de las partes más útiles de la guía de secuencias de comandos y mostraré algunos ejemplos prácticos de cómo funciona.

comencemos.


Solicitud

app

La aplicación hace referencia a la aplicación después de los efectos. Para hacer referencia a cualquier cosa dentro de los efectos posteriores, deberá comenzar diciéndole a su script que mire la aplicación.

Si bien puede hacer referencia a la configuración, los archivos y el sistema informático después de los efectos se instala (entraré en estas opciones en otro artículo), es más que probable que el objeto principal que necesite hará referencia después de que la aplicación sea un proyecto de efectos de después.

app.newProject()

newProject () crea un nuevo proyecto vacío. Se le solicitará After Effects si desea guardar su trabajo actual antes de que esto suceda.

app.open(file)

Open () mientras tanto le permite abrir un proyecto existente. Dejando los soportes en blanco, aparecerá el cuadro de diálogo del proyecto abierto como si navegue a archivos> Proyecto abierto ... en el menú After Effects. Alternativamente, puede hacer referencia a un archivo dentro de los soportes para abrir un proyecto específico.

project = new File ("...FilePath/AE Project.aep");
app.open(project);

deberá crear un nuevo archivo () para localizar el archivo desde su script. Prefiero almacenar esto en una variable para mantener las cosas ordenadas. Nuevamente, se le pedirá que guarde su proyecto actual antes de que se abra el archivo.


Proyecto

app.project

Proyecto hace referencia al proyecto actual abierto en After Effects. Desde aquí, podemos acceder a todos los elementos desde nuestro proyecto, crear otros nuevos y acceder a la cola de renderizado.

app.project.save([file])

save () guarda el proyecto. Sin agregar la opción de un archivo, o si el proyecto no se ha guardado previamente, este método mencionará el diálogo Guardar para que el usuario guarde su proyecto. Recuerde: debe crear un nuevo archivo en su proyecto antes de poder hacer referencia a este método.

app.project.importFile(importOptions)

importFile () funciona un poco así:

new ImportOptions().file = new File("...FilePath/My File.jpg");
app.project.importFile(file)

Iré a importar archivos con más detalle en otro artículo. Pero como descripción rápida, utiliza este método para importar archivos a su proyecto. No solo necesita crear un nuevo archivo, sino que también debe crear nuevas importaciones para especificar lo que está importando y cómo. Esto nos permite hacer cosas como importar secuencias de imágenes, importar archivos como y forzar orden alfabético.

app.project.importFileWithDialog()

importFileWithDialog () mientras tanto abre el cuadro de diálogo de imágenes de importación, para que el usuario final seleccione su archivo.

app.project.renderQueue

Renderqueue nos otorga acceso a la cola de renderizado y nos permite establecer la configuración de renderizar e incluso representar composiciones. Voy a entrar más en esto en otro artículo.

app.project.activeItem

ActiveItem se refiere al elemento actual que se ve, generalmente una composición, capa de metraje, marcador de posición o sólido. Solo hace referencia a un elemento a la vez, y devuelve un nulo si varios elementos están activos o si ninguno está activo. Puede ser útil hacer referencia a la composición activa, para scripts que agregan capas o afectan lo que el usuario está trabajando actualmente de alguna manera. Tenga en cuenta que esto no es lo mismo que un elemento que es seleccionado .

app.project.selection

La selección se refiere a todos los elementos actualmente seleccionados dentro del panel del proyecto. Esto es lo que necesita al hacer referencia a los elementos seleccionados, en lugar del elemento activo.

app.project.item(index)

item () se refiere específicamente a un solo elemento dentro de su proyecto, ya sea una composición, sólida o lo que tiene. Así:

app.project.item(1)
app.project.item("Comp 01")

El índice representa el número de índice del elemento dentro de la ventana del proyecto o también puede referirse al nombre de la capa.

app.project.items

Los elementos se refieren a la colección de elementos dentro de su proyecto. Se usa para crear nuevas composiciones y carpetas.


Carpetas y composiciones

Esto nos lleva muy bien a carpetas y composiciones.

app.project.items.addFolder(name);
app.project.items.addComp(name, width, height, pixelAspect, duration, frameRate);

addfolder () crea una nueva carpeta para su proyecto. Asegúrese de que el argumento de nombre sea una cadena (en "" o '').

addComp () Sin embargo, tiene muchos más argumentos a considerar. Esto se debe a que hay mucha información que se necesita para crear una nueva composición:

Argumento Descripción
nombre el nombre de la composición. Necesita ser una cadena (en "" o '')
ancho el ancho de su composición
altura la altura de su composición
PixelAspect la relación de aspecto de píxel. Es casi seguro que está buscando establecer esto en píxeles cuadrados, que puede hacer estableciendo la relación en 1. Cualquier otra relación de aspecto de píxeles se puede establecer ingresando la relación correcta (por ejemplo, anamórfica 2: 1 se puede establecer ingresando 2, y D1/DV Pal Widescreen se puede establecer ingresando 1.46).
duración la duración de la composición en segundos
framerate la velocidad de cuadro de la composición

puede crear nuevas composiciones dentro de las carpetas haciendo referencia a la carpeta en su lugar, así:

folder01 = app.project.items.addFolder("Comps");
Comp01 = folder01.items.addComp("Comp 01", 1920, 1080, 1, 5, 25);

y puede mover elementos a la carpeta después del hecho, estableciendo el atributo ParentFolder del elemento:

folder01 = app.project.items.addFolder("Comps");
Comp01 = app.project.items.addComp("Comp 01", 1920, 1080, 1, 5, 25);

Comp01.parentFolder = folder01;

Una vez que haya creado una composición, puede configurarlo como su elemento activo usando OpenInviewer ()

comp1.openInViewer();

Ejemplo

Usando un poco de lo que he cubierto, aquí hay un breve script que le permite abrir un nuevo proyecto, crear 2 carpetas y 2 composiciones, y agregar una composición a la otra como precomp.

app.newProject();

folder1 = app.project.items.addFolder("_Final");
folder2 = app.project.items.addFolder("Precomps");
comp1 = folder1.items.addComp("Comp 01", 1920, 1080, 1, 10, 25);
comp2 = folder2.items.addComp("Comp 02", 1920, 1080, 1, 10, 25);

comp1.openInViewer();
app.project.activeItem.layers.add(comp2);

Consejos rápidos

encontrará, después de ejecutar este script, si tuviera que presionar deshacer los efectos posteriores, solo deshacerá cada acción una a la vez. La mayoría de las veces esto no es ideal, ya que los scripts a menudo experimentan muchas acciones, lo que hace que esto consuma y molesto para el usuario final.

app.beginUndoGroup(undoString)
app.endUndoGroup(undoString)

ahí es donde comienzan BeginUnDoGroup () y endundogroup (). Le permiten agrupar las acciones del script, para que puedan deshacerse en un solo movimiento. La Undostring es lo que verá junto a la opción Deshacer en After Effects. Si bien no necesariamente necesita agregar enduDuDoGroup () Si solo tiene una instancia de beginuDoGroup () en su script (como se cerrará automáticamente), es una buena práctica agregarlo al final de su script, para mantener su script ordenado.


Conclusión

Espero que esto haya ayudado a arrojar algo de luz sobre cómo hacer referencia a proyectos y composiciones de efectos posteriores mientras realiza sus scripts After Effects. En el siguiente artículo, repasaré a crear ventanas emergentes para que los usuarios interactúen con sus scripts.

¿tienes alguna pregunta? Algo mal aquí o no funciona? Déjame saber en los comentarios.

Declaración de liberación Este artículo se reproduce en: https://dev.to/kocreative/Scripting-After-Effects-Projects-and-Compositions-18JB?
Último tutorial Más>

Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.

Copyright© 2022 湘ICP备2022001581号-3