All Articles After Effects
After Effects: Hiérarchie indice de forme de couche
Toby Pitman on Mon, January 2nd 5 comments
Toby Pitman demonstrates how to dynamically add multiple strokes, generate increasing stroke widths and even randomize width and brightness in After Effects.

J'ai récemment écrit un article sur certaines choses que vous pouvez faire avec la conversion de texte aux calques de forme . Un des exemples ajouté plusieurs coups à la forme contours à l'aide les couches de forme »construite en effet de contour qui était juste dupliqué.

Tout cela est très facile à mettre en place ce peut être un processus très lengthly de manipuler tous vos largeurs de trait et des couleurs manuellement. Si vous avez 20 coups qui sont basées sur une couleur bleue et vous les voulez tous être fondés sur le vert et le double de la largeur elle peut être une vraie douleur à changer!

Ainsi est-il possible de faire cela de manière dynamique? Eh bien, oui! En reliant la largeur du trait et la couleur à certains curseurs expression sur le premier coup toute course subséquente dupliqués seront également liées aux curseurs vous permettant de les contrôler à la fois.

Wouldnt il pas merveilleux si vous pouviez également compenser chaque course afin que chaque coup de reproduire obtenu un peu plus large, foncée ou plus claire, ou même d'être en mesure de rendre aléatoire la largeur et la luminosité de chaque course! Eh bien vous pouvez le faire aussi!

Le problème est comment faire pour cibler le contenu d'un calque de forme et de trouver l'index de chaque effet AVC? Heres ce que je veux dire.


Comp couche d'indice

Chaque calque d'une composition After Effects a un numéro d'index. La couche supérieure a un indice de 1. Il pourrait être n'importe quel type de couche, un solide, un calque de réglage ou d'objet nul.

Le calque du dessous a un index de 2 et ainsi de suite et ainsi de suite. Vous pouvez voir cela dans l'image ci-dessous. Le numéro index est sur le côté droit par la couleur du calque.

The Layer below it has an Index of 2


Un truc commun avec les numéros d'index est de compenser un duplicata de la couche d'origine en y ajoutant, multipliant ou en divisant sa position, l'opacité, etc par son numéro d'index.

En ajoutant une expression de la position et l'opacité qui dit que si l'indice est égal à un, mais ne rien faire si ce n'est pas ensuite de multiplier la position X par l'indice de couche et de diviser l'opacité par l'indice de la couche.

duplicate of the original Layer by adding, multiplying or dividing its position, opacity, etc by its Index number


Je reçois quand je double les couches.

the result


Ce genre de chose est utilisée pour créer de faux texte 3D en compensant la position Z d'un calque de texte en 3D en double par son numéro d'index. Slideshows Standard!


Trouver l'index dans un calque de forme

Maintenant Calques de forme sont un peu comme un mini compositions dans le fait qu'ils peuvent contenir de nombreux éléments différents. Ils peuvent contenir des Chemins unique ou multiple, les remplissages, traits et effets vectoriels comme Pucker et le ballonnement, Décalage, Twist, Zig Zag, coins arrondis et le chemin Wiggle (une version animée des Illustrateurs Dépolir Edges).

Ces éléments peuvent être regroupés en utilisant le bouton Ajouter

Commençons par le haut. Heres une couche de forme vide. Il contient deux articles et matières Transform.

an empty Shape Layer


Lorsque vous créez un calque

Im allons ajouter trois formes cliquant sur le bouton Ajouter. Ill ajouter une ellipse, un cercle et une étoile Poly.

Adding three shapes


Maintenant j'ai besoin d'un Remplissage et contour si mal ajouter ces trop en utilisant le bouton Ajouter.

Fill and stroke


Maintenant, je dois avoir une structure de base.

the basic structure


Heres le problème. Je tiens à reproduire mon effet des maladies et des accidents cérébrovasculaires ont automatiquement le nouveau augmenter en taille basée sur un certain nombre d'index comme mon exemple de calques.

Mais ne me l'effet des maladies ont même un numéro d'index? Eh bien, oui, mais il ne c'est un peu difficile à trouver que l'indice de couche.

Pour trouver un numéro d'index que je peux augmenter ma largeur du trait avec Im va utiliser cette expression intelligente de la largeur de 1s AVC.

= valeur thisProperty.propertyGroup (1). propertyIndex

Comment ça marche alors? Heres une répartition ...

= valeur

thisProperty - l'actuelle course 1 effet.

propertyGroup (1) - Le conteneur qui détient thisProperty (Course 1) qui est contenu.

propertyIndex - Donne-moi l'indice des thisProperty (Course 1) à l'intérieur de matières.

