Unity C# | CharacterController 概述

更新 發佈閱讀 4 分鐘

一、前言

  這篇文章將會講述角色控制器(CharacterController )的基本概述,並且分析其中可能的應用方式,最後簡單講述它的使用方式心得。

二、角色控制器(CharacterController)

  角色控制器是一個很常聽到的名詞,有許多人會好奇既然已經有物理系統與剛體組件,那為什麼要使用角色控制器。在這一次的專題製作中,我們使用的第三人稱控制包,它就是使用角色控制器。

1. 無剛體(Rigidbody)

  它最主要的特色就是為了不使用  Rigidbody 也可以控制玩家的移動,它在使用方式上很貼近初學者直接在每一個影格控制物件座標,不過直接控制座標會有不同程式腳本彼此衝突的問題。

  不使用剛體系統有好處也有壞處,其中之一就是不能使用剛體系統常見的給予推力或調整速度這種容易理解的作法,但也因此不會模擬物理,在移動的過程中一定都是自己程式碼撰寫的內容。

2. 自帶地面判斷與膠囊碰撞體

  它跟物理系統比較不一樣的地方在於,它自己就攜帶了地面判斷,因為本質上來說它就是為了角色控制而產生的機制,而物理系統則不一定。

  它自己攜帶了膠囊碰撞體,角色控制器有不少參數就是在設定這個膠囊碰撞體,包含中心、高度、半徑等內容都是在控制它。

3. 只有唯一移動控制

  因為角色控制器的誕生標榜著容易控制與使用的角色控制方式,因此它全身上下只有一個控制移動的方式。前面有談到它的移動方式近似於初學者隨著影格控制座標的方式,而這就是它的移動方式。

  我在使用的時候有感受到,使用角色控制器應該不會出現程式腳本彼此互相衝突的問題,因為都是使用角色控制器進行移動,因此它應該可以讓每一個移動參數合在一起運作,避免衝突。

三、應用方向

  角色控制器有很明確的新手導向與應用方向,這邊簡單介紹我自己分析的幾項角色控制器的應用方向。

1. 不用複雜物理系統的遊戲

  首先最基本的結論,就是如果遊戲不使用物理系統,那就很適合使用角色控制器來運行。如果不希望角色在移動的過程中,遇到超乎想像的衝擊或奇怪的移動力道,那就使用角色控制器吧!

2. 需要自訂很多奇幻移動的遊戲

  在大多數的奇幻遊戲中,角色通常會使用很多匪夷所思的移動,例如超級無敵長的跳躍時間、滯留在空中、穿梭在敵人之間等,那角色控制器很適合這種遊戲的製作,因為這些控制非常不物理。

  除了避免在連招的過程中遇到奇特的外力,把所有的玩家控制都掌握在可操控的範圍內,角色控制器可以保證自己寫的都是沒問題的項目。

3. 非現實的遊戲

  因為遊戲沒有任何物理系統,自然而然就沒有重力系統,所有非現實的遊戲都有一個很重要的共通點,它們的重力通常變來變去的,無論是遊戲世界在不同維度改變、空間、時間,重力改變都是在實作上的重要手段。

  在非現實的遊戲裡面,這種控制最好玩全交給程式員掌控,而不能使用任何內建的系統,因此角色控制是最適合的工具,否則玩家可能會突然看到自己明明已經在太空了,卻在某一刻被重力影響。

四、使用方式

  非常簡單的使用方式。

1. 移動

CharacterController.Move

public CollisionFlags Move(Vector3 motion);

  它的移動方式非常簡單,就是一個三維座標,有趣的事情在於移動的距離好像是一個小數就能移動很多,我有在網路上找到教學,似乎直接把玩家輸入綁進去角色控制器就能模擬移動了,非常方便。

2. 簡易移動

CharacterController.SimpleMove

public bool SimpleMove(Vector3 speed);

  它的移動方式還包含了重力,並且不用特別撰寫 Time.deltatime,直接寫上想要的速度就可以了,官方在文檔中有寫每一幀只有簡單移動或移動就可以了。 

五、後記

  這篇文章就分享到這邊,角色控制器是真的簡單很多,但是我還是比較喜歡剛體的運動,如果未來我把數學運算與旋轉方向使用精熟了,可能我也會喜歡上角色控制器吧。

