Cinemachine在2D橫版遊戲中的使用方法簡介
- Cinemachine的下載下傳及導入
- Cinemachine基礎
-
- 設定
- 簡單用法的一些重要的屬性(沒講到的暫時就保持預設設定,如果有補充,歡迎評論區留言)
- 問題來了
- Cinemachine進階
-
- 白區藍區紅區
- 進階用法的一些屬性(Body中)
Cinemachine的下載下傳及導入
-
下載下傳
現在的版本不再需要從assets store中下載下傳了,直接從package manager中就能找到Cinemachine這個插件。初次找到,請點選Download下載下傳!
- 建立Cinemachine對象
我們選擇建立虛拟錄影機Virtual Camera後,便會出現一個名為CM vcam1
的虛拟錄影機。
Cinemachine基礎
設定
- 取消主錄影機上的Cinemachine Brain的元件。
- 添加第二個錄影機。
- 在第二個錄影機上添加Cinemachine Brain元件。(添加了這個元件後這個錄影機就沒法通過拖拽它移動了,隻有移動CM vcam1才能移動錄影機,也就是說,他們已經綁定了)
- 點選CM vcam1,将player拖入右側的follow欄中,便能實作錄影機跟随玩家啦。
簡單用法的一些重要的屬性(沒講到的暫時就保持預設設定,如果有補充,歡迎評論區留言)
- Follow : 跟随那個目标
- Look at : 看向哪個目标(3D遊戲中經常使用,由于是2D遊戲,不需要控制旋轉,是以預設None就行了)
- Vertical VOF(Lens中):該值越大則錄影機距離2D平面越遠,game視圖中看到的地圖,玩家等越小。該值越小則錄影機越近,但太近會看到非常模糊的一個個像素。
- Body中,此時Body為transposer。
- X/Y/Z damping () : X/Y/Z方向阻尼。該值越小,則錄影機跟随越快。該值越大,錄影機跟随越慢。
- Yaw damping:與錄影機的旋轉跟随相關,但由于這是2D遊戲,沒有旋轉,保持不變即可。
問題來了
但是一般橫闆2D遊戲中并不是錄影機完全跟随玩家,而是玩家到達一定位置後,錄影機才會跟随。并且如果我不停的左右左右,便會出現螢幕一直在晃動的鬼畜情況。
Cinemachine進階
将Body選擇為Framing Transposer,即按幀計算的移動方式。此時再選中CM vcam1則會發現,錄影機的中心變成了一個黃點。而在黃點上有一橫一豎兩條藍線,也就是下面所說的死線。以及紅區和藍區兩部分(改變死線還會出現白區)
白區藍區紅區
- 白區:跟随對象在白區内,錄影機不跟随。
- 藍區: 跟随對象移動至藍區中,錄影機就會跟随。
- 紅區: 跟随對象高速移動時,會由于錄影機沒有及時跟随上目标而丢失目标不在跟随。此時紅區的作用就是,當跟随目标觸及紅線時,錄影機會立即跟随目标而不是緩慢跟随。
進階用法的一些屬性(Body中)
- Lookahead Time: 通過計算物體的速度和加速度估計跟随對象該值的時間後,會運動到什麼地方,将這個地方設定為黃點的位置。這樣錄影機就擁有了一定的預判性。當跟随對象向左移動時,則錄影機視圖看左多一點;當跟随對象向右移動時,則錄影機視圖看右多一點。
- Lookahead Smoothing:預測的平滑速度。該值為0時,黃點會直接鎖定到預測位置。該值增大,黃點會以緩慢移動的形式移動至預測位置。
- Lookahead Ignore Y:但是第一個功能的預測在Y軸上會導緻鏡頭上下晃動,勾選這個選項後,則忽略Y軸的預測。
- X/Y/Z damping : 與Transposer中的功能一樣。
- Screen X/Y : 錄影機的位置。預設為0.5,即中心位置。Screen X變大則向右移動,Screen Y變大則向上移動。
- Dead Zone Width : 調整豎着的藍線,向左右兩邊分開,調整白區寬度。該值增大則白區寬度增加。
- Dead Zone Height :調整橫着的藍線,向上下兩邊分開,調整白區高度。該值增大則白區高度增加
- Soft Zone Width :調整豎着的紅線,向左右兩邊分開,調整藍區和紅區寬度。該值增大則則藍區寬度增加,紅區寬度減少。(不要迅速減小,當紅線退至藍線繼續減小時,會推動藍線移動。當該值為0時,則直接鎖定跟随對象,于是錄影機一直快速跟随玩家。)
- Soft Zone Height :調整豎着的紅線,向上下兩邊分開,調整藍區和紅區高度。該值增大則則藍區高度增加,紅區高度減少。(不要迅速減小,當紅線退至藍線繼續減小時,會推動藍線移動。當該值為0時,則直接鎖定跟随對象,于是錄影機一直快速跟随玩家。)