ExtendScript +式

<=前の記事ExtendScriptコンポジションの操作





こんにちは。





では前の記事、私たちは、After Effectsのシーンにタイトルを構築するためのモデルの基礎を作りました。プロジェクトに1つのシーン、またはいくつかのシーンを追加します。次に、シーンにクレジットを追加する必要があります。タイトルを追加するには、AEレイアウトでモデルを作成する必要があります。これはコピーに役立ちます。





構成ModelScene_1x1がすでに作成されているプロジェクトに入ります。同じ1x1フォルダーに、2つのコンポジションを作成しますそれらの1つにModelTitre_simple_1x1もう1つにModelTitre_double_1x1という名前を付けます。





構成ModelTitre_simple_1x1から始めましょうModelScene_1x1コンポジションに追加しましょう





ModelTitre_simple_1x1自体、テキストボックスを作成します。それをreference_textと呼びましょう





. , -. After Effects, . , . . Expression, Javascript, , . . reference_text, Transform, Position.





Animation > Add Expression. Position Expression , .





:





var width = Math.round(thisLayer.sourceRectAtTime().width);
var padding = 20;
var hideX = -width - padding;
var showX = padding;
var posY = transform.position[1];
var animationTime = 0.5;

var timeIn = comp("ModelScene_1x1")
   .layer(thisComp.name)
   .inPoint;

var timeOut = comp("ModelScene_1x1")
   .layer(thisComp.name)
   .outPoint;

if (time <= animationTime) {
   easeOut(
       time,
       0,
       animationTime,
       [hideX, posY],
       [showX, posY]
   );
} else {
   easeOut(
       time,
       timeOut - timeIn - animationTime,
       timeOut - timeIn,
       [showX, posY],
       [hideX, posY]
   );
}
      
      



, . . . thisLayer, , sourceRectAtTime, .





thisLayer.sourceRectAtTime().width
      
      



. . , , .





var hideX = -width - padding;
var showX = padding;
      
      



Y ,





var posY = transform.position[1];
      
      



, . , .





var animationTime = 0.5;

var timeIn = comp("ModelScene_1x1")
   .layer(thisComp.name)
   .inPoint;

var timeOut = comp("ModelScene_1x1")
   .layer(thisComp.name)
   .outPoint;
      
      



, ModelScene_1x1, . , , thisComp.name. inPoint outPoint   .





, . , 0. animationTime, , .





if (time <= animationTime) {
   easeOut(
       time,
       0,
       animationTime,
       [hideX, posY],
       [showX, posY]
   );
}
      
      



easeOut, , 5 . 





  • time -





  • startTime - , time >= startTime





  • endTime -





  • startPosition -





  • endPosition -





position , X Y. , , X, - Y.





, ,





easeOut(
       time,
       timeOut - timeIn - animationTime,
       timeOut - timeIn,
       [showX, posY],
       [hideX, posY]
   );
      
      



-





timeOut - timeIn
      
      



animationTime





timeOut - timeIn - animationTime
      
      



, , ModelScene_1x1. , , .





, ModelTiter_double_1x1. . , . , , . reference_text, strin_1 string_2





reference_text Guide Layer.





, . , string_1 string_2. ? . , reference_text. , .





, Expression. sourceText string_1 Animation > Add Expression









var refText = thisComp.layer("reference_text")
    .text.sourceText.split("\r");

var stringID = parseInt(thisLayer.name.split("_")[1]);

refText[stringID - 1]
      
      



reference_text . , \r. refText[0], , id, refText id. sourceText string_2. string_1 reference_text, string_2 - .





. simple, , . , .





Position string_1Expression ModelTitre_simple_1x1. delay.





var delay = 0.3;
      
      



( 0.3 ):





easeOut(time,
   timeOut - timeIn - animationTime - delay,
   timeOut - timeIn - delay,
   [showX, posY],
   [hideX, posY]
);
      
      



, delay , .





これで、2種類のタイトルのレイアウトができ、すべてをステージに配置する準備が整いました。しかし、次回はこれを行う方法について説明します。 





この記事からすべてのここからダウンロードできます





式のドキュメントはこちら





それが今日のすべてです。





<=前の記事ExtendScriptコンポジションの操作








All Articles