id Tech 4引擎
id Tech 4引擎,以前称为毁灭战士3引擎,是個由id Software所開發的遊戲引擎,首度使用這個引擎的遊戲是電腦PC遊戲毀滅戰士3。這個遊戲引擎由約翰·卡馬克(John Carmack)領導設計,他同時也設計了《雷神之鎚》遊戲所使用的引擎。
《毀滅戰士3》中的id Tech 4引擎 | |
開發者 | id Software |
---|---|
初始版本 | 2004年8月3日 |
源代码库 | |
编程语言 | C++ |
系統平台 | Microsoft Windows、OS X、Linux、PlayStation 3、Xbox、Xbox 360 |
类型 | 遊戲引擎 |
许可协议 | GNU通用公共授權條款 |
网站 | github |
歷史
id Tech 4 引擎原先為id Tech 3的加強版,接著計畫要重新改寫渲染(Render)引擎,但仍然保留其它副系統的功能,例如檔案存取(File Access)和記憶體管理(Memory Management)。在渲染引擎完成後,他們決定要將引擎從C語言改寫為C++語言,最後導致整個引擎重寫。現在所看到的id Tech 4保有部份id Tech 3的程式碼,但大部分的程式碼皆已經被重寫。
id Tech 4 和他的舊引擎相同,最後將會開放原始碼,在2007年的QuakeCon,引擎開發者約翰·卡馬克(John Carmack)表示"I mean I won't commit to a date, but the Doom 3 stuff will be open source."(我不會說出一個確切的釋出日期,但是毀滅戰士3引擎最後會開放原始碼。)[1]
特色
id Tech 4 在id Tech 3的基礎下,又增加了許多功能,例如凸凹紋理映射(Bump Mapping)、法向映射(Normal Mapping)和Specular Highlighting。
遊戲引擎還可以進行動態像素打光(dynamic per-pixel lighting)。先前的3D引擎皆是依賴在事先運算好的打光特效或是產生好的光影地圖(Lightmap)。即使是使用了動態光影也只能少部分的影響物體的明亮度。而這項技術讓光影變得更加真實[2]。
MegaTexture技術
舊版本的毀滅戰士3引擎常被批評缺乏繪製大型戶外場景的功能,而MegaTexture技術解決了這個問題,透過繪製一個巨型的材質(32,768x32,768像素,新版本的MegaTexture可以支援更大的材質貼圖)覆蓋整個地形,並且儲存該地形的相關物理資料。這些物理資料可以告訴引擎你現在處在什麼環境,例如在石頭上行走和草地上行走的聲音將會有相當大的不同[3]。相對於現有使用「套用材質在地形上」的技術,MegaTexture也將讓地圖能夠呈現更精細的景觀。目前唯一使用MegaTexture技術的遊戲是深入敵後:雷神戰争。