Vous pouvez voir propertyGroup () me permet de percer vers l'arrière dans la hiérarchie de mon point de départ pour trouver le conteneur pour l'effet des maladies. Le (1) est le premier niveau contre les effets des maladies. PropertyGroup (2) serait le conteneur qui contient des matières, deux niveaux plus haut à partir thisProperty, c'est à dire le calque de forme réelle! Permet d'ajouter cela à Largeur Stoke et voir ce qui arrive.

Eh bien vous pouvez voir mes largeur du trait est maintenant 5px!

stroke width at 5px


C'est parce Course 1 est l'élément intérieur de matières 5ème!

Stroke 1 as fifth item in content


OK, donc c'est cool, j'ai un numéro d'index! Mais que faire si je décide de se débarrasser d'une forme plus tard, il sera jeter mon numéros d'index!

Eh bien je peux contourner ce problème en plaçant toutes mes formes dans un groupe. Allez à Ajout et choisissez Groupe et déplacer les formes dedans. Ill même déplacer ma faim en elle encas, je décide d'ajouter un remplissage différent pour chaque forme plus tard. Ive a nommé Mes formes.

place all shapes in a group


Maintenant mon AVC est 2px comme l'élément 2e en matières.

stroke value changes to 2px


Maintenant, j'ai une structure plus cohérente Je ne peux tout simplement soustraire un de mon expression pour faire mon premier coup de 1 pixel!

. = valeur thisProperty.propertyGroup (1) propertyIndex - 1

Maintenant, je peux faire des trucs! Premièrement Ill ajouter un contrôle Largeur Maître à la couche de forme en utilisant un curseur d'expression. 1 à 100 pixels.

Master width control


Puis Ill envelopper mon expression dans certaines tranches et ajoutez un signe de multiplier et Pick whip à la valeur du curseur. De cette façon je peux contrôler la valeur relative de mon largeur du trait.

control the relative value of my stroke width


Avant je dupliquer Ill divisent l'opacité des maladies par les propertyIndex ainsi.

divide the Stroke Opacity by the propertyIndex as well


Chaque double sera devenu plus transparent que ses divisée par un nombre plus élevé d'index!

raise the Master width slider to expand the stroke


Et si je double emploi augmente les accidents cérébrovasculaires et les fondus d'opacité! Horray!

duplicate each Stroke increases and the Opacity fades


Si je agrandir les maladies que cela fonctionne pour chaque exemplaire!

If I enlarge the Stroke it works for each duplicate!


Ici vous pouvez voir toutes les expressions de travail.

All the expressions working


Et si je supprime quelques formes qu'il fonctionne toujours à cause de ce groupe nous les mettons en!

result so far


Maintenant vous pouvez prendre ce aussi loin que vous voulez aller. Je me suis fait une animation prédéfinie vraiment pratique en utilisant cette technique qui me permet de créer des éléments de conception multi course avec un clic d'un bouton, je viens ajouter une forme ou un chemin.

Add a shape or path


Il dispose d'options aléatoire ou linéaire pour la largeur et la légèreté des maladies avec un contrôle de départ aléatoire. Contrôles de légèreté début et de fin que vous pouvez inverser etc etc

random seed control


Une fois que vous savez ce Calques de forme technique de prendre un tout nouveau sens! Essayez vous-même!

Comments (5)

You must be logged in to comment.

  • Dennis
    Great tutorial. I have a question; how can I change the color of the stroke depending on the index number. If indexnumber is even color one or if indexnumber is odd than color two. Greets, Dennis
    • 5 years ago
    • By: Dennis
    Reply
  • Dennis
    Got it, with 2 color effect controlers (color1 and color2) i=(thisProperty.propertyGroup(1).propertyIndex - 1)%2; if (i==0) {effect("color1")("Color")} else {effect("color2")("Color")};
    • 5 years ago
    • By: Dennis
  • Great tutorial, i had some questions which i cant seem to find the answer for, i want to do the following. I have a shape with a stroke, now i want to zoom in and out of the shape but without changing the stroke width, is that possible without a expression.
    • 6 years ago
    • By:
    Reply
  • tobypitman
    Well you could always just Keyframe the Stoke width manually. Ideally you'd want to do this finding the distance of the object to the camera using an expression. You may find that actually 'zooming' the camera will be trickier to work out so moving the camera in would be best. Good Luck!
    • 6 years ago
    • By: tobypitman
  • Bynudyy
    Great info regarding how to access various shape properties via expressions, really useful thanks
    • 6 years ago
    • By: Bynudyy
    Reply
Feedback
Course Advisor
Don't Know Where To Start?
Ask A Course Advisor
Ask Us!
Copy the link below and paste it into an email, forum, or Facebook to share this with your friends.
Make money when you share our links
Become a macProVideo.com Affiliate!
The current affiliate rate is: 50%
Classes Start Next Week!
Live 8-week Online Certification Classes for: