先來看我們今天要用MAYA制作的效果:
01做物體與粒子碰撞特效時,我們要追求好效果,要求粒子必須發射到精確的位置。比如劍在牆上刮起的火花,石頭從山上滾下來帶起來的灰塵和小石子,一個人走路時,腳帶起來的塵土等等。
02石頭(暫且將石頭命名為 boulder )從小山丘上滾下來,會帶起很多灰塵。我們現在實現這種效果。我們做個石頭(命名為 boulder ),進入 Dynamics 主菜單,給石頭加 active rigid body 和 gravity field 效果。然後建個( plane )平面,給 plane 加個 passive rigidbody 。再選擇附加了 rigidbody 效果的石頭,再給它個 softbody (如下圖),選擇 Duplicate, make Copy Soft ;勾選 ''hide non-soft Object ,勾選 'make non soft a goal' ,然後設置 weight 為 0.8 ,點 Create 按鈕。我們打開 Outliner ,選擇石頭中的( copy0boulder )節點,將它隱藏,粒子不要隱藏,我們只要看到 'soft boulder' 就行了。
03我們這一步要做的是把 softbody particles 與 plane 進行碰撞。選擇 plane ,進行 Particles Make Collide ,設置如下屬性: resilience 為 0 friction 為 0 ; 然後打開 window Relationships editor Dynamics Pelationships, 使 softbody particle's collision 和 plane 連接,現在這兩個物體就可以碰撞了。 選擇 softbody particle 對象,打開 Particles Particle Collision Events , 在彈出的框中,按下圖設置屬性:
04現在 hardware (硬件)渲染動畫,大家會看到 boulder 與 plane 碰撞時產生的點是灰色的,也就是 softbody particles 是灰色的。我們就給這些粒子加顏色。進入粒子的 particleShape Attribute ,點擊 Add Dynamic Attributes 裡的 Color ,給它個如下圖的顏色。 在它的 opacity attribute 裡設置 value 為 0 。
05最後要注意的是,這個技巧不是要我們怎麼用 rigid body ,而是要大家延伸這個技巧。假設角色走路所帶起來的灰塵,路面還要用 'make collide' ,但不需要 rigid body 了,同樣角色的腳也不需要變成 softbody ,我們只要選擇腳骨骼那的皮膚進行 softbody 就行了。