留言
avatar-img
瓶裝雪的沙龍
117會員
247內容數
你好,我是瓶裝雪!我是一名遊戲設計師!
瓶裝雪的沙龍的其他內容
2024/09/22
魔火術師是第三人稱動作射擊遊戲,屬於專題畢業製作,在畢業組成新的團隊後優化並上架。
Thumbnail
2024/09/22
魔火術師是第三人稱動作射擊遊戲,屬於專題畢業製作,在畢業組成新的團隊後優化並上架。
Thumbnail
2024/01/26
這篇文章將會講述虛擬(virtual)與覆蓋(override)的簡易使用方式。
Thumbnail
2024/01/26
這篇文章將會講述虛擬(virtual)與覆蓋(override)的簡易使用方式。
Thumbnail
2023/12/29
講述遊戲設計從新手到專業的發展方向。
Thumbnail
2023/12/29
講述遊戲設計從新手到專業的發展方向。
Thumbnail
看更多
你可能也想看
Thumbnail
債券投資,不只是高資產族群的遊戲 在傳統的投資觀念中,海外債券(Overseas Bonds)常被貼上「高資產族群專屬」的標籤。過去動輒 1 萬甚至 10 萬美元的最低申購門檻,讓許多想尋求穩定配息的小資族望而卻步。 然而,在股市波動劇烈的環境下,尋求穩定的美元現金流與被動收入成為許多投資人
Thumbnail
債券投資,不只是高資產族群的遊戲 在傳統的投資觀念中,海外債券(Overseas Bonds)常被貼上「高資產族群專屬」的標籤。過去動輒 1 萬甚至 10 萬美元的最低申購門檻,讓許多想尋求穩定配息的小資族望而卻步。 然而,在股市波動劇烈的環境下,尋求穩定的美元現金流與被動收入成為許多投資人
Thumbnail
透過川普的近期債券交易揭露,探討債券作為資產配置中「穩定磐石」的重要性。文章分析降息對債券的潛在影響,以及股神巴菲特的操作策略。並介紹玉山證券「小額債」平臺,如何讓小資族也能低門檻參與海外債券市場,實現「低門檻、低波動、固定收益」的務實投資方式。
Thumbnail
透過川普的近期債券交易揭露,探討債券作為資產配置中「穩定磐石」的重要性。文章分析降息對債券的潛在影響,以及股神巴菲特的操作策略。並介紹玉山證券「小額債」平臺,如何讓小資族也能低門檻參與海外債券市場,實現「低門檻、低波動、固定收益」的務實投資方式。
Thumbnail
解析「債券」如何成為資產配置中的穩定錨,提供低風險高回報的投資選項。 藉由玉山證券的低門檻債券服務,投資者可輕鬆入手,平衡風險並穩定財務。
Thumbnail
解析「債券」如何成為資產配置中的穩定錨,提供低風險高回報的投資選項。 藉由玉山證券的低門檻債券服務,投資者可輕鬆入手,平衡風險並穩定財務。
Thumbnail
相較於波動較大的股票,債券能提供固定現金流,而玉山證券推出的小額債,更以1000 美元的低門檻,讓學生與新手也能參與全球優質企業債投資。玉山E-Trader平台即時報價、條件式篩選與清楚的交易流程等特色,大幅降低投資難度,對於希望分散風險、建立穩定現金流的人來說,玉山小額債是一個值得嘗試的理財起點。
Thumbnail
相較於波動較大的股票,債券能提供固定現金流,而玉山證券推出的小額債,更以1000 美元的低門檻,讓學生與新手也能參與全球優質企業債投資。玉山E-Trader平台即時報價、條件式篩選與清楚的交易流程等特色,大幅降低投資難度,對於希望分散風險、建立穩定現金流的人來說,玉山小額債是一個值得嘗試的理財起點。
Thumbnail
這篇文章將會介紹第三人稱遊戲設計中,關於角色的建模與動畫的設計與製作。
Thumbnail
這篇文章將會介紹第三人稱遊戲設計中,關於角色的建模與動畫的設計與製作。
Thumbnail
這篇文章將會講述設計與製作一款第三人稱控制器所需要的工具、要素之概述。
Thumbnail
這篇文章將會講述設計與製作一款第三人稱控制器所需要的工具、要素之概述。
Thumbnail
這篇文章將會分享最近學習到關於遊戲機制與關卡設計的觀念。
Thumbnail
這篇文章將會分享最近學習到關於遊戲機制與關卡設計的觀念。
Thumbnail
這篇文章將會分享我用 Time line 製作的 Unity 部份概念動畫,並講述其中要呈現的特點與打擊感的分析。
Thumbnail
這篇文章將會分享我用 Time line 製作的 Unity 部份概念動畫,並講述其中要呈現的特點與打擊感的分析。
Thumbnail
在數創整合與作品集結束以後加速完工的專題作品,這篇文章將會講述遊戲類型概述與技術層面的成長。
Thumbnail
在數創整合與作品集結束以後加速完工的專題作品,這篇文章將會講述遊戲類型概述與技術層面的成長。
Thumbnail
這篇文章將會介紹 UGUI ,以及如何使用程式碼控制 UGUI 的座標。
Thumbnail
這篇文章將會介紹 UGUI ,以及如何使用程式碼控制 UGUI 的座標。
Thumbnail
這篇文章將會講述玩家行動種類及發想機制的方法。
Thumbnail
這篇文章將會講述玩家行動種類及發想機制的方法。
Thumbnail
這篇文章會介紹圖層及相關應用,並藉由範例流程直白理解圖層的功用。
Thumbnail
這篇文章會介紹圖層及相關應用,並藉由範例流程直白理解圖層的功用。
追蹤感興趣的內容從 Google News 追蹤更多 vocus 的最新精選內容追蹤 Google News