Transcrições
1. Trailer: Olá, sou Jake Bartlett. Sou designer de movimento com sede em Denver, Colorado e uso After Effects desde 2006. Esta classe é avançada After Effects, construir um modelo de gráficos de movimento. Nesta classe, vou ensinar-lhe como fazer um modelo de animações e esses modelos ou Mogrt, como a Adobe gosta de chamá-los, são projetados dentro de efeitos após como qualquer outra animação, mas então eles podem ser personalizado insider Premier. Você pode dar ao usuário controles específicos sobre como modificar e personalizar o modelo sem a necessidade de voltar para efeitos posteriores ou atualizar, mas mesmo que você nunca precise entrar no Premier, você ainda pode aproveitar o e como você cria modelos de
animações para acelerar seu fluxo de trabalho de design de movimento diretamente no After Effects. Para tirar proveito dessas ferramentas, vamos precisar saber um pouco de código e eu sei que isso pode colocar um mau gosto na sua boca. Se você quiser apenas fazer as coisas se moverem, expressões, a linguagem de codificação no After Effects pode realmente desativá-lo, mas confie em mim, uma vez que você entendê-las e começar a ver como você pode
usá-las em seu fluxo de trabalho, você nunca vai Vire para trás. Nesta classe, eu vou orientá-los através do básico de expressões, bem
como orientá-los através de cada expressão que
usamos passo a passo para que, no final desta classe, você tenha total confiança usando eles em seu próprio design de movimento. Para o projeto de classe, estaremos construindo um terceiro modelos inferiores que podem ser sobrepostos em cima de vídeo assim como este ume.This classe é para qualquer pessoa que queira entrar em fluxos de trabalho avançados do After Effects, se você realmente precisa criar modelos para equipes de pessoas para usar, ou você está tentando vender modelos on-line ou talvez você só quer tirar proveito de expressões em seu próprio fluxo de trabalho pessoal. Independentemente disso, esta aula é para você. Prepara-te para começares a escrever algum código, e vemo-nos na aula. [ MUSIC]
2. Noções básicas de expressões: Expressões são essenciais para criar modelos de
animações porque é a linguagem de codificação usada pelo After Effects, que permite que seus modelos sejam personalizados. Você vai precisar ter uma compreensão básica sobre como eles funcionam, e nós vamos até estar usando um par de expressões que são bastante avançadas. Mas não se preocupe, mesmo que você nunca tenha usado expressões antes, eu vou orientá-lo por cada passo do processo para que no final desta aula, você se sinta totalmente confortável implementando-as em seus próprios templates. Se você é completamente novo em expressões, este vídeo é exatamente para você, porque eu vou orientá-lo através dos conceitos básicos de expressões e como elas funcionam dentro do After Effects. Em primeiro lugar, o que é uma expressão? Nós vamos expressões é a linguagem de código que After Effects usa para ser capaz de fazer coisas complexas. Esse código pode ser escrito basicamente em qualquer propriedade keyframeble, e uma maneira realmente fácil de pensar sobre expressões é ser capaz de fazer qualquer coisa que quadros-chave podem fazer. Se você pode controlar algo manualmente usando quadros-chave, você pode escrever uma expressão para fazer a mesma coisa. O benefício das expressões é que ele pode fazer coisas
realmente complexas executadas automaticamente. Agora, as expressões são realmente baseadas na linguagem de código JavaScript. Você deve ter ouvido falar disso antes, ele é usado muito on-line, mas o código de expressões em si não é as bibliotecas JavaScript completas. Então você não tem acesso a toda a biblioteca de código que é JavaScript. No entanto, recentemente a Adobe mudou
para o suporte total de JavaScript dentro do After Effects. Se eu descer aqui para as configurações do meu projeto e para a guia expressões, você verá que meu mecanismo de expressões está definido para JavaScript e que deve ser o padrão para você se você estiver usando a versão mais recente do After Effects. Se eu clicar nisso, posso alternar para Legacy ExtendScript, um ExtendScript é o termo da Adobe para a biblioteca de expressões. Mas usando toda a biblioteca JavaScript apenas abre muito mais possibilidades, nós realmente não vamos entrar tão profundamente nisso nesta classe, mas eu sugiro que você deixe este conjunto para JavaScript. Então é isso que o código de expressões é, mas o que exatamente podemos fazer com ele? Bem, há muito que você pode fazer com isso, muito mais do que nós vamos ser capazes de cobrir em uma classe, mas aqui estão alguns exemplos. Uma maneira de pensar sobre uma expressão é como um pai de uma camada para outra. Se eu fosse criar uma camada sólida que é 100 pixels por 100 pixels, eu posso criar este texto de expressões para esse sólido, e ele adotará os controles de transformação dessa camada. Então, se eu girá-lo, ele vai seguir isso,
se eu escalá-lo para cima ou para baixo, movê-lo ao redor, a camada de texto vai se mover com ele. Uma maneira de usar uma expressão é basicamente pai ou vincular uma propriedade a outra. Se eu tirar essa relação de parentalidade fora e eu abri a rotação pressionando R no teclado para cada uma dessas camadas, você vai notar que há outro chicote de escolha bem aqui, e isso é chamado de chicote de escolha de propriedade. O que isso me permite fazer é basicamente pai de uma propriedade para outra. Se eu fosse pegar esta propriedade escolher chicote para o valor de rotação
da camada de texto e trazê-lo para a rotação da camada sólida branca, agora, esses números são vermelhos e isso indica que
há uma expressão aplicada a esta propriedade, e se eu girar o sólido branco, a rotação do texto está adotando o mesmo valor. Não é pai para essa camada, eu ainda posso movê-la,
escalá-la para cima ou para baixo e isso não vai afetar nada, mas o valor de rotação sempre vai coincidir com o valor de rotação de sólidos brancos. Agora, veja o que acontece se eu mudar para a minha ferramenta de rotação e tentar modificar a rotação desta camada. Não posso, está bloqueado e isso é porque a expressão está sobrepondo meu controle de rotação. Então eu posso mudar o número aqui em baixo, mas assim que eu soltar, ele volta para o mesmo valor que a expressão está dando a ele. Isso é muito importante de entender. A expressão vai substituir qualquer valor que você colocar aqui, menos que você contabilize esse valor dentro de sua expressão. Outra coisa que você vai notar que isso adiciona é uma pequena seta drop-down. Se eu clicar nisso, podemos ver expressão na propriedade de rotação, bem aqui temos uma linha de código, esta é a nossa expressão. Se eu me der um pouco mais de espaço e clicar nisso, podemos ver que há um pequeno editor para as expressões é realmente útil porque ele nos dá codificação de cores para esta linguagem JavaScript, que pode ser muito útil para identificando diferentes partes do seu código. Agora, eu não tinha que escrever nenhum desses códigos, tudo que eu fiz foi usar o pai pick whip para selecionar a propriedade de rotação e ele mudou automaticamente para mim. Se você está nervoso com expressões, isso deve fazer você permitir mais confortável, porque você não precisa saber como escrever tudo isso,
você só precisa ser capaz de usar sua propriedade chicote rosa para pegar algo e o After Effects preenche para você. Agora, se você notar bem aqui nós temos alguns controles, há outro chicote de escolha e este é chamado de expressão pick chicote. Agora, isso não era visível antes de usarmos o chicote da propriedade. Então deixe-me apenas me livrar de todo esse código rapidinho e mostrar-lhe os controles para a expressão ir embora. Mas se eu desfazer e trazer isso de volta, isso vai fazer exatamente a mesma coisa que o chicote da propriedade. Se eu pegar esse clique e arrastar e ir para a rotação, ele vai preencher exatamente o mesmo código. É que não era visível antes de eu adicionar a expressão. Quando a Adobe introduziu esta propriedade pick whip, a expressão pick whip já existia, então a única maneira de obter acesso a isso seria adicionar uma expressão manualmente, que você pode fazer pressionando Alt no PC ou opção em um Mac, e clique no cronômetro que adiciona uma expressão, e então vemos esses controles. Mas a Adobe tornou isso um pouco mais fácil para nós, agora, que nós temos essa propriedade pick whip, então tudo que eu tenho que fazer para começar minha expressão é pegar algo e ele automaticamente preenche esse texto para mim. Temos essa rotação desta camada de texto ligada à rotação da camada sólida branca, mas e se eu quisesse vinculá-la a uma propriedade diferente? Bem, eu realmente posso fazer isso. Vou pressionar Shift T com aquele sólido branco selecionado para trazer a opacidade, e o que acontece se em vez de ligar isso à rotação, eu ligar isso à opacidade. Eu vou deixar ir e minhas expressões texto giraram para este ângulo estranho, mas se você notar que são 100 graus e a opacidade é 100 por cento. Se eu virar esse valor de opacidade para baixo e olhar para isso, o texto das expressões está girando. Embora estas sejam duas propriedades completamente diferentes, o código de expressão é capaz de traduzir o valor desta opacidade para graus na rotação, e é uma tradução um-para-um. Então, seja qual for a porcentagem que esse valor de opacidade será conectado a este valor numérico que é realmente medido em graus. Esta não é necessariamente uma expressão muito útil, mas é apenas ilustrando o ponto em que você pode vincular qualquer número a outro número. Mas, independentemente de como você está usando expressões, o resultado final é sempre o mesmo. Ele vai gerar um valor para conectar ou saída para o valor ao qual você aplicou a expressão. Estes podem ser links simples entre propriedades, podem ser cálculos com equações complexas, podem ser baseados em várias camadas e várias propriedades,
e podem até ter condições para que, se as caixas de seleção estiverem marcadas ou não marcada, valores
diferentes serão calculados e serão enviados para este valor. Parece muito complexo e é. É um tópico realmente grande e expressões podem fazer tanto. Possibilidades são praticamente infinitas, mas há apenas um punhado de expressões que você realmente precisa
entender para começar a tirar proveito de usá-las em seu próprio trabalho, e ainda menos para fazer modelos de animações, como a que vamos fazer nesta aula. Mas vamos olhar para outra maneira que podemos usar expressões. Em vez de apenas fazer referência a outra propriedade, podemos realmente usar expressões para gerar valores que não são baseados em qualquer outra coisa na composição. Estes são através do que são chamados métodos e isso é apenas um termo JavaScript para uma parte da linguagem que permite gerar algo. Por exemplo, poderíamos gerar um valor numérico aleatório para a rotação para cada quadro de nossa composição. Para fazer isso, eu só vou editar essa expressão e apagá-la, e eu vou começar a digitar o método aleatório que se parece com isso. Eu apenas digitei aleatoriamente e você vê que quando eu começo a digitar, After Effects me dá essa janela de preenchimento automático, esta é a biblioteca de expressões e está me dando o que ele acha que estou tentando digitar. Há outras opções aqui que têm um aleatório na palavra, mas se eu clicar duas vezes sobre ele, ele irá auto-completar para mim. Esse texto está em azul, me
avisando que, como método, ele não está fazendo referência a outra parte da camada ou a composição ou uma propriedade, e então ele me dá esses parênteses. Ele automaticamente me dá parênteses de abertura e fechamento. Quando você vê esses parênteses, isso significa que podemos adicionar mais a este método para gerar um número específico. Agora, novamente, eu não quero sobrecarregá-lo, eu não vou me aprofundar em como este método aleatório funciona, mas se eu apenas aplicar a expressão, eu realmente não tenho que preencher nenhum número entre esses parênteses, você vê que meu valor é agora 0,8. Se eu apenas reproduzir isso batendo na barra de espaço, olhe para isso, o texto está vibrando. Porque em cada quadro da minha composição, After Effects agora está gerando um número aleatório. A razão pela qual ele está girando tão pouco é porque por padrão ele está gerando um valor entre zero e um, então é por isso que eu tenho 0.1 neste quadro, 0,9 ou lá temos um valor inteiro de um. Nunca irá acima de um ou abaixo de zero. Mas se eu voltasse para essa expressão entre esses parênteses, eu poderia colocar em qualquer número. Digamos 20 e depois clique fora, e agora ele vai gerar um número entre zero e 20. Se eu jogar isso de novo, minha rotação aleatória vai ser muito mais. Mas e se eu quisesse ir abaixo de zero? Bem, então eu posso realmente adicionar em um segundo número, o primeiro número que você digitar será o low-end do aleatório, e o segundo número será o high-end. Se eu colocar 20 negativos e separá-lo por uma vírgula, então eu tenho os valores aleatórios mínimos e máximos, eu posso clicar fora, e agora ele vai gerar aleatoriamente um número entre 20-20 negativos, e preencher isso em cada quadro desta composição. Esse é um método, mas digamos que isso está indo um pouco selvagem demais, eu não quero que seja tão aleatório. Bem, há outro método chamado Wiggle e este que você provavelmente está familiarizado com. Se você já usou expressões, wiggle é provavelmente algo que você encontrou, mas para escrevê-lo, eu vou apenas digitar wiggle e novamente, ele preenche automaticamente para mim, eu vou clicar duas vezes para preenchimento automático. Ele coloca o cursor bem ali entre os parênteses para mim. Agora, esta expressão em particular não
funciona sem quaisquer valores entre esses parênteses. Eu cliquei fora e ele quebrou. Nada está girando e eu ainda recebe pequeno ícone de erro. Se eu clicar nisso, está me dizendo que tenho um aviso. After Effects, aviso que a expressão está desativada Há um erro na linha 1 na rotação de propriedade de expressões de camada 2, fonte de renda SourceCatTime. Mas o erro aqui em baixo é que o método wiggle precisa entre dois e cinco argumentos. Um argumento é o que vai entre esses parênteses, aqueles números que colocamos no método aleatório, esse foi o argumento. O argumento era dar-me um número entre 20 e 20 negativos. Para wiggle, não há valor padrão como aleatório em de gerar um número entre zero e um se nada foi escrito lá. Eu tenho que dar entre dois e cinco argumentos. Os dois argumentos mais básicos necessários são a frequência deste movimento e a amplitude do movimento, e ali nessa ordem. A frequência, quero que aconteça, digamos quatro vezes por segundo. É nisso que esse valor é medido, o número de vezes por segundo. Então eu separo isso por um comentário para dar-lhe o segundo argumento, que é a amplitude, ou quão longe este valor pode mudar com o movimento, e eu vou dizer 180 graus. Não se preocupe com os outros argumentos que poderiam ser colocados aqui. Isto é tudo o que preciso agora. Eu vou clicar fora e jogar isso de volta e agora eu estou recebendo um número aleatório em cada quadro, mas ele está balançando, é uma espécie de flexibilização para frente e para trás entre os valores em vez de apenas me dar aleatoriamente um valor único cada vez. Você pode pensar nisso como um aleatório suave. Agora, quero reiterar mais uma vez que não é necessário saber como tudo isto está a funcionar. Você não precisa saber todos
os diferentes métodos de expressão e argumentos e o que eles significam, e quantos deles você precisa ter e o que cada um representa. Isso é algo que você vai aprender ao longo tempo e começar a memorizar enquanto você usá-lo. Mas se você esquecer, você não consegue se lembrar em que ordem esses valores devem estar,
há na verdade uma pequena folha de truques no After Effects que irá ajudá-lo a se lembrar. Dê uma olhada nesta pequena flecha aqui. Este é o menu de idioma da expressão. Se eu clicar nele, esta é toda
a biblioteca de expressões e é separada em categorias. Você vê que há uma categoria de números aleatórios e é aí que podemos encontrar aleatórios. Mas sob aleatório, nós também temos valor máximo aleatório ou matriz, bem
como valor mínimo ou matriz, valor
máximo ou matriz e esta é a parte folha de fraude que eu estou falando. Isso está nos dizendo quais seriam os argumentos dentro desses parênteses. Se você colocar um número, apenas um, será o valor máximo que esse método aleatório irá gerar, e ele retornará um valor entre zero e o que você digitar. Se você colocar dois números separados por uma vírgula, será entre o valor mínimo e o valor máximo, que foi o que fizemos. Se procurarmos por aqui um pouco e irmos para a categoria de propriedade, há a expressão “wiggle”. Isto irá listar todos os diferentes argumentos que podem ser colocados aqui,
e isso é, na verdade, algo que eu deveria salientar. Nem todo método requer que você use todos os argumentos, para wiggle, nós apenas usamos os dois primeiros, que era a freqüência e a amplitude. Três, quatro e cinco são muito mais complexos. Na verdade, nunca toquei neles, se isso te diz alguma coisa. Mas o ponto disso é que se você esquecer qual vem primeiro, frequência ou amplitude, basta descer para as expressões, uma biblioteca encontrar a propriedade ou
método particular que você estava procurando e isso irá dizer-lhe exatamente o que você precisa saber. A outra coisa que você pode fazer é usar o Google. JavaScript é uma linguagem de
código massivamente usada e documentada e você pode encontrar
explicações realmente detalhadas e claras sobre qualquer cálculo de argumento método que você poderia pensar on-line. Como o After Effects usa toda a biblioteca JavaScript, se você vê-lo em uma expressão, alguém falou sobre isso na Internet e você pode encontrar explicações muito rapidamente e facilmente apenas pesquisando no Google. Deixe-me desfazer e voltar para onde controlávamos apenas uma propriedade pela outra. Vamos dar uma olhada agora em como essa expressão é escrita e o que exatamente After Effects está saindo dela? Bem, primeiro de tudo, eu quero apontar todos esses períodos, esses pontos, você pode pensar nesses períodos como separadores em uma hierarquia e a linha geral de código como um caminho. A primeira seção deste código diz que este comp, este é o início do caminho After Effects, está começando dizendo onde eu preciso procurar um valor. Vamos contar ao After Effects, essa comp, a composição em que estamos, e isso implica que você pode procurar outro
lugar que não seja esse comp e isso está exatamente certo. Você pode realmente referenciar propriedades em outras composições. Mas para este exemplo, estamos olhando para esta composição em que estamos,
então temos o ponto, o separador de períodos,
que está dizendo ao After Effects o que vem a seguir. Depois de procurarmos neste acampamento, onde vamos olhar a seguir? Então vamos olhar para uma camada,
uma camada dentro desta composição e esta próxima seção entre parênteses e entre aspas, temos um nome de caso apropriado, branco sólido 1, que é exatamente o nome desta camada . É assim que estamos dizendo ao After Effects para olhar para uma camada chamada sólido branco 1. Então temos outro período. Este período é o próximo separador. Está dizendo, o que vem a seguir. Depois de olharmos para essa camada, o que você quer ver a seguir. Bem, então vá para os controles Transformar. Isso seria este pequeno menu suspenso aqui, os controles Transform. Estamos olhando para os controles de transformação outro período, o que vem a seguir? A propriedade da opacidade, lá vamos nós. Propriedade de opacidade 100. Nesse ponto, o After Effects é como, “Ok, eu sei o que estou procurando agora, o valor da propriedade de opacidade.” Eu vou pegar esse valor porque não há outras expressões ou código depois disso, eu vou pegar esse valor e conectá-lo diretamente
na propriedade em que esta expressão está escrita, que é a rotação para essa camada de texto. Novamente, você não precisa saber como escrever código assim. Não é algo que eu faço regularmente, ou eu uso a propriedade, escolher chicote ou a expressão pick chicote constantemente. Mas é realmente útil entender
a estrutura de uma expressão para que você possa identificar problemas se as coisas começarem a não funcionar e você pode
ler melhor o que está sendo escrito dentro desta janela de código. Esse é o básico das expressões e como elas funcionam dentro do After Effects. Não se preocupe se você está se sentindo sobrecarregado, eu me lembro de quando eu comecei a usar expressões, eu estava completamente desligado para a idéia de usar código em meus gráficos de movimento. Mas uma vez que você realmente começa a usá-los e você vê o poder e as possibilidades que eles abrem dentro de seus projetos, você nunca vai voltar atrás. Não se preocupe se você nunca os usou antes. Se este foi um vídeo muito esmagador, tudo bem. O resto desta aula, vamos usar essas expressões
muito específicas e eu vou guiá-los através de cada uma delas muito lentamente. Nós vamos fazer muitas repetições para que no final desta aula, você vai se sentir totalmente confortável implementando-os em seus próprios projetos.
3. Variáveis: Nesta lição, vamos dar uma olhada nas variáveis. Você pode pensar em uma variável como abreviação dentro de suas expressões. Ele torna tudo muito mais eficiente, e até torna seu código mais fácil de olhar e apenas ser capaz de ler através. Vamos dar uma olhada em um exemplo. Nós não vamos fazer nada muito emocionante, mas apenas para demonstrar o que é uma variável,
vamos para os controles de transformação e novamente entrar na rotação. Vamos começar a escrever uma expressão aqui na ALT conhecida e clicar nesse cronômetro. Eu quero me dar um pouco mais de espaço aqui, deixe-me apenas expandir isso. Dessa forma, isso é um pouco mais fácil de ver. Agora, como eu disse, uma variável é como uma abreviação dentro do seu código. Digamos que eu queira conduzir a rotação pela propriedade de opacidade. Quando a opacidade muda, a rotação também muda. Ou poderíamos fazê-lo da mesma maneira que fizemos antes, que seria usar a expressão pick whip, e então selecionar o valor de opacidade e apenas clicar fora, e depois de efeitos nós vamos preencher a expressão que precisa fazer referência a essa propriedade. Nos controles de transformação estamos olhando para a opacidade. A propósito, a razão pela qual não temos essa composição, essa camada, todas essas coisas extras é porque estão na mesma camada. Estamos olhando para a propriedade de opacidade para a mesma camada. Após os efeitos, é automaticamente assumindo que quando não adicionamos isso, esta comp.layer e então variáveis, é assumindo que tudo isso já está lá, quando você não adiciona nada. Se você não está dizendo após efeitos para referenciar uma camada diferente ou uma composição diferente, então ele vai assumir que estamos lidando com a camada em que você está escrevendo a expressão. De qualquer forma, vamos apenas aplicar isso, e agora a rotação está diretamente correspondente ao nível de opacidade de 0-100 graus. Mas eu também posso armazenar esse código no que é chamado de variável. Vamos ver como podemos escrever isso. Bem, eu vou deixar isso como está e ir antes que o código e digite em var para variável e, em seguida, um espaço, e então eu preciso dar-lhe um nome. Isto será o que usaremos como abreviação. Para opacidade, eu vou apenas usar a variável o, apenas uma letra minúscula o, e então outro espaço é igual ao espaço e, em seguida, no final da linha, eu vou colocar um ponto-e-vírgula, e é assim que você termina uma linha de em uma expressão. Mas, ao todo, isso é apenas dizer que eu estou definindo uma variável,
eu estou chamando de o,
e isso vai igualar eu estou chamando de o, e isso vai igualar valor
da transformação de opacidade sempre que eu faço referência a essa letra o, essa variável, mais abaixo no meu código . Se eu aplicar isso eu vou realmente obter um erro de expressão, porque esta não é uma expressão válida. Ele não está dando após efeitos qualquer valor, é apenas um pouco de código para fazer referência a outra propriedade. Se eu clicar nisso, ele vai me dar o erro aqui mesmo, dizendo que há um valor indefinido usado nesta expressão, significa que eu não estou dando um valor com este código. O que eu preciso fazer é baixar uma linha e talvez duas só para me dar um pouco mais de espaço, e então colocar um valor em. Isso pode ser um valor codificado. Se eu colocar 90 e clicar fora, vai me dar um valor de 90. Mas eu quero que ele seja o valor de opacidade e eu defini isso como a letra o. Se eu apenas selecionar que 90 e eu digitar o minúsculo o, e colocar um ponto-e-vírgula para terminar essa linha de código, clique off, lá vamos nós. Isso agora está me dando o mesmo valor que eu tinha antes quando eu apenas usei a expressão pick whip. Agora, isso por conta própria, obviamente não está me salvando a qualquer momento definindo essa variável e depois referenciando essa variável, porque tudo o que eu vou ter que fazer para que essa coisa em particular funcione é pegar essa expressão chicote e clique na opacidade, e ele faz exatamente a mesma coisa. Vou desfazer isso. O poder disso é quando você está usando expressões muito mais complexas, quais estamos prestes a entrar. Ter essa abreviação que torna muito mais fácil apenas olhar para suas expressões, que você não tenha longas linhas de código para percorrer e se confundir, e torna muito mais fácil escrever suas expressões porque você está apenas usando o que quer que você defina suas variáveis como. Agora percebo que tudo isto pode parecer bastante abstrato neste momento. Estamos usando exemplos muito simples e eles não estão realmente fazendo nada. Mas confie em mim, assim que começarmos a implementá-los em nossos modelos de animações, tudo vai fazer sentido e você vai ficar muito feliz por saber sobre eles antes.
4. sourceRectAtTime: Agora, nós realmente vamos começar a construir nosso modelo de gráficos de movimento. Tudo começa com a expressão SourceSectatTime. Esta expressão é um pouco confusa, mesmo se você já usou expressões antes, porque pode nos dar muitos valores diferentes, mas esses valores são muito importantes para o que vamos usá-lo
para o qual é dimensionar um retângulo, para uma camada de texto, não importa o que é digitado nela. Então, isso é o que nos permite dar ao usuário do nosso template a capacidade editar um campo de texto e ter o design atualizar da maneira que queremos que ele pareça. Não importa o que é digitado lá, a caixa está sempre indo para o tamanho do texto. Então não se preocupe se você já está um pouco sobrecarregado com expressões, eu vou orientá-lo através disso muito devagar e nós vamos reutilizá-lo muito. Então vamos dar uma olhada. Agora, antes mesmo de mergulharmos nisso, eu só quero apontar algo sobre JavaScript e expressões. Isto começa com uma letra minúscula e, em seguida, cada palavra depois que sendo maiúscula é chamado de camelo caso porque é como corcundas de camelo vindo para cima e para baixo. Essa é uma maneira muito comum de escrever suas expressões, mas também é a maneira que a maioria dos métodos em JavaScript são escritos, começando com uma letra minúscula e cada palavra depois disso sendo maiúscula. Então essa é a sintaxe técnica de como essa expressão é escrita, mas o que isso significa exatamente? Bem, sourceSectatTime é apenas o nome do método e isso significa que ele está nos dando o retângulo fonte em um determinado momento. O retângulo de origem é a caixa delimitadora de qualquer camada. Então esses controles de transformação, se ele conectasse todos esses pontos, ele faria um retângulo e a expressão SourcRectatTime vai nos
dar as dimensões ou o tamanho desse retângulo, mas isso é apenas o primeiro Metade. Há também a metade ATTime, que significa que se o tamanho desta camada mudar por qualquer motivo o conteúdo mudar ou dizer que você animou este texto, esse retângulo de origem será atualizado no momento atual em sua linha de tempo. Então, seja qual for o tamanho em qualquer ponto, isso nos dará o valor desse tamanho de retângulo. Temos estes parênteses aqui que nos permitem adicionar alguns argumentos. Falaremos sobre isso daqui a pouco. Mas isso por conta própria não vai nos dar o que precisamos porque existem quatro propriedades diferentes que podemos retirar do SourceSectatTime, e precisamos de todos os quatro para isso funcionar. Esses valores são a largura do retângulo, a altura do retângulo, o valor esquerdo e o valor superior. Então largura e altura fazem sentido. É a largura da caixa e a altura da caixa. Mas quais são os valores esquerdo e superior e por que eles são importantes? Bem, se eu ampliar aqui, agradável e fechar esta camada de texto, você notará que o ponto de ancoragem para esta camada de texto está no canto inferior esquerdo. Para qualquer outra camada
, geralmente está bem no centro da camada. Mas a razão pela qual isso está no canto inferior esquerdo é porque esta camada de texto é diferente de uma camada sólida ou uma camada de forma. Você pode digitar nele e como você digita, ele vai da esquerda para a direita porque meu parágrafo é definido para a esquerda justificar, eu posso alinhar isso para o centro e, em seguida o ponto de ancoragem é alinhado para o centro horizontalmente, mas verticalmente , ele ainda está na parte inferior da camada de texto. Se eu justificar isso, então ele está no lado direito, mas ainda deslocado para baixo verticalmente. Vou mudar isto de volta para a esquerda justificada. Vamos falar sobre por que isso é. Bem, o texto e a tipografia em geral têm o que é chamado de linha de base. A linha de base é basicamente onde o texto está sentado. Agora esta é uma fonte estilizada, então não é muito simétrica. Esta perna no A, é mais baixa que esta perna. Mas se eu aproximar muito. Você pode ver que esse ponto de ancoragem está bem perto de onde esta primeira etapa do A está descansando. Se eu exibir minhas réguas pressionando o controle ou o comando R, e clique e arraste para criar uma guia, alinhe-a com o ponto de ancoragem para essa camada bem ali no centro desse ponto de ancoragem. Quero ser super preciso para ilustrar isso. Então lá, meu ponto de ancoragem está agora centrado,
alinhado perfeitamente com esses guias. Você vai notar que muitas dessas cartas estão descansando bem ali naquele guia. Esta é a linha de base para o texto. Caracteres para fontes são projetados em cima desta linha de base de para alinhamento. Então é aí que o After Effects coloca o ponto de ancoragem para uma camada de texto verticalmente. Embora pareça que o ponto de ancoragem está alinhado horizontalmente com a borda esquerda desta camada de texto, ele realmente pode ser ligeiramente desligado e não é muito visível com esse caractere específico. Mas se eu tentar um personagem diferente como um Y, e então eu me inclinar um pouco, você pode ver que a ponta deste Y
neste braço bem aqui está indo além desse ponto de ancoragem. Então eu gosto de chamar este ponto horizontal a origem da camada de texto. Este é outro guia que o designer de tipos projeta lá digitar fora. Alguns caracteres irão se sobrepor,
outros se alinharão a ele. Mas After Effects é colocar este ponto de ancoragem nesta posição porque é
assim que o tipo foi projetado com esse ponto em mente como a origem de uma camada de texto. Compreender isso vai ser muito importante daqui a pouco. Mas agora que entendemos isso, vamos voltar à nossa camada de texto. Vou me livrar dos meus guias e esconder meus governantes, e vamos centralizar isso de novo. Então eu vou colocar isso bem no meio e vamos fazer um retângulo. Então eu vou para a minha ferramenta de retângulo e clique duas vezes sobre ela. Vou arrastá-lo abaixo deste texto e bem ali é bom e eu preciso chegar ao tamanho deste retângulo. Então vá para o grupo de retângulos, para o caminho do retângulo, e aqui eu tenho meu tamanho e posição. Estas são as duas propriedades que precisamos adicionar expressões a fim de obter esta caixa de texto para dimensionar para este texto e ficar com ele não importa o que. Então, primeiro vamos apenas trabalhar na largura e altura do SourceSectatTime, e conectá-lo diretamente ao tamanho deste retângulo. Então, para adicionar uma expressão, lembre-se que você mantenha pressionada Alt ou Option em um Mac e clique no relógio stop e então podemos começar a escrever a expressão. Então, digamos que SourceRect e após efeitos auto completa o resto para mim, eu vou clicar duas vezes sobre ele. Então temos SourceSectatTime, parênteses
abertas e fechadas. Eu não preciso colocar nada dentro disso ainda. Mas eu vou atrás desse parênteses de fechamento e adicionar um ponto, que lembrar é como um separador na hierarquia. Então, depois de efeitos está vendo, você quer que eu use SourceSectatTime e depois o quê? Bem, eu quero que você encontre a largura e pronto. Eu só quero a propriedade width, e eu vou fechar isso com um ponto-e-vírgula e aplicar a expressão e nada acontece. Na verdade, estou recebendo um erro. Isso é, na verdade, por um par de razões diferentes. Para um SourceSectatTime.Width por conta própria não está dando após efeitos informações suficientes. Ele precisa saber de que retângulo de origem queremos que ele extraia. Neste caso, queremos que seja a partir desta camada de texto, e eu não especifiquei isso. Então deixe-me dar a mim mesmo um pouco mais de espaço para ver isso. Eu queria encontrar uma variável para essa camada de texto. Então vamos fazer isso. Eu vou entrar nesta expressão e seguida, pouco antes do rect fonte no tempo expressão que escrevemos, eu vou soltar uma linha e no tipo superior em VAR para espaço
variável e, em seguida, eu vou chamar este TXT para texto. Lembre-se que você pode nomear como quiser. Eu só vou torná-lo facilmente identificável como TXT para texto e, em seguida, espaço é igual ao espaço. Vou usar a expressão pick web para clicar e arrastar para a camada de texto. Não preciso entrar em nenhuma das propriedades. Só estou dizendo depois dos efeitos, esta é a camada que quero ser referenciada. Vou esquecer isso, ele preenche, só
quero ter certeza de que termino essa linha com um ponto-e-vírgula. Agora eu tenho uma variável para essa camada de texto. Em seguida, eu preciso ir no início desta linha de código e digitar txt. para iniciar esse caminho para o After Effects dizendo : "Olhe para que as camadas de texto fonte rect às vezes, propriedade width.” Agora vou aplicar isso, e ainda tenho um erro. Resolvemos um problema, mas ainda temos outro. Vamos descobrir qual é esse erro. Se eu clicar neste sinal de aviso, ele está me avisando que a expressão está desabilitada. No fundo, está dizendo que o resultado da expressão deve ser da dimensão dois, não de um. O que isso está dizendo é que eu estou apenas dando um valor unidimensional, mas eu preciso que ele tenha duas dimensões e isso porque meu valor de tamanho é na verdade dois valores diferentes, uma largura e uma altura. Se eu estiver calculando um único valor, ele quebra porque depois f_x está esperando dois valores. Isso é chamado de array. Qualquer propriedade que usa mais de um valor. Deixe-me mostrar-lhe como você escreve uma matriz em uma expressão muito rapidamente. Eu só vou selecionar esta linha inteira clicando triplicamente sobre ela e, em seguida, cortá-la. Control X ou Command X em um Mac, e em vez de uma expressão, eu vou apenas escrever um valor codificado em um array. Para fazer isso, eu vou pressionar o colchete esquerdo, after-effects irá automaticamente colocar um colchete de fechamento para mim apenas, então eu não esqueça, isso é algo que você tem que fazer. Mas agora eu posso escrever dois valores dentro desses colchetes. Digamos que eu queira que a largura seja de 400. Eu vou digitar isso e então eu pressionar “Vírgula”, para separar os dois valores na matriz e para a altura, digamos que eu quero que seja 150. Vou passar por cima e acabar com isso com ponto-e-vírgula e aplicar isto. Agora o tamanho do meu retângulo é de 400 por 150. Exatamente o que eu digitei aqui. Não está usando essa variável e a expressão que eu cortei não está sendo avaliada obviamente. Mas é assim que escrevemos uma matriz, colchetes e dois valores separados por uma vírgula. Se fosse uma propriedade tridimensional, se fosse uma camada 3D, então você precisaria fazer três números, cada um separado por essa vírgula. Agora que sabemos como escrever esta matriz, eu quero trocar este primeiro número, a largura desta propriedade tamanho com a expressão que eu tinha cortado. Deixe-me colar isso de volta em agora Control V ou Command V em um Mac, e agora temos essa variável para esta largura camada SourceSectatTime dentro deste primeiro valor. Só preciso ter certeza de tirar o ponto-e-vírgula, porque isso só acontece no final da sua linha de código. Na largura, devemos estar recebendo a largura
da camada de texto que estamos referindo e a altura ainda está definida como 150. Eu só vou fazer uma limpeza bem rápido antes de aplicar isso e deixar mais uma linha. É assim que eu gosto de escrever minhas expressões de variáveis separadas por uma linha da expressão real. Mas agora podemos clicar fora que é aplicado e olhar para isso. A caixa de texto tem exatamente a mesma largura da camada de texto. Agora ele não está alinhado perfeitamente, mas se eu apenas movê-lo e manter pressionado Control ou Command em um Mac, eu posso encaixá-lo no centro dessa camada de texto e ela está alinhada agora. Se eu clicar fora dele, você pode ver que está perfeitamente alinhado com o tamanho do texto. Mas e a altura? Bem, vamos voltar para a nossa expressão e apenas copiar o que temos aqui e colá-lo no lugar deste valor codificado de 150. Vou colá-lo lá e tudo que eu preciso fazer é mudar a largura para a altura, e isso vai puxar o valor de altura para fora do retângulo de origem para essa camada, eu aplicá-lo, e lá vamos nós. Nossa caixa é perfeitamente dimensionada para esse texto. Mas se olharmos para esta expressão mais uma vez, isso não é tão fácil de olhar e identificar. É uma longa linha de código com um monte de textos repetidos. Podemos realmente limpar isso um pouco se usarmos mais algumas variáveis. Uma grande coisa sobre variáveis é que assim que você definiu, você pode começar a usá-lo na próxima linha. Eu vou adicionar outra variável drop-down, dizer espaço VAR, e então eu vou nomear este w para espaço de largura igual espaço. E o que eu quero aqui é o que eu tenho aqui na minha matriz para a largura. Vou cortar isso e colá-lo aqui em cima. Termine essa linha com um ponto-e-vírgula e, em seguida, eu vou soltar novamente VAR h para espaço de altura é igual a espaço, e então selecione este texto, recorte e cole aqui, termine-o com um ponto-e-vírgula. By the way, todos esses espaços são puramente para organização visual. JavaScript não presta atenção a espaços ou quebras de linha. Você poderia ter todos os seus textos em uma linha sem espaços e seria capaz de lê-lo muito bem. Mas, como humano, é muito mais fácil identificar e
organizar visualmente o seu código se você espaçar coisas e dividi-lo por linhas. Mas de volta à nossa expressão, temos todas as três variáveis para a camada de texto, a largura SourceSectatTime e a altura SourceSectatTime. Agora temos uma matriz vazia, mas eu posso apenas ligar w para largura e h para altura. Aplique-o. Nada muda. Isso nos dá exatamente o mesmo resultado, mas é muito mais fácil ler nossa expressão real. Agora, todas as coisas complicadas estão aqui
em cima em nossas variáveis e tudo está organizado por linha. É fácil escolher e modificar se precisarmos. Eu posso realmente limpar isso ainda mais se eu pegar o rect fonte no momento parte da expressão em cada uma dessas variáveis e cortar isso e inclui-lo na variável de texto fonte, eu vou apenas colá-lo logo após o texto. Agora eu posso me livrar dessa fonte rect no momento tanto
na variável width quanto height e é muito mais fácil de ler agora. Agora eu estou apenas olhando para a largura das camadas de texto e a altura das camadas de texto. Isso pode parecer um pouco inútil, mas isso me permite modificar o que está entre esses parênteses no método rect fonte no tempo para ambas as variáveis a seguir, que vamos precisar fazer em um pouco para obter nossa caixa para funcionar corretamente. Você pode pensar nessas variáveis como pré-comps. É uma maneira de armazenar informações que você vai reutilizar uma e outra vez. Assim como animar com pré-comps e torna uma animação mais rápida e eficiente. Variáveis podem tornar as expressões muito mais eficientes. Se eu clicar fora disso e aplicá-lo, você verá que nós obtemos exatamente o mesmo resultado, mas é apenas um bloco de código muito mais limpo para olhar. As variáveis são muito fáceis de identificar e nossa matriz é extremamente simples. Temos o tamanho da caixa de texto para a camada de texto agora, devemos ser capazes de digitar outra coisa aqui. Bem, deixe-me editar esta camada de texto e dizer outra coisa e, bem, isso não está exatamente funcionando, não é? Primeiro de tudo, se eu mover minha camada de texto ao redor da caixa não está se movendo com ele e você viu que esta caixa de entrada estava se expandindo, mas não é o mesmo. Isso é porque camadas de texto ou pelo menos este é justificado para a esquerda, Ele está expandindo da esquerda para a direita, e esse ponto esquerdo nunca está se movendo. Mas nós estamos apenas adicionando uma expressão para, a propriedade tamanho deste caminho retangular, e se eu desativar essa expressão muito rapidamente, clicando neste pequeno sinal azul de igual que habilita ou desabilita a expressão, e basta ajustar a largura do tamanho. Você pode ver o tamanho desse retângulo a partir do centro da camada, não da borda esquerda. Isso realmente faz sentido. Esta expressão está fazendo o que deveria estar fazendo agora, que é o tamanho da caixa para o tamanho da camada. Não tem nada a ver com a posição da caixa. Só temos uma parte do problema resolvido. Vamos reativar essa expressão e eu vou digitar isso de volta para apenas dizer texto, então é um pouco menor. Vamos dar uma olhada na próxima edição que está recebendo a caixa para seguir a camada de texto. Bem, isto é muito fácil. Eu só preciso primeiro alinhá-lo e manter
pressionado o controle para encaixar no centro da camada novamente, então ele está perfeitamente alinhado com esse texto e em seguida, eu vou apenas pai desta camada para a camada de texto. Agora, onde quer que o texto vá, a caixa vai com ele. Deixe-me apenas renomear esta caixa de texto apenas para organização e eu vou mostrar-lhe a próxima edição. Se eu ir para o painel de caracteres e fazer algo como talvez mudá-lo para todas as maiúsculas. Veja essa caixa de texto deslocada para a esquerda e, se eu alterar o tamanho do texto, ela será dimensionada a partir do centro da camada novamente,
mas a camada de texto será dimensionada a partir de seu ponto de ancoragem. Novamente, isso é exatamente o que deveria estar acontecendo. A única propriedade à qual adicionamos uma expressão é o tamanho. Como podemos fazer o posicionamento funcionar? Bem, deixe-me desfazer voltar para onde temos este texto bem alinhado e eu vou
recolher a propriedade tamanho só para termos mais espaço. Logo abaixo do tamanho é a propriedade position. Isto é o que precisamos para ser capazes de deslocar a caixa para a esquerda e para a direita e para cima e para baixo e porque esta camada está dimensionando a partir desse ponto de ancoragem, lembre-se que a origem da camada de texto alinha-se
à linha de base na borda esquerda que origem do texto, este é o lugar onde o SourceActatTime, os valores esquerdo e superior vão entrar em jogo. O valor esquerdo é a distância entre a borda esquerda da camada de texto e a origem
dessa camada de texto e o valor superior é a distância entre a parte superior da camada e a linha de base. Se soubermos esses dois valores, então podemos alterar o ponto de ancoragem para esta caixa de texto, especificamente o caminho do retângulo para não estar no centro da camada, mas alinhado à origem dessa camada de texto e eu vou mostrar-lhe como fazemos isso Agora mesmo. Vamos para a posição e adicionar uma expressão. Agora podemos reutilizar muito da expressão que já escrevemos sobre o tamanho. Deixe-me voltar para isso, e eu vou copiar tudo. Copie e, em seguida, volte para a minha expressão de posição e cole. Agora isso não vai nos dar o que queremos, isso é pegar valores de tamanho e conectá-lo à posição, não o que queremos. Vamos voltar a essa expressão e começar a modificar algumas coisas. Em primeiro lugar, esta primeira variável pode permanecer exatamente a mesma. Queremos fazer referência à camada de texto SourceReactatTime, mas para a largura e altura, precisamos modificar isso um pouco e explicar isso um pouco mais fácil, vou apenas fazer um novo retângulo e vou dimensioná-lo para 100 por 200, e vamos mover isso aqui para que possamos nos concentrar nele por um segundo. Vamos para aquele retângulo, posição e tamanho. Estes são os dois valores com os quais temos de nos preocupar. Ao mover a posição ao redor, você verá que o ponto de ancoragem fica no centro. O que preciso fazer para que isto fique no canto superior esquerdo? Bem, se olharmos esses dois valores entre o tamanho e a posição e como eles estão relacionados, parece que metade do tamanho será a posição que
precisamos para alinhá-lo, o que faz sentido. Metade da largura e metade da altura do centro do retângulo nos levará ao canto superior esquerdo. Outra maneira que eu poderia ter feito isso é apenas disse fazer a metade posição do tamanho. Em uma expressão que eu poderia apenas usar a propriedade pick whip para selecionar o tamanho e se abrirmos isso e dar uma olhada, você vai notar que não está me dando nenhum erro mesmo que nós apenas temos uma linha de código. Isto é um array, então você acha que precisamos de dois números. Bem, se você adicionar uma expressão a uma matriz e você faz referência outra propriedade que também é uma matriz com o mesmo número de valores, então não precisamos escrevê-la em uma matriz. Ele vai automaticamente puxar
o primeiro valor para o primeiro valor e o segundo valor para o segundo valor. Mas você pode ver que o ponto de ancoragem é aqui em cima, e meu retângulo moveu-se para baixo para a direita porque ele está apenas puxando exatamente os mesmos números. Quero metade disso. No final desta linha de código, vou dizer dividi-lo por 2 e depois aplicá-lo e lá vamos nós. Agora, o canto superior esquerdo do retângulo está alinhado ao ponto de ancoragem da camada. Se eu dimensionar isso agora, vai escalar a partir do canto superior esquerdo. Essa foi a ilustração, agora vamos realmente implementá-la em nossa caixa de texto. Agora está escalando a partir do centro, mas queremos que ele escale a partir do canto superior esquerdo. Vamos apenas voltar para a nossa expressão e adicionar dividido por 2 para o final da largura e os valores de altura para este SourceReactatTime. Isso é tudo que eu preciso mudar, se eu clicar em “Off”, o retângulo agora está alinhado seu canto superior esquerdo ao ponto de ancoragem da camada. Agora ele não está mais alinhado com o texto, então eu preciso clicar e arrastar novamente, manter pressionado o controle e encaixá-lo no centro, mas agora vamos lá, canto superior esquerdo, ele está alinhado. Mas não terminamos, esse é apenas o ponto de partida. Não queremos que ele seja dimensionado a partir do canto superior esquerdo, queremos que ele seja dimensionado de onde o ponto de ancoragem está na camada de texto. Bem, lembre-se que a parte da altura do ponto do SourceReactatTime, porque nos dá a diferença entre a altura da camada e essa linha de base, e agora nossa caixa de texto está alinhada às bordas superiores esquerdas desta camada de texto, então é já no ponto de partida onde medimos a distância, no sourceReactattime.Left e no sourceReactattime.top. Vamos considerar essas coisas na nossa expressão. Eu vou soltar outra linha e adicionar uma variável que é l para a esquerda, espaço é igual ao espaço txt.left; e lembre-se que é toda essa linha de código, e então nós estamos apenas adicionando o.left, e então eu vou soltar outra linha, var, t para cima, espaço é igual a espaço, txt.top;. Agora eu tenho essas duas variáveis e eu posso fatorá-las em minha matriz. Queremos levar onde esse ponto de ancoragem está agora e adicionar a ele o valor esquerdo que esta variável aqui vai nos dar. Eu vou dizer largura mais l para esquerda e altura mais t para cima. Se fiz tudo certo, vou aplicar isso e deve funcionar. Agora a caixa de texto se moveu para cima, mas se clicarmos nela e dermos uma olhada, o ponto de ancoragem está no canto inferior esquerdo agora, e é isso que queremos. Se eu aumentar o zoom realmente agradável e fechar, você pode ver que ele não está perfeitamente alinhado ao canto inferior esquerdo da caixa,
mas o ponto de ancoragem para esta camada de texto também não é. Parece que está funcionando. Vamos mudar isso mais uma vez. Vou agarrá-lo, clicar e arrastar naquele ponto de ancoragem e segurar Control ou Command, encaixá-lo nos pontos de ancoragem das camadas de texto, e agora vamos tentar digitar outra coisa. Outra coisa. Olhe para isso. A caixa de texto está perfeitamente alinhada a essa camada de texto. Se eu fizer tudo em maiúsculas, se eu mudar seu tamanho, se eu mudar sua justificativa, ele sempre vai ficar com esse texto porque estamos baseando a posição fora da linha de base e origem dessa camada. Entre dimensionar a caixa corretamente e posicioná-la corretamente, esta caixa de texto sempre vai exatamente onde precisa. Mas você pode estar pensando que isso não parece tão bom, eu não quero necessariamente que ele seja exatamente o tamanho dessa camada de texto, e você está certo. Esta é apenas a base base. Pense nisso como construir uma casa. É a camada de fundação que podemos construir em cima. Para tornar esta caixa de texto um pouco maior, já que esta é uma camada de forma, tudo o que eu preciso fazer é ir para o Conteúdo e adicionar caminhos de deslocamento. Agora, eu tenho isso muito fácil de controlar controle deslizante basicamente para aumentar ou diminuir a margem para o meu texto. Novamente, isso mudará com base no que você colocar neste texto. Ele irá atualizar dinamicamente para sempre caber a ele e porque é um retângulo, eu poderia até ir para ele e dizer arredondá-lo fora se eu quisesse ser mais como uma forma de pílula, é tão fácil como isso. Mas esta é a verdadeira base de como vamos construir modelos
dinâmicos que respondem ao que quer que seja digitado neles. Eu sei que foi muita informação jogada em você, espero que você seja capaz de absorvê-la e faz sentido. Acho que a essa altura, se estiver à altura, deveria começar a entrar no After Effects e tentar recriar o que te mostrei como fazer, assistir através dele comigo. Você pode diminuir a velocidade de reprodução ou apenas estar pausando mas você deve realmente tentar e codificar isso por si mesmo para que
você possa ver o que as coisas podem te enganar e como você pode tudo trabalhar em conjunto para realmente fazer uma caixa que tamanhos para o texto. Agora você pode estar pensando que isso não é o que eu quero que meu modelo pareça, mas a realidade é que com uma camada de texto e especialmente com o terço inferior, você quase sempre vai ter um retângulo atrás dessa camada de texto, ou talvez você deseja adicionar duas linhas. Bem, vamos entrar nisso na próxima lição. Portanto, não fique muito pendurado na aparência real do seu template neste momento, apenas saiba que isso é realmente fundamental para fazer um modelo de motion graphics que é dinâmico o suficiente para dar a alguém para que você saiba que ele está sempre indo para olhar do jeito que você quer. Mas vá em frente e salte lá, comece a escrever suas próprias expressões e chegue ao ponto você pode ter um retângulo dimensionando para essa camada de texto, não importa o que você faça com essa camada de texto. Boa sorte.
5. Como animar com expressões: Agora que temos essa base de trabalho, podemos realmente começar a animá-la para que seja realmente um design de movimento. Então vamos dar uma olhada em como podemos trabalhar com expressões, que eles nos permitam animar algo que é dinâmico como este. Vou adicionar rapidamente um animador de texto a esta camada, que se você não estiver familiarizado com animadores de texto,
verifique a minha classe, The Ultimate Guide to Text Animators no After Effects, onde eu te ensino absolutamente tudo o que você precisa saber sobre eles. Mas vou fazer uma animação em escala muito simples. Vou adicionar isso e depois modificar isso um pouco. Vamos mudar a “Escala” para 0. Então ele escala todos os meus personagens para baixo e eu vou mudar o “Seletor de alcance” dentro dos controles avançados de “Quadrado” para “Aumentar a rampa”. Agora, enquanto eu animo o “Deslocamento”, eu posso apagar isso. Então vamos para o início da composição, definir um quadro-chave em negativo 100 no deslocamento, e então avançar talvez 20 quadros e transformar isso todo o caminho de volta em 100%. Agora isso vai se animar, e eu posso fazer isso um pouco mais agradável, se eu pegar o “Ease Low” e aumentar isso. Isso é como a facilidade para cada um dos personagens individuais. De modo que agora anima em muito agradável e a caixa segue. Porque lembre-se que temos SourceSectatTime. Assim, a fonte “Rectangle” para esta camada neste dado momento é este tamanho e à medida que avançamos, ele redimensiona dinamicamente. Isso é ótimo, se é assim que você quer que pareça. Mas digamos que eu não quero que essa caixa aumente a escala com o texto, eu quero animá-la independentemente do texto e apenas fazê-lo resolver ou acabar com o tamanho certo, independentemente do texto digitado aqui. Bem, é exatamente aí que os parênteses de fechamento de abertura no SourceSectatTime entram em jogo. Então vamos mergulhar de volta em nossas expressões. A maneira realmente fácil de trazê-los para cima é selecionar a camada que tem as expressões e tocar duas vezes na tecla “E”. Então eu vou apenas tocar em “E” “E”, e isso traz todas as expressões para essa camada. Eu não preciso me preocupar com a posição agora, eu só estou preocupado com o tamanho, então eu vou derrubar isso. Vamos pular aqui. Entre os dois parênteses, é
aqui que podemos determinar em que ponto no tempo estamos lendo o valor do retângulo de origem. Agora, por um segundo na minha composição, minha animação no texto está completa. Então, por que não começamos por lá como nosso ponto de referência? Queremos obter o retângulo da fonte em um segundo nesta composição. Então, se voltarmos para a nossa expressão entre esses dois parênteses, eu só vou digitar um porque é Tempo Valor é
medido em segundos e basta clicar em “Off”. Agora, se eu esfregar minha animação de volta, bem, ele está fazendo algo, mas não está fazendo exatamente o que queremos. É o tamanho certo o tempo todo, mas está se movendo. Isso porque nosso valor de posição realmente precisa ser modificado um pouco. Se entrarmos nele, isso também está usando SourceSectatTime. Então, tudo o que eu preciso fazer é ir para esta expressão e adicionar o que SourceSectatTime também. Se eu aplicar isso, agora que o retângulo vai
ficar do tamanho que ele deveria estar no final da animação e ele não
vai se mover porque ele está pegando o valor SourceSectatTime em um segundo e ignorando todo o outro tempo no linha do tempo. Mas veja o que acontece. Vou abrir os quadros-chave pressionando “U” com essa camada selecionada. Se eu pegar esses dois quadros-chave, e passá-los pela marca de um segundo, assim
que eu fizer, a caixa começa a ficar menor novamente. É porque o valor SourceSectatTime em um segundo não é mais o fim da animação. Então a caixa está olhando para basicamente um valor de retângulo de 00. Agora, se eu mover estes de volta para o início e eu realmente mover a camada inteira, você vai notar que a mesma coisa não é verdade. Porque esse valor ATTime é realmente relativo à camada, não à composição. Então este é um segundo para essa camada. Você pode não ter sabido disso, mas cada camada tem um ponto de partida. Para provar, se eu estender isso no tempo, você vê que nós temos essas pequenas marcas de haxixe. Eles estão apenas informando que isso está se estendendo além do ponto de partida dessa camada. Então, mesmo que eu faça
isso, não está afetando o valor do tempo. Isso seria tecnicamente tempo negativo nesta camada. Então, mover essa camada no tempo não afeta a expressão. São os quadros-chave dentro da camada em relação
ao endpoint ou ao quadro inicial dessa camada que importa. Mas agora que eu tenho isso configurado, eu poderia animar o retângulo independentemente do texto. Então, por que não movemos essa camada de texto para fora do caminho, e dizemos que eu quero que isso aumente a escala do lado esquerdo para o lado direito e, em seguida, faça com que o texto seja animado. Bem, vamos dar uma olhada na estrutura
desta camada e ver o que uma boa maneira de fazer isso pode ser. Se entrarmos no grupo “Retângulo” e eu vou renomear isso muito rapidamente e chamar esse grupo de caixa de texto, só para entendermos que é um grupo, não é uma forma. Porque cada grupo em uma camada de forma tem seus próprios controles de transformação. O caminho do retângulo em si, esta forma tem um tamanho e uma posição. Esses são valores exclusivos para a forma do caminho do retângulo. Mas qualquer grupo de formas tem controles de transformação. Então, em vez de mexer com os valores de tamanho ou posição que todos prontos têm expressões nesse retângulo, vou usar os controles de transformação do grupo de formas para animar isso. Vamos dar uma olhada na propriedade Scale. Eu quero desvincular o x e y e animar no x. Agora está tudo pronto basicamente fazendo o que eu queria porque o ponto de ancoragem está perto do lado inferior esquerdo. Mas novamente, não é exatamente onde ele precisa estar porque ele é baseado no ponto de ancoragem da camada de texto, lembre-se. Então, o que precisamos fazer para obter o ponto de ancoragem para este grupo de formas seja alinhado não só à borda esquerda do retângulo, mas também à borda esquerda dessa margem que incluímos? Bem, vamos usar algumas das mesmas expressões. Primeiro, quero que a posição seja qual for o ponto de ancoragem. Manter esses dois valores iguais, impedirá que o grupo de formas realmente se mova na tela. Deixa-me mostrar-te o que quero dizer. Se eu compensar isso por, digamos, 100 pixels na posição. Deixe-me digitar isso. Então eu também desloquei o ponto de ancoragem por 100, então é de volta onde começamos. Então, desde que eu quero mover esse ponto de ancoragem ao redor para que ele se alinhe até a borda esquerda, eu vou apenas usar a propriedade pick whip, e pegar esse valor de ponto de ancoragem para
que o valor da posição seja sempre idêntico à âncora ponto. Se eu mover o ponto de ancoragem agora, o próprio grupo de formas não se move. Deixe-me zerar isso de volta. Como vamos colocar isso de volta para a borda esquerda? Bem, precisamos escrever uma expressão. Então, vamos manter pressionado “Alt” ou “Option” em um Mac e clicar nesse cronômetro e escrever em algumas variáveis. Na verdade, como antes, podemos reutilizar algumas das mesmas variáveis. Então vamos para o caminho do retângulo, para a posição, e apenas copiar todas as variáveis que temos aqui. Assim, o texto de origem, a largura ,
altura, esquerda e valores superiores da fonte destruídos no momento. Vou copiar isso, voltar para a minha nova expressão e colar. Então estas são apenas as variáveis, o que queremos que o array seja? Bem, precisamos levar em conta esse valor de deslocamento, que está sendo conduzido por um pulso de deslocamento. Nós realmente precisamos adicionar essa variável também. Vamos soltar um tipo de linha “VAR”, e eu vou usar o para deslocamento, e então precisamos encontrar esse valor. Vou receber um erro por um segundo enquanto encontrarmos isto. Mas lá está, caminhos de deslocamento, e eu preciso usar esse valor de quantidade. Então, sob essa variável, eu vou usar a expressão pick whip, pegar a quantidade e fechá-la com um ponto-e-vírgula. Vamos recolher isso para que possamos ver o que estamos fazendo novamente e começar a escrever nossa matriz. Então eu vou começar escrevendo um colchete esquerdo After Effects termina o direito. Para o valor x neste ponto de ancoragem, eu quero que ele seja o valor de deslocamento menos o valor esquerdo. Lembre-se que a esquerda é a distância entre esse ponto de origem e a esquerda da camada de texto. Então eu vou dizer O mais L. Certifique-se de terminar essa linha com um ponto-e-vírgula. Então eu vou fazer uma vírgula para o segundo valor e para a altura, vamos apenas deixar um zero codificado por enquanto. Eu não vou animar isso, então deixá-lo no zero é realmente bom. Então vamos aplicar isso e ver o que acontece. A caixa não se moveu, então é um bom sinal, mas vamos ampliar aqui com isso selecionado. Podemos ver que o ponto de ancoragem não é onde queremos. É do lado direito, queremos que seja aqui do lado esquerdo. Isso ocorre porque as direções positivas do eixo estão corretas e acima. Então, adicionar valores positivos
do deslocamento e da esquerda é realmente empurrá-lo na direção errada. Então eu realmente preciso subtrair o deslocamento. O “l” pode permanecer o mesmo, que o valor da borda esquerda deve ser adicionado. Mas precisamos que este seja um número negativo. Então eu só vou voltar para a minha expressão e digitar um menos antes que o, e nós vamos obter um deslocamento negativo mais o valor esquerdo. Se eu aplicar isso e olhar para o ponto de ancoragem novamente, eu vou aproximar bem e fechar, e olhar para isso. Está 100% alinhado perfeitamente ao lado esquerdo desse retângulo, incluindo nossos caminhos de deslocamento. Mesmo que eu desça e aumente essa quantidade, o ponto de ancoragem sempre vai ficar na borda esquerda agora. O que isso significa é que o grupo de formas, que contém o caminho do retângulo, agora
pode ser animado nessa propriedade scale
a partir da borda esquerda e essa borda esquerda não se moverá. Então era exatamente isso que eu precisava. Vamos definir um quadro-chave nessa escala e apenas pressionar “U” e mostrar apenas esse quadro-chave. Vou levar isto para 20 quadros. Em seguida, no quadro um, vou mudar o valor x nessa escala para zero. Reproduza isso e agora temos esse aumento de escala. Eu posso fazer isso parecer um pouco mais agradável, se eu entrar no editor de gráficos, ter
certeza que estou no gráfico de velocidade, e então pegar essa alça e fazer isso uma curva bem afiada. Lá vamos nós. Então agora temos essa caixa de texto dimensionando para o tamanho do texto animado final. Se eu trazer essa camada de texto de volta, agora
posso cronometrar isso para começar a animar, mesmo ao mesmo tempo que a caixa de texto está. Lá vamos nós. Temos uma animação de trabalho e isso será atualizado
dinamicamente não importa o que eu digite aqui. Então, se eu disser “Skillshare”, vai se animar. Se eu torná-lo uma palavra mais curta como topo, ele ainda vai animar para fora e que o retângulo vai redimensionar não importa o que. É aqui que as coisas começam a ficar muito divertidas porque podemos começar a brincar com o design e criar gráficos que são baseados na forma do texto que eles estão por trás. Eu poderia adicionar uma segunda caixa de texto apenas duplicando isso, já que todas essas expressões estão indo para copiar também. Vou chamar essa de “Caixa de Sotaque”. e vamos mover a caixa de texto e a camada de texto para frente no tempo apenas um pouco para que possamos focar neste primeiro e talvez eu mude essa cor de preenchimento para ser a mesma cor que os textos. Algo assim. Vamos apenas obter essa cor exata para que sejamos consistentes. Agora nós vamos ter esta primeira caixa sair e eu vou dar um par de quadros,
talvez dois quadros, e então trazer a próxima caixa para fora. Então agora temos aquela linha de sotaque agradável saindo para começar. Novamente, eu posso mudar isso para o meu nome, se eu quiser,
e reduzi-lo um pouco para que ele se encaixe na tela, reposicioná-lo, fazer o que eu precisar, e tudo é dinâmico. Embora eu ache que é realmente importante que você entenda exatamente o que está acontecendo aqui, é por isso
que eu passei tanto tempo tentando lhe dar máximo de detalhes e explicação possível nessas expressões, A realidade é que, uma vez que você tem isso construído, você nunca tem que refazer isso. Você pode salvar este arquivo de projeto e usá-lo como um modelo avançando. Na verdade, você pode chegar a “Arquivo”,
“Salvar como” e, em seguida, alterar o tipo After Effects para projeto
de modelo After Effects. O que isso fará é salvar um projeto do After Effects que, quando você abri-lo, não modificará esse arquivo de modelo. Ele criará um novo projeto com base no que você salvou dentro deste modelo. Então você pode apenas salvar isso como o modelo de caixa de texto e ele
será a base para qualquer design que você deseja criar a partir desse ponto. Portanto, é importante entender como tudo isso está funcionando, mas você não precisa colocar em todo esse trabalho toda vez que quiser criar um modelo. Eu realmente espero que você seja capaz de ver as possibilidades que as expressões estão se abrindo dentro do After Effects. Nas próximas lições, vamos empurrar este design ainda mais para transformá-lo em um terço inferior. Vou ter um pouco mais de animação para ele, mais
alguns recursos e vamos até estilizá-lo um pouco mais. Neste ponto, você deve entrar lá e tentar animar isso por si mesmo e certificar-se de que tudo está atualizando corretamente quando você alterar a camada de texto, mudar a fonte, qualquer coisa que você faz, que a animação seja preservada. Não fique muito pendurado no design do modelo neste momento. Tudo bem que é apenas um retângulo atrás do texto. Em algumas lições, vamos dar uma olhada em como
estilizar isso e como você pode realmente transformar isso em algo que parece um pouco mais divertido do que texto em cima de uma caixa.
6. Como criar um terço inferior: Agora, que temos essa caixa dinâmica e vinculada ao nosso texto, vamos transformá-la em um terço inferior. Eu gosto de usar meu título em ações salvas guias para alinhamento para
isso, é uma boa prática. Eu só vou para o meu pequeno guia e
menu de grade e encontrar os guias de ação do título salvos. A tecla apóstrofo no teclado é o atalho para ligar e desligar isso, e este retângulo aqui é a caixa segura do título. Para transmissão na televisão, é prática geral não ter textos fora
dessa caixa e apenas para o caso de algo ser cortado nas telas das pessoas. Mas também é apenas um bom buffer entre a borda da tela e onde você deseja ler este texto. Agora, eu quero que isso tenha duas linhas, não apenas uma linha de texto. Este texto não vai sentar taxa neste guia e provavelmente é muito grande. Deixe-me diminuir um pouco isso e vamos digitar meu nome. Eu só vou usar meu nome como um exemplo e eu vou ampliar agradável e fechar e apontar que meu ponto de âncora
não está tocando este guia seguro título e isso é porque lembrar que alguns personagens poderiam sobrepor esses pontos de ancoragem. Só estou me dando um pouco de amortecimento. Tudo bem que essa caixa esteja indo além dela porque não é o texto real. É apenas o que precisa ser lido deve estar dentro desses guias. Como conseguimos uma segunda linha aqui? Bem, eu vou apenas duplicar o que eu já tenho e fazer algumas modificações. Vou selecionar o texto da Linha 1 e uma forma da Caixa de Texto 1 e duplicá-los Command ou Control D, e vou agrupá-los na parte superior por enquanto. Vou clicar duas vezes na camada de texto e dizer designer de movimento. Esta caixa de texto obviamente não está seguindo esta nova camada de texto e isso é porque as expressões não são atualizadas quando você as duplicar. Eles ainda estão fazendo referência a esta primeira linha de texto. A única razão pela qual ele está se movendo com ele é porque a relação paternal transmite quando você duplica. Ele assume que eu quero essas duas camadas duplicadas para preservar a relação pai-filho que os dois originais já tinham. Precisamos modificar algumas das expressões aqui. Vamos tocar duas vezes em E para exibir todas as expressões e dar uma olhada no que precisamos modificar. Bem, antes mesmo de eu entrar em qualquer um desses, você pode ver que a primeira variável e essas três expressões todas usam o texto fonte da Linha 1 aqui e porque eles são todos legais e organizados, tudo o que eu preciso fazer para que a caixa seja dimensionado e alinhado a esta segunda camada de texto vai para cada uma delas e alterar o nome da camada da Linha 1 para Linha 2. Farei isso para cada uma dessas expressões. Todas as variáveis estão fazendo referência a essa segunda camada de texto e, assim, minha caixa de texto agora está animando, dimensionando e alinhando perfeitamente a esta segunda linha. partir daqui eu vou apenas dimensionar isso um pouco para baixo, talvez eu vou fazer isso 48 pontos e trazê-lo para baixo abaixo da outra camada de texto, eu estou segurando shift enquanto eu mover isso para restringi-lo ao eixo y quando eu estou me movendo. Talvez eu quisesse sobre lá, o que eu quero fazer a seguir é ter certeza de que ele está alinhado a esta camada de texto no eixo horizontal. Eu só vou para a Linha pai 1 para a Linha 2 e pressione “P” para trazer a posição e ver que o valor x agora é zero, que significa que é o mesmo valor em relação à Linha 1. Eu posso saber com certeza que eles estão alinhados e está 85 pixels abaixo no eixo y da camada de texto original. Eu só vou mover minha caixa de texto para camada abaixo da caixa de texto 1, que ele não se sobreponha a camada de texto original e eu preciso ter certeza de que eu dou mais espaço do que isso. Porque lembre-se, algumas letras têm descendentes, então se eu colocar um g minúsculo bem aqui, aquela perna pequena no g é uma descida fora da linha de base, o que parece bem apertada na segunda linha. Eu vou trazer isso para baixo um pouco mais, apenas dar-lhe um pouco mais de espaço para respirar e isso parece muito bom. Mas eu quero salientar que aqui,
se eu aproximar bem e fechar, há uma pequena discrepância entre as duas caixas de texto. A nova caixa de texto é apenas um pouco para a direita e isso é por causa da fonte destruída no tempo restante valor. O valor esquerdo para essa camada de texto é
diferente do valor esquerdo para essa camada de texto porque há caracteres diferentes. Lembre-se, depende do primeiro caractere na linha de texto. Para esta segunda caixa, em vez de pegar o valor à esquerda desta camada de texto, eu queria tirá-lo da primeira camada de texto para
que isso esteja sempre perfeitamente alinhado na borda esquerda. Deixe-me tocar duas vezes E na caixa de texto 2 mais uma vez e não precisamos nos preocupar com o tamanho da caixa, queremos que fique o mesmo. Mas é a posição e o ponto de ancoragem que vão precisar apenas de uma pequena modificação. Vamos para a expressão de posição e eu preciso de uma variável para fazer referência a essa primeira linha de texto. Vou apenas duplicar esta primeira linha. Então clique triplo sobre ele para selecionar a coisa toda, copiar, soltar uma linha e, em seguida, colar e eu vou me livrar dessa linha extra, e nós vamos chamar esta variável Texto 2, apenas para simplicidade, e nós precisamos mudar a Linha 2 de volta para a Linha 1. Esta é a camada de texto original que tem o meu nome nela. Então só precisamos usar essa fonte para nossa propriedade de ponto esquerdo. Vou descer até a variável L e mudar o texto para Texto 2. Agora, estamos recebendo a fonte destruída no ponto de tempo valor esquerdo da camada de texto original que tem meu nome digitado. Enquanto eu estiver aqui, eu só vou copiar tudo isso porque nós
vamos então aplicá-lo e fazer exatamente a mesma coisa para o ponto de ancoragem. Você já pode ver que essa costura foi lá agora perfeitamente alinhada. Mas agora eu preciso mudar o ponto de ancoragem é para que a animação acontece fora dessa borda. Porque se eu fizer backup aqui, é muito sutil, mas você pode ver bem ali no início da animação, não está escalando do lugar certo. Vamos entrar nessa propriedade de ponto de ancoragem, entrar nessa expressão e eu vou apenas substituir tudo acima dessa variável de deslocamento porque este não fazia parte dessa expressão. Mas eu vou apenas colar aqui que adiciona nessa linha extra, muda L para Texto 2, se eu aplicar isso, agora tudo deve funcionar perfeitamente. Escala-se do ponto certo e está alinhado à borda esquerda corretamente. Isso resolve esse problema. partir daqui podemos brincar com a forma como a animação se desenrola, agora ambas as linhas estão se animando ao mesmo tempo. Eu poderia pegar a Linha 2 e a Caixa de Texto 2 e apenas empurrá-los para a frente um pouco e, em seguida, eles estão indo para compensar, isso é legal. Minha primeira linha tem a caixa de sotaque que colocamos. Talvez eu queira duplicar esta caixa de texto e chamá-la de Accent Box 2 e então eu poderia pegar a mesma cor e
colá-la e então apenas deslizar a segunda linha para frente um pouco no tempo. Acho que foram apenas dois quadros, lá vamos nós. Agora, temos aquela caixa de sotaque em cada quadro. Agora, eu sugiro que você corte todas as camadas que estão escondidas uma vez que a animação é concluída. Essas duas caixas de acento, uma vez que estão completamente encobertas, que seria no final da animação caixas de texto, então avalie lá. Vou cortar isso, só para que não fique mais sentado lá e a mesma coisa para este. Eu vou para a segunda caixa de texto para onde isso é totalmente animado e cortar essa caixa de sotaque fora no mesmo lugar. Legal. Agora, digamos que estou feliz com o jeito que isso está aparecendo, exceto que eu quero modificar essa margem. Bem, agora que eu tenho um monte de duplicatas, eu teria que ir em cada uma dessas caixas e modificar esse operador de caminhos de deslocamento para fazer isso. Vamos realmente começar a construir alguns controles para tornar esses ajustes um pouco mais fáceis. Eu vou fazer um nulo, subindo para camada um novo objeto nulo e eu vou nomear este controles. Nesta camada eu vou adicionar um efeito. Vou até Effect até Expression Controls e esses efeitos não fazem absolutamente nada por conta própria. Eles estão lá apenas para controlar expressões, é por isso
que eles são chamados de controles de expressão. A propriedade offset pads amount é apenas um número. Vamos controlar isso com um controle deslizante. Eu vou adicionar um controle deslizante e ele se parece com isso. É apenas um valor de controle deslizante e me dá um número, não
faz nada por conta própria, é apenas um valor numérico. Vamos nomear isto, montante de compensação. Eu fiz isso apenas selecionando o efeito e pressionando “Enter” e depois digitando “Enter” novamente. Agora, eu quero manter esse efeito visível, mesmo quando eu clicar em outra camada, você vê como eu faço isso, ele desaparece. Então, com esta camada selecionada, eu vou clicar neste pequeno ícone de cadeado sob o painel de controles de efeitos e agora mesmo que eu clique fora dessa camada, ele vai ficar aqui em cima e ficar visível. Isso é útil porque agora o que eu quero fazer é procurar essas quatro camadas. Vou selecionar todos os quatro para a propriedade de quantidade e você vai notar que isso traz até mesmo as expressões que têm esse termo nele. Mas eu quero encontrar este offset pads um em cada uma
dessas camadas e o que eu vou fazer é vincular esse valor de quantidade ao controle deslizante. Usando o chicote de escolha propriedade, eu vou clicar e arrastar e vir todo o caminho até os controles de efeitos. Isso ainda funciona em um painel diferente, então eu vou apenas selecionar esse controle deslizante, soltar e agora esse valor está sendo acionado por esse controle deslizante. Se eu aumentar ou diminuir, podemos ver isso acontecendo. Eu vou definir isso para 15 por enquanto, só para eu ver a diferença e então vamos fazer isso para as outras caixas. Sob deslocamento caminhos quantidade para a próxima caixa, eu vou usar a propriedade escolher chicote para grama que controle deslizante, fácil é que e eu vou fazer isso para as duas caixas restantes. Agora, todos eles estão ligados, eu posso usar este controle deslizante para ajustar os caminhos de deslocamento e pode até ser um pouco mais fácil se eu girar isso para baixo e eu posso ir de 0 a 100. Se você quiser alterar esse valor por qualquer motivo, você pode simplesmente clicar com o botão direito do mouse no controle deslizante e dizer editar o valor, e você pode alterar o intervalo desse controle deslizante. Agora, eu não preciso fazer isso, então eu vou deixar exatamente como está. Mas agora temos a capacidade de modificar essa margem na mosca deste controle nulo que criamos. Esses não são necessariamente controles que queremos dar
ao editor que usará esse modelo no Premiere, mas é uma ótima maneira de trabalhar dentro do After Effects. Você não precisa estar constantemente procurando valores, abrindo e fechando camadas o tempo todo. Em vez disso, você só tem um local central para seus controles. Vamos adicionar um pouco mais de personalidade a esta animação, não seja
tão estática. Quero que esta primeira caixa saia e, em seguida, mova para cima enquanto esta segunda linha anima. Agora, eu realmente não posso fazer isso porque esta camada de texto é parentada para a primeira camada de texto. Vamos realmente quebrar essa relação. Vou tirar isso e também vou mover a segunda linha. Preciso ter certeza de ter todas as três camadas selecionadas, movê-las para a frente por um segundo. Mais uma vez, o que eu quero fazer, é que isso saia e, em seguida, passar para esta posição. Talvez por volta deste ponto seja onde eu quero que acabe neste ponto. Vou adicionar um quadro-chave de posição pressionando Alt Shift P ou Command P em um Mac e, em seguida, fazer backup, talvez 10 quadros, Shift mais a tecla de página para cima no teclado, e mudar isso para baixo, talvez sobre lá. Nesta parte da animação eu poderia até tê-lo deslizar um pouco para fora. Talvez uma linha que até com a animação caixa de texto para que ele pare de se mover neste ponto. Vou adicionar outra taxa de quadros chave aqui e, em seguida, voltar para o início da camada e scoot isso para trás um pouco, não todo o caminho até a tela, talvez apenas para aqui e eu realmente empurrar este quadro-chave para trás mesmo antes que essa camada seja iniciada para que ela esteja alinhada com a caixa de texto. Agora, eu tenho essa animação que sai e sobe, eu só preciso aliviar tudo. Vamos para aquele gráfico de velocidade de propriedade posição, facilitar tudo e apenas trazer essas alças para ser um pouco mais extremo, talvez algo assim e eu vou apenas trabalhar no timing um pouco. Eu não preciso de qualquer alívio para fora do primeiro quadro chave e o segundo movimento é um pouco extremo. Vamos espaçar isso um pouco mais, dar um pouco mais de tempo e modificar esta curva um pouco, que parece muito bom. Neste ponto em que ele está se movendo para cima, é quando eu quero que a próxima caixa de texto seja animada em. Vamos para a direita aqui onde ele começa a se mover e pegar essas três camadas, trazê-lo de volta e provavelmente começar bem ali. Agora, podemos reproduzir isto e ver como é tudo juntos. Neste ponto eu tenho um terço inferior trabalhando, que você pode ver bem aqui. É totalmente funcional mesmo sendo bastante básico. Neste ponto, eu provavelmente gostaria de entrar e começar a ajustar as coisas para tornar as coisas mais visualmente interessantes e isso é exatamente o que vamos fazer nas próximas aulas. Neste ponto, você deve voltar para After Effects e se você precisar dessas duas linhas de texto, certifique-se de que você pode levá-lo para um ponto de trabalho, mas brincar com a forma como ele é animado. Faça fontes diferentes, use diferentes animadores de texto e personalize-o como quiser. Em seguida, podemos passar para a próxima lição, onde vamos levar isso um pouco mais longe e começar a personalizar a forma como tudo parece.
7. Passo a passo do design estilizado: Nesta lição, eu vou orientá-los através de como eu peguei o modelo que eu criei até este ponto, e empurrou-o ainda mais adicionando um pouco mais estilístico para ele e alguma textura, um pouco mais divertido animação de texto, e Só te mostrar como você pode realmente empurrar isso para parecer o que você quiser. Se você quiser baixar este arquivo de projeto, você pode simplesmente ir para a guia Projeto e Recursos, e olhar no lado direito da página e, em seguida, você pode percorrer tudo isso e dissecar como eu fiz isso. Eu não vou mostrar especificamente como eu fiz isso,
mas eu vou orientá-lo sobre o que eu mudei e como ele ainda está funcionando. Primeiro de tudo, eu apenas animei o texto de forma diferente, então ele está embaralhando aleatoriamente
nesses caracteres e esses caracteres estão sendo empatados na forma base, essa camada de caixa de texto. A maneira que eu fiz isso foi apenas usando o efeito fosco definido, que permite que você faça um fosco baseado em qualquer camada. Eu escolhi a caixa de texto uma camada, e eu me certifiquei de usar efeitos e máscaras porque isso me traz para a minha próxima mudança, que estava colocando em camadas sobre efeitos. Esta caixa de texto, tem um deslocamento turbulento que o torna não tão perfeito. Você pode ver que eu arredondei os cantos do retângulo, mas então eu adicionei este deslocamento turbulento a ele. É por isso que você precisa ter certeza de que os efeitos e máscaras ativados nesse efeito fosco definido, modo que ele esteja prestando atenção não apenas à camada, mas também aos efeitos que são aplicados a ela. Atrás disso, eu adicionei esta camada de textura, que novamente usa set fosco para mantê-lo dentro dos limites dessa caixa, mas é apenas uma textura animada que se parece com isso usando um efeito de ruído turbulento. Então eu também tenho essa linha inicial que sai, isso apenas como um sotaque ou linha que leva para fora toda a animação. Isso foi feito modificando outra cópia desta caixa base. Deixe-me mostrar-lhe como eu fiz isso muito rápido. Se eu entrar no conteúdo, confira o retângulo, entre no
caminho do retângulo. Tudo é exatamente o mesmo, exceto dentro da expressão de tamanho. Eu tenho uma variável para o texto fonte, eu tenho uma variável para o rect fonte no momento, e eu tenho uma variável para a largura. Mas não para a altura, porque eu queria que a altura fosse zero, modo que esta seria apenas uma única linha em vez de uma caixa inteira. Uma vez que eu tive isso, eu poderia adicionar uma aparar caminhos para o grupo, que eu pudesse animar esta linha entrando e desligando. Vamos soltá-lo por um segundo e desligar este ziguezague. Você pode ver que é apenas uma linha reta animando fora, mas a largura dele é baseada na camada de texto, ele sempre se alinhará com essa caixa de texto. Então eu só adicionei um ziguezague e modifiquei as propriedades para que ficasse um pouco mais rabiscado, e quando você coloca tudo isso junto, você obtém algo parecido com isso. Mas assim como tudo o resto, eu posso mudar este texto para dizer outra coisa e ele vai ser atualizado com ele. Vamos tocar isso de volta, lá vamos nós. Essa linha é mais longa, a caixa é mais longa. É tudo dinâmico e atualiza tudo o que você digita. Esse é o fator chave para fazer esses modelos funcionarem dentro do premier. Agora, que você viu o quão longe eu empurrei meu projeto, eu quero que você entre lá e comece a personalizar seu próprio design. O meu é muito plano em 2D, mas você pode adicionar efeitos de iluminação a ele para dar-lhe mais sombreamento e mais profundidade, ou você poderia realmente torná-lo 3D. Tudo está sendo conduzido por essas expressões, então não importa o que você faça com seu design neste momento. Você pode fazer com que pareça o que quiser. Porque lançamos todo esse trabalho fundamental, tudo será atualizado dinamicamente. Entra lá, brinca com ele e diverte-te um pouco. Como sempre, você pode me fazer perguntas se estiver tendo problemas com seu design específico. Estou sempre aqui para ajudar.
8. Como exportar seu template: Agora que meu design está olhando da maneira que eu quero, eu preciso realmente transformá-lo em um modelo. É isso que vamos dar uma olhada nesta lição. Bem, é aqui que o painel Gráficos essenciais entra em jogo. Venha até “Janela”, e o meu está sendo cortado, mas basta ir até “Gráficos Essenciais”, e abrir o painel, e o meu está encaixado bem aqui, ao lado dos meus Controles de Efeitos. Eu acho que este é um lugar muito conveniente para tê-lo, então eu vou deixá-lo bem aqui. O que este painel Gráficos Essenciais nos permite fazer é adicionar controles que queremos dar ao editor dentro do Premier. A quantidade de flexibilidade que você dá ao editor depende inteiramente de suas necessidades. Digamos que você é um designer de movimento projetando um pacote gráfico para os editores usarem. Bem, então você provavelmente tem um guia de estilo que você quer que esses editores adiram, e você não quer que eles mudem coisas como cores e fontes. Você só quer dar a eles a capacidade de alterar o texto dentro do Premier; preservando o design que você criou no After Effects, mas permitindo que eles, digamos, façam vários Terços Inferiores e mudem o nome para eles não têm que voltar para você para esses gráficos. Bem, vamos começar por aí. No painel Gráficos essenciais, precisamos primeiro definir a composição Mestre, então selecione essa lista suspensa e vá para a composição que você deseja usar. Digamos que este diz “Terceiro Inferior 2", e então temos alguns controles. Ele automaticamente trouxe o que ele pensa que eu poderia querer, que eram duas camadas de texto. Claro, isso é exatamente o que eu queria, mas se o painel Gráficos Essenciais trouxer algo que você não queria, basta selecioná-lo e pressionar a tecla “Delete”. Tudo bem. Agora que eu fiz isso, eu preciso trazê-lo de volta, então vamos pegar “Linha 2". Temos que selecionar uma propriedade específica, não toda a camada de texto. Se eu clicar e arrastar isso para cima, você pode ver que ele não vai trazer isso para dentro, mas se eu expandir isso para baixo, entrar no texto, e então encontrar a propriedade “Texto fonte”, isso é o que eu posso arrastar para cima e Tragam aqui. Nesta coluna à esquerda, aqui, é o que o nome do controle será exibido como no Premier, então precisamos alterar o “Texto de origem” para “Linha 2". Neste ponto, eu posso digitar qualquer coisa que eu quiser no conteúdo real, e ele será atualizado no After Effects, então eu poderia dizer, “John Doe”, clique fora dele, e ele vai ser atualizado no After Effects. Então, se você quiser, você pode até criar controles globais, aqui
mesmo no painel Gráficos essenciais, e usá-lo diretamente no After Effects. Na verdade, se eu cancelar a seleção e apenas dizer, Propriedades Suportadas Solo, isso exibirá todas as propriedades em sua composição que o painel Gráficos Essenciais pode realmente controlar. Da mesma forma que criamos controles nesse objeto nulo, o painel Gráficos essenciais também pode manipular esses controles e fornecer um local central para modificar coisas em seu projeto. Eu diria que é uma maneira inteligente de trabalhar se você precisa controlar as coisas em várias composições. Se você está apenas controlando coisas dentro de uma única composição, então eu geralmente vou apenas criar um objeto nulo e adicionar meus controles de expressão a ele. Mas digamos que você queira dar esse controle de “Deslocamento de Valor” ao editor. Eu sei, neste caso em particular, você provavelmente não faria isso. Você só quer dar a eles os campos de texto. Mas digamos que por alguma razão você fez. Bem, nós amarramos todos os controles de deslocamento para essas camadas de forma a este controle deslizante. Agora que todos eles estão sendo conduzidos por este controle deslizante, eu posso pegar esse controle deslizante e trazê-lo em vez de trazer a quantidade de deslocamento para cada uma dessas camadas de forma, uma por uma, para aqui. Isso é uma coisa que o painel Gráficos essenciais não pode fazer. Ele não pode controlar vários valores com um controle a menos que você amarrá-lo com expressões para algo como este controlador de expressão que nós configuramos. Mas agora que ele está aqui, eu posso renomeá-lo, “Deslocamento de Valor”, e ao ajustar esse controle deslizante, ele vai refletir dentro do visualizador de composição. Vamos voltar para 20 e dar uma olhada nesta terceira coluna, aqui. Nesta propriedade, um controle deslizante, você pode editar o intervalo exatamente como eu mostrei antes nos controles de efeito reais. Mas o que é isso “Editar Propriedades” nos controles de texto? Bem, vamos descobrir. Estes são realmente muito importantes porque você é capaz de
dar aos editores a capacidade de habilitar fontes personalizadas, que eles
possam mudar a fonte; você pode dar a eles controles para alterar o tamanho da fonte, e você pode até dar eles controles para os estilos falsos, como faux bold, faux itálico, coisas assim. Esses não seriam controles que eu gostaria de dar a um editor quando eu tiver um guia de estilo definido, mas se você estiver tentando criar algo que talvez queira vender; especialmente no Adobe Stock, esses são realmente necessários de você; você tem que dar ao usuário a capacidade de
escolher a fonte e o tamanho da fonte; coisas assim. Então é aqui que você iria fazer isso. Só para entender que isso torna seus modelos muito mais complicados porque dá ao modelo muito mais oportunidade de não trabalhar como você pretendia. De qualquer forma, eu vou deixar todos esses desmarcados e clique ok, e esses três controles são tudo que eu realmente preciso dar para o meu editor. Antes de terminar isso, eu quero primeiro nomeá-lo, e eu vou chamar isso de, “Skillshare L3", para um terço inferior, e eu vou clicar no botão “Definir Tempo do Poster”, que nos dá uma captura de tela, basicamente, do nosso modelo, que será visível no Premier. Por que não mudamos isso de “Motion Designer” para “Title”? Este é um texto de espaço reservado. Temos “John Doe” e “Title” para Linha 1 e Linha 2, Definir hora do pôster, e agora podemos exportar o modelo de animações. Isto significa que o projeto precisa ser salvo primeiro. Deseja salvá-lo? Sim, quero salvá-lo. Em seguida, ele abre a janela de exportação. Você pode colocar isso onde quiser. Se eu colocá-lo na “Pasta de Modelos Locais”, ele aparecerá automaticamente no Premier, então é aí que eu vou deixá-lo. Em seguida, temos essa caixa de seleção de compatibilidade que nos permite saber coisas como se estamos usando fontes que estão fora da biblioteca do Adobe Fonts, se o After Effects precisa ser instalado para poder modificá-lo, ou se houver certos controles que estou usando no painel Gráficos essenciais que eles não podem ser editados com a ferramenta “Tipo” Premier Pro. Novamente, isso provavelmente não importa se você está trabalhando em uma equipe interna, mas se você está enviando esse modelo para a internet, e você precisa que ele seja super compatível e flexível, então você vai querer esses avisos. Você também pode adicionar palavras-chave aos seus modelos. Mais uma vez, isso é mais para se você está tentando vendê-los para que eles sejam mais pesquisáveis. Mas vamos deixar tudo em branco. Clique em “OK”, e ele vai apenas exportar. Agora, podemos ir ao Premier e fazer um test drive. Tudo bem. Aqui estamos no Premier. Eu comecei um novo projeto, e vamos encontrar esse modelo. Vou até o painel “Janela”, “Gráficos Essenciais”. Isso se abre aqui. Eu preciso encontrar meus modelos, então eu vou clicar sobre isso e, em seguida, rolar para baixo esta lista. Na verdade, há muita coisa aqui, então vamos procurar por “skillshare”. Lá vamos nós. Isso traz isso à tona. Preciso de uma linha do tempo para colocar isso, então vamos fazer uma nova linha do tempo. Precisamos fazer isso 1920 por 1080 a 30 quadros por segundo, então vamos apenas fazer “Personalizado”,
“ 30 quadros/segundo”, “1920", “1080",
“ Quadrados Pixels” e clicar em “OK”. Aqui está nossa sequência, e eu vou arrastar isso diretamente para a linha do tempo. Isso vai demorar um pouco para carregar. Tem que ler After Effects para ajudar a mostrar isso. Agora, se olharmos para o monitor do “Programa” e reproduzirmos isto, aí está o nosso modelo. Neste painel “Gráficos Essenciais”, tenho esta aba chamada “Editar”. Se eu for para essa guia e tiver meu modelo selecionado, aqui estão os controles que atribuímos no After Effects. Linha 1, em um campo de texto, Linha 2, em outro campo de texto
e, em seguida, o valor do deslocamento. Eu posso mudar isso de volta para o meu nome, e ele vai ser atualizado dentro do Premier sem precisar ir para o After Effects para nada. Vou escalar isto para que possamos ver. Com certeza, parece exatamente o mesmo que fez dentro do After Effects. Posso reproduzi-lo e, dependendo da sua máquina e da complexidade do seu modelo, ele pode não ser reproduzido em tempo real. Mas isso está fazendo um bom trabalho. Eu também tenho esse controle de “Deslocamento de Valor” para que eu possa ajustar isso se eu quiser, mas isso é mostrar que é possível. Novamente, eu realmente não gostaria de dar esse controle para o editor. A questão é que eu já testei meu modelo, e ele está funcionando, então eu posso compartilhar isso com minha equipe, e eles podem começar a fazer seus próprios Terços Inferiores. Uma coisa que eu quero salientar é que o comprimento deste é o mesmo
que o comprimento de sua composição dentro do After Effects. Eu tinha a minha composição ajustada para 30 segundos. Desta forma, o editor pode simplesmente cortá-lo para onde quer que ele termine. Porque é muito provável que um Terceiro Inferior tenha 30 segundos de duração, isso deve ser mais do que suficiente do que eles jamais precisarão. Mas agora eu posso compartilhar esse modelo de trabalho. Isso é realmente tudo o que há para fazer um modelo de gráficos de movimento. Não é tão complexo, mas meu template não era complexo, e eu não dei ao editor muitos controles,
apenas os dois campos de texto e esse controle de deslocamento, que novamente, eu provavelmente nunca daria a eles em o mundo real se eu precisava desse modelo para olhar exatamente como eu o projetei. Mas há uma chance muito boa de que você pode precisar criar um modelo que é muito mais personalizável; especialmente se você estiver indo para tentar vendê-lo. Assim como os modelos que criei no Adobe Stock têm muitos e muitos controles. Na verdade, aqui está como um dos meus modelos se parece. Você pode ver todos os controles que eu construí nele. Eu dou controles sobre as cores, e a fonte, e transparências, se algo é visível ou não. Você pode ver que ele fica muito mais complexo quanto mais personalizável ele precisa ser. Obviamente, eu não lhe ensinei tudo o que você
precisa saber para fazer um modelo tão complexo. Se eu tivesse, esta aula provavelmente teria durado oito horas, então este é realmente apenas o primeiro passo para entrar em modelos de animações. Se você quiser aprender mais, definitivamente me avise, e talvez eu possa fazer mais algumas aulas como esta. Mas para o seu projeto de classe, concentre-se no Terceiro Inferior. Torná-lo tão personalizável quanto você quiser. Se você quiser adicionar muito mais desses controles,
basta clicar em “Solo Supported Properties”. Lembre-se desse botão no painel Gráficos essenciais, que mostrará tudo o que você pode controlar com seu modelo, e você pode simplesmente arrastar as propriedades que deseja personalizar dentro do Premier. É totalmente até você quanto controle você quer
dar sobre o usuário dentro do Premier, mas eu vou deixar você fazer essa chamada e chegar lá,
e começar a personalizar as coisas e fazer este modelo funcionar da maneira que você deseja para que você possa testá-lo no Premier e certificar-se de que tudo está exatamente como você deseja.
9. Valeu!: É o fim desta aula. Muito obrigado por assistir e parabéns por fazer isso tudo. Estou muito animado para ver todos os modelos começando a entrar na página Projeto de classe. Você sempre pode me fazer perguntas se estiver com problemas. Eu sei que expressões são complicadas e você pode ficar muito perplexo em como fazer algo funcionar quando você está apenas entrando em expressões. Estou aqui para responder suas perguntas, não tenha medo de perguntar. Se você gostou desta aula, eu adoraria se você me deixasse rever ou se você não gostou desta aula, me diga o que eu poderia fazer melhor, para que eu possa melhorar minhas futuras aulas. Você pode me seguir em qualquer lugar online no Jake In Motion e certifique-se de clicar no botão “Assinar” aqui no Skillshare, para que você saiba quando eu postar novo conteúdo. Muito obrigado novamente por assistir e te vejo no próximo.