遊戲開發需要哪些數學知識?

遊戲開發需要哪些數學知識?

大家都知道,遊戲開發是一門技術活,需要各方面的知識儲備,那麼到底需要哪些數學知識呢?

首先,

數學是電子遊戲的基礎,它能讓遊戲按照設計師的意圖執行。請仔細想想,遊戲本質上是一個虛擬世界,數學可以為它設定規則。如果沒有數學,馬里奧可能漂浮在空中,《使命召喚》的子彈可能不會飛向敵人。

總體而言,遊戲開發需要運用大量的數學知識,包括代數、幾何學、微積分、線性代數、離散數學和應用數學等,運用的元素包括矩陣、增量時間、向量和標量操作等。

以“幾何學”為例,遊戲中的世界基本上由多邊形的空間組成,開發者可以建立具有數萬個多邊形的物件,然後透過渲染等方式讓它們看起來更真實。

為了方便渲染,遊戲中的物體很喜歡用“三角形”來製作,比如下圖左中的維京頭盔使用了

數千個三角形,下圖右是渲染後的樣子。使用三角形的原因是它們的形狀相對簡單,因此開發者無需為遊戲中每個物體編寫單獨的程式。

遊戲開發需要哪些數學知識?

遊戲中還經常使用“尋路”,比如你在《看門狗》中定位一個目標後,遊戲會立即為你規劃最短路線。要知道,計算機不能自主思考,它們需要確切的指令,這一切就依賴於“戴克斯特拉演算法”。

該演算法有很多變體,原始版本僅適用於找到2個頂點之間的最短路徑,後來可以固定一個頂點作為源結點,然後找到該頂點到其他結點的最短路徑,產生一個最短路徑樹。

因此,在《看門狗》、《荒野大鏢客2》等遊戲中,一旦你錯過某條路線規劃,遊戲會立即為你規劃全新的最短路線,就像手機導航軟體那樣。

遊戲開發需要哪些數學知識?

事實上,大型遊戲往往需要複雜的數學,但在一些簡單的遊戲中,可能只需要一部分,比如三角函式和代數。

即便如此,數學是開發遊戲的必要元素,如果沒有數學,遊戲將變得脫離現實。

當然,遊戲不等於現實,數學也能讓玩家做現實世界無法做到的事情,比如《刺客信條》的信仰之跳,《荒野大鏢客2》中的死神之眼。