2011年4月25日 星期一

AE Expressions教學-5



    我們之前使用螺旋紋建立簡單的Expression, 但是只能選擇畫面中存在的物件及其特性(屬性), 例如Comp的特性frameDuration就無法選擇,因為它不存在於畫面中.

什麼是物件

    物件就是一個容器,裡面可裝其他物件與特性,以及函式.

   例如Comp就是AE的一個物件, 裡面包含其他物件(圖層)或是Comp本身的特性,如duration(時間)或width(寬度)等. 在AE中有物件:Comp,layer...等,及特性:opacity,duration,width...等

全域物件(Global Object)與全域特性(Global Atttribute)

    不需定義,直接取用

全域物件與屬性物件種類
thisLayer燈光,影像,聲音 或 攝影幾等物件
thisCompComp 物件
comp("name")Comp 物件
footage("name")Footage 物件
timeNumber 屬性
valueNumber 屬性


    舉 thisComp 為例:

thisComp.layer("Solid 1") 可以取得目前Comp裏面,名為"Solid 1"的layer.

    還可接著往下取得特性, 例如layer圖層的rotation.

thisComp.layer("Solid 1").rotation

    thisComp是全域物件,layer("Solid 1")是裡面的一個layer,此expression取得該layer的rotation特性.

    可用拉螺旋紋到Solid 1的rotation, AE直接填入expression.
有transform是正規寫法,但也可忽略

    用螺旋紋時要小心,expression的欄位游標要放對, 或是被取代的字串也要選對. 底下是layer的常用特性;


圖層特性與函式值的類型維度單位
width 寬度Number1pixels
height 高度Number1pixels
startTime  圖層開始播放時間Number1seconds
inPoint  圖層啟用時間Number1seconds
outPoint 圖層失效時間Number1seconds
hasVideo 是否有影像Boolean1Boolean
hasAudio 是否有聲音Boolean1Boolean
active 是否顯示Boolean1Boolean
audioActive 聲音是否開啟Boolean1Boolean
audioLevels 聲音層數Property2 [left, right]decibels
index 圖層索引值(第幾層)Number1Number
parent 父物件Layer, Light or Camera
source 來源(指向poject面板)Comp or Footage
mask(index or name) 遮罩Mask
effect(index or name) 特效Effect


存取圖層特性的小例子


預設物件

    如 thisLayer, 你可以不需寫 thisLayer.opacity, 直接寫 opacity, AE會自動參考用這個 opacity 的 layer.


    但若要存取其他 layer 的 opacity . 必須加上其他 layer名稱及 thisComp, 也就是用螺旋紋直接連.



方法(Method,中文或稱函式)與特性(Attributes)

  • 方法(Method) : 是一組內部運算,最後得到值, 如 valueAtTime(time);
    有括弧的都是"方法"
  • 特性 : 就是一個值, 如 width, opacity...


以 opacity的valueAtTime 為例
thisComp.layer("Shape Layer 1").opacity.valueAtTime(time)
    time 是全域特性, 是時間軸的所指的時間, 以秒為單位, time作為輸入參數, 用來取得Shape Layer 1圖層的opacity 在 5秒5 的值, 如圖是52.01... , 並將此值以字串顯示在工作視窗.


AE Expressions教學-4

參考與引用:http://www.jjgifford.com/expressions/basics/objects.html#Anchor-Global-35882

沒有留言:

張貼留言

LinkWithin

Related Posts Plugin for WordPress, Blogger...