游戲引擎是用于游戲研發的軟件,為開發者提供開發環境的同時,提供一系列的“函數庫(Libraries)”和“模塊化組件”。在早期,從0到 1編寫出“貪吃蛇”、“俄羅斯方塊”這樣的游戲相對來說較為容易,腳本構建、代碼編寫、UI 交互都較易完成,但隨著游戲畫面越來越豐富、游戲玩法越來越復雜,如果每開發一款新游戲都需要從 0 到 1 重新開始,投入的時間和成本都是巨大的。事實上,不同游戲開發過程的基礎環節和底層技術是可以不同程度復用、移植的,把這些技術標準化、模塊化、通用化,再整合成為一個綜合軟件就是游戲引擎,通俗的理解即為“一系列通用代碼的綜合體,一個已編寫好的游戲生產工作臺、一個游戲開發的模塊化基地”。
渲染引擎的強大與否直接決定著游戲的輸出質量。將制作好的模型內容要素導入進引擎后,渲染引擎可以把模型、動畫、光照、陰影等所有效果實時計算出來并展示在屏幕上,從而實現較高的擬真性。
物理引擎可以定義虛擬世界的運行規律,并使模型按照規律進行運動。第一,通過物理引擎可以設定一些參數來模擬真實世界,例如通過設定重力值和重力加速度,來決定角色能跳得多高、落得多快;第二,物理引擎的碰撞探測功能可以探測游戲中各物體的物理邊緣,當兩個 3D 模型撞在一起時,碰撞探測可以防止它們相互穿過,這就確保了當玩家撞在墻上的時候,既不會穿墻而過,也不會把墻撞倒。