「發生什麼事情?」糟糕!意識逐漸模糊……
「勇者!快醒醒啊!」
你睜開雙眼,看到村長正大力地搖醒你!
太好了!意識沒有完全渾沌!應該沒失憶吧?還認得我嗎?我是村長Fei。你帶著小吉到處跑,不小心卡進了副本裡了,你先好好休息,身體恢復了我再跟你說明副本的注意事項。
(一週後……)
勇者!這麼快就來找我了,體質真不錯!上週你誤入了副本裡,副本跟我們《搞什麼世界》的時間軸不一定一樣,進入到不一樣的時間軸空間裡,如果沒有使用控制時間的咒語,很容易造成意識渾沌及記憶錯亂。
為了讓你感知時間,我會先把時間具象化。語畢,村長拿出了兩個面板。
左邊是《搞什麼世界》的時間軸,右邊是副本時間軸,每個副本的時間軸不一定一樣,所以在進入副本的時候比須先控制住副本的時間軸,才不會讓過快或過慢的時間軸,影響到意識!
時間具象化的咒語,在文字圖層 ( Text layer )輸入
time;
顯示的是《搞什麼世界》的時間軸,也就是主世界的時間。
控制時間的咒語,以秒為單位。
而剛剛的副本時間軸是
time*2;
以秒為單位改變副本(composition)裡的時間,
所以剛剛的副本的時間是主世界時間×2,也就是主世界過了 5 秒,副本裡就過了 10 秒。你也來試試吧!村長交給你一個面板。
你在文字圖層 ( Text layer )施咒後
你:嗯?村長這個面板壞掉了?
村長:面板並沒有壞掉喔!因為副本的時間軸複雜,因此我們需要用咒語進行修正。
time.toFixed();
( )內是限制數值後的小數到第幾位數
接著村長對著你手上的面板施咒……
time.toFixed(1);
你看,面板正常顯示了!如果要在更精確的話,可以改變 () 內的數值。至於如果要更有變化的運算,之後再慢慢地教你!先把基礎練好吧!
time; 的應用範圍不只在顯示數值上喔! 繼續看下去吧!
time*360;
time 是以秒為單位,所以應用在 Rotation 上,就是 1 秒會旋轉多少度,
time*360; 代表 1 秒旋轉 360 度,
time*90;
而 time*90; 代表 1 秒 90 度,也就是說 4 秒後,秒針才會走完一圈。
依照上面的邏輯,如果我想讓物體固定 4 秒轉一圈
time*360/4;
time*90;
其實效果一樣喔~你看
運用這個咒語,你就可以控制物體 "幾秒" 轉 1 圈了!
因為 time; 有等速的特性,常用於自動的變化,讓物體隨著時間持續旋轉或移動。如:旋轉的齒輪。
這裡有個重點:time 是個一次只能指定一個屬性(方向)的咒語,但像是 Position 屬性是綁定在一起的,要怎麼分離方向?
Separate Dimensions(分離方向)
Position 滑鼠右鍵,選取 Separate Dimensions(分離方向)。
這樣就分離好了,就可以使用 time 囉!
//X Position
value+time*250
跟前面示範比較不同的是,初始位置不是 0,所以需要在 time 前面,加上 value,設定後面的運算初始位置設為原本位置 (x=200),如果沒設定的話,X Position 就是從 0 開始出發!
上圖設定 X Position 初始位置 (value = 200),每秒移動 250,所以 0 秒的時候位置為 200,1 秒位置為 450,2 秒為 700...持續運動下去……
//Y Position
value+time*150
Y Position 初始位置 (value = 300),每秒移動 150,所以 0 秒的時候位置為 300,1 秒位置為 450,2 秒為 600……持續運動下去……
你:那紅底白框的球呢?不是說要time只能設定單向嗎?
村長:沒錯!雖說只能設定單向,但其實可以直接用 time* [ x , y ]
直接去指定位移數值,效果是一樣的,但我認為分離方向對於後來如果有更複雜的運算或咒語,比較好上手!
value+time*[250,150]
恭喜你完成新手的主線任務-初入副本
任務獎勵:初心面板
(道具。能快速確認時間軸,並調整副本時間。注意:因為做工比較粗糙,無法運算過於精確或改變過於龐大的副本。可以在各個初級副本裡機率性找到強化的零件,集齊強化零件後,可找戴林(鍛造師)進行強化。下一階段為:<中心面板>。)
村長的施法時間!
----------嘿!基礎你學完了!很棒~記得勤加練習!----------
因 time; 能隨著時間變化的特性,常被用來套用在一些效果上,例如:套用在效果中的 Evolution 。
說到 time ,就順便說表達式裡也有 time 的表達式吧!
可在特定時間點取得某一幀的屬性值。
thisComp.layer("Layer Name").transform.position.valueAtTime(time - 1);
//Layer Name 記得換成參考圖層名稱,time-1為追蹤參考圖層的前一秒的位置
紅圈是參考圖層(circle_1)、黃圈是追蹤圖層(circle_2),而紅圈在 3 秒時結束停止,黃圈在 4 秒時停止。
使用 posterizeTime() 可做出抽幀效果。
time*180
。posterizeTime(3); //Comp 的每秒幀數/3
time*180
按下播放鍵,看看這兩個圖層有什麼不同吧!
當 Comp 每秒幀數為 12 時, posterizeTime(3) ,意思是12/3,原本的 4 幀抽幀成 1 幀,因此 0-3 秒為 1 幀、4-7 秒為 1 幀……以此類推。
📌最新動畫作品在這 ➡️ instagram
📌更新會比 IG 晚一天 ➡️ YouTube
📌追蹤✅、點❤️、分享🔗、收藏📂
合作請
私訊 Instagram
或寄信至 x.fei.4044@gmail.com