2008年3月14日 星期五

※當滑鼠移到角色身上時讓角色的顏色不斷閃爍

※當滑鼠移到角色身上時讓角色的顏色不斷閃爍

流程圖:


運作詳述:

1. 使用2D Picking偵測滑鼠現在在什麼物件上頭,並且做回圈。

2. 第1個OP是Get Character,因為當角色的身體由許多部分組成時,就算滑鼠只偵測到其中一部分(譬如大腿),用這OP就能得知現在滑 鼠在哪個角色上頭。(如果你的角色只由唯一一個物件組成,就不需要這玩意兒)

3. 第2個OP是Get Name,用來取得物件的名字,取得的名稱是字串型態。

4. 把 Get Name取得的字串連到Test的第二個輸入參數,比較的方式用等於(Equal),記得要先把兩個做比較的參數改成字串類型,不然會比較不出來!!!

5. 使用Bezier Progression,再把底下第二個輸出參數連給Interpolator的第三個輸入參數,把Interpolator底下的輸出參數改成Color,打開Interpolator設定要從哪個顏色變換到哪個顏色,再把這Color連給Set Emissive的第二個輸入參數, Set Emissive的材質目標就是角色的材質。貝茲運算也要做迴圈喔!

這三個BB是說,在貝茲運算的期間,根據貝滋運算裡A和B之間的值(通常為0到1),還有曲線的斜率,獲得的值傳給Interpolator,Interpolator會根據這個值在兩個顏色之間做漸變,再把當前的值傳給Set Emissive用來設定角色材質的Emissive的顏色!

譬如:貝茲運算的運算時間是1秒鐘,A是0,B是1,Interpolator的起始顏色是白色,終止顏色是黑色,那麼在這一秒鐘之內,當0跑到1的期間,Interpolator也不斷計算從白色到黑色的漸層顏色,把這漸層顏色設給Set Emissive你就會看到一個漸變的色彩變化。

另外你也可以更改貝茲運算的時間、Interpolator起始顏色和終止顏色

最後,如果要讓顏色漸變回來(從黑變回白),就要再做一組Bezier Progression+Interpolator+Set Emissive,記得 Interpolator的顏色要改成黑色的起始顏色和白色的終止顏色 , 並且跟2D Picking做回圈

載自 http://blog.yam.com/virtools

沒有留言: