[綜合] AE expression

看板Digital_Art (影音圖片編輯)作者 (CAI)時間15年前 (2010/10/18 18:07), 編輯推噓1(104)
留言5則, 4人參與, 最新討論串1/1
使用軟體: After Effects 版本: cs4 附加使用軟體: none 問題描述: 我使用expression製作圖層動畫。 最近遇到一個問題, 我想要讓物體 B 接近物體 A 時, A 就會被 B 吸引,從此黏著 B (類似吸塵器的感覺)。 於是我在 A 的 position 寫了exeprssion如下: aP = transform.position; bP = thisComp.layer("A").transform.position; D = length(a,b); if( D<100 ){ linear( D, 100, 0, aP, bP); if( D == 0){ a == b} else{ a }} 我試了很多方法,都沒用,條件大概如下 #1,A 不動 #2,B 靠近 A 時,A湊上去 #3,湊上去後,A 不再離開 B 有exprssion高人替我解惑嗎 !? 感恩 已嘗試過方式: 爬文(Google)? I had. -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 115.43.40.130

10/18 21:47, , 1F
語法真的好難喔 你還可以寫語法 我連看都看不懂
10/18 21:47, 1F

10/18 22:07, , 2F
看不懂+1 (淚奔
10/18 22:07, 2F

10/18 23:28, , 3F
我是這個月才開始碰的,要高人指點 XD
10/18 23:28, 3F
Caiboruei:轉錄至看板 java 10/18 23:34 Caiboruei:轉錄至看板 Ajax 10/19 00:03

10/19 01:40, , 4F
試了一下 你的語法可以做到1跟2
10/19 01:40, 4F

10/19 01:42, , 5F
#3的部份 有點困難....
10/19 01:42, 5F
其實我試成功了 (剛剛才想出來,想了三天 XD) 但是不是運用兩點的相對關係,而是運用兩點與原點的關係, 如果用兩點的距離,因為距離隨時間改變,會忽大忽小難掌握。 但是用原點又有缺點,當點 B 動作太大,就會破功。(我只能將就一下囉 XD) 大家可以試試看以下的expression (只要底下有圖層在運動就可以了) //吸塵器 var a = transform.position;//本圖層(A)的位置 var b = thisComp.layer(thisLayer,+1).transform.position; //下一圖層(B)的位置 //可以把 B 圖層設key點,移動看看 var aoD = length([0,0],a);//原點到 A 圖層的距離 var boD = length([0,0],b);//原點到 B 圖層的距離 var d = boD - aoD;//當d為正數,B點在A點左邊 if( d > 0 ){ a ; if ( d <= 100 ) { value =a; easeIn(d, 100,0,b,a) //這裡我不懂為什麼是(d,100,b,a),而不是(d,100,a,b) } }else{ value = b } 不知道還有沒有更好的方法!? ※ 編輯: Caiboruei 來自: 115.43.40.130 (10/19 03:38)
文章代碼(AID): #1Cl1n-IG (Digital_Art)
文章代碼(AID): #1Cl1n-IG (Digital_Art)