UNITY x Anima2D(四){補充:無縫背景循環}

前面三篇已經將Anima2D主要的功能介紹完畢,這邊就來補充一下製作這類動畫會常常用到的一些程式腳本的做法,例如視差無接縫循環背景..之類的,正好Anima2D裡面也有DEMO這些功能,本篇就簡單的介紹一下。

animat2d

我們可以打開TRex這個示範用的場景,然後看看有那些可以拿來應用的部分。

鏡頭跟隨

首先是,黏在攝影機上的這支Follow.cs顧名思義,它就是用來跟隨物件的。Target的欄位就是用來指定想跟隨的物件的,Offset用來設定偏移量也就是鏡頭相對於該物件的偏移值。

animation-20180607001


語法說明:

 

循環背景

這部分結構較複雜,總共有四層包在Jungle底下,而Jungle也使用了上面說的Follow.cs跟隨攝影機(且無偏移Offset皆為0),每個Offset負責控制這一條圖層在畫面上的高低位置(Y的值)和前後(Z的值),Foreground下就包含了要循環的圖片以及掛載了SpriteCycleParallax.cs和SpriteCycle.cs兩個腳本,用來設定位移速度和循環拼貼的圖片jungle_0,有的4張或5張(依照圖片尺寸配合畫面,避免穿幫的長度)。

animation-20180607003


SpriteCycle中只要設定好SpriteRenderers的張數Size: 4再將對應的圖片放入欄位,程式就會自動幫我們排開和拼貼,Offest設定0.5表示用這串圖的總長的一半當中心點。
SpriteCycleParallax一樣要設定一個相對應的位移對象,因此Target放進入攝影機,Factor相對速度因子也就是鏡頭往前移動時背景圖要往後的速度差(X的值)。

animation-20180607004


語法說明:

 


 

設定好這些參數後,只要控制人物的移動背景就會開始後退,不過要注意的是四層背景退後的速度是不同的,遠的退後的量會比較少,近的移動量就會比較高。

Leave a Reply