https://blog.csdn.net/caoshangpa/article/details/73610662
在國內外,業界盛傳有十大開源游戲引擎,分別是OGRE、Irrlicht、Panda3D、Crystal Space、jME、Blender Game Engine、Reality Factory、The Nebula Device 2、RealmForge、OpenScene- Graph。我們對這十款開源游戲引擎深入進行分析。
(1) OGRE是面向對象圖形渲染引擎(Object-Oriented Graphics Rendering Engine)的縮寫,采用C++開發,以MIT許可證發布,可以在Windows、Linux、Mac上運行。OGRE自己也說明本身不是游戲引擎。
其主要特征如下:
面向對象,插件擴展架構,具有文檔支持。
支持腳本。可以通過腳本管理材質資產並進行多路渲染。
支持物理碰撞檢測。
支持頂點燈光、像素燈光、燈光映射。
支持陰影映射、三維陰影。
支持多紋理、凹凸貼圖、多重材質貼圖、立體投影。
支持頂點、像素、高級着色。
支持場景管理,具有多種數據結構。
支持逆向運動動畫、骨架動畫、變形動畫、混合動畫及姿態動畫。
支持網格加載、皮膚、漸進網格。
支持環境映射、鏡頭眩光、公告牌、粒子、運動模糊、天空、水、霧、絲帶軌跡、透明對象。
支持XML文件轉換。
引擎特性全面( ),穩定性好( ),支持全面( ),不容易上手和使用( )。
(2) Irrlicht采用C++開發,以zlib/libpng許可證發布,可以在Windows、Linux、Mac、Solaris、FreeBSD、Xbox上運行。Irrlicht自己也說明本身不是游戲引擎。
其主要特征如下:
面向對象,插件擴展架構,具有文檔支持。
支持內建場景、燈光、GUI編輯器。
支持物理碰撞檢測。
支持頂點燈光、像素燈光、燈光映射。
支持陰影映射、三維陰影、模板緩沖區陰影。
支持多紋理、凹凸貼圖、多重材質貼圖、立體投影。
支持頂點、像素、高級着色。
支持場景管理,具有多種數據結構,允許無縫集成室內及室外場景。
支持骨架動畫、變形動畫及混合動畫。
支持網格加載。
支持環境映射、公告牌、粒子、天空、水、霧。
支持地形渲染。
引擎特性全面( ),穩定性好( ),支持全面( ),容易上手和使用( )。
(3) Panda3D采用C++和Python開發,以BSD許可證發布,可以在Windows、Linux、Mac、SunOS上使用。Panda3D是一個完整的游戲引擎。
其主要特征如下:
面向對象,腳本擴展架構,具有文檔支持。
支持內建場景、粒子、關卡編輯器。
支持物理碰撞檢測,可以用於運動物體。
支持頂點燈光、像素燈光、燈光映射。
支持陰影映射、三維陰影、模板緩沖區陰影。
支持多紋理、凹凸貼圖、多重材質貼圖、立體投影。
支持頂點、像素、高級着色。
支持場景管理,具有多種數據結構。
支持骨架動畫。
支持網格加載及皮膚。
支持環境映射、公告牌、粒子、霧、火。
支持地形渲染。
支持“客戶端/服務器”網絡模式。
支持2D、3D和流音效。
支持有限狀態機、人工智能。
引擎特性全面( ),穩定性很好( ),支持很全面( ),很容易上手和使用( )。
(4) Crystal Space采用C++開發,以LGPL許可證發布,可以在Windows、Linux、Mac上使用。Crystal Space是一個完整的游戲引擎。
其主要特征如下:
面向對象,組件擴展架構,具有文檔支持。
支持內建場景、燈光、GUI編輯器。
支持物理碰撞檢測,可以用於運動物體。
支持頂點燈光、燈光映射。
支持陰影映射、三維陰影。
支持多紋理、多重材質貼圖。
支持頂點、像素着色。
支持場景管理,具有多種數據結構。
支持骨架動畫、幀動畫、變形動畫。
支持網格加載、漸進網格。
支持環境映射、鏡頭眩光、公告牌、粒子、天空、鏡像。
支持地形渲染。
支持2D、3D音效。
支持游戲世界管理。
通過有限狀態機、行為樹、神經網絡、遺傳算法支持人工智能。
引擎特性很全面( ),穩定性好( ),支持很全面( ),不容易上手和使用( )。
(5) jME是jMonkey Engine的縮寫,采用Java開發,以BSD許可證發布,可以在Windows、Linux、Mac上使用。JME的目標是提供一個Java語言3D游戲引擎,但業界目前也有人認為jME還不是一個游戲引擎。
其主要特征如下:
面向對象,插件擴展架構,具有文檔支持。
支持內建游戲世界編輯器。
支持物理碰撞檢測。
支持頂點燈光、燈光映射。
支持三維陰影。
支持多紋理、多重材質貼圖。
支持頂點、像素、高級着色。
支持場景管理,具有多種數據結構。
支持骨架動畫、幀動畫。
支持網格加載及皮膚。
支持環境映射、鏡頭眩光、公告牌、粒子、天空、水、火、爆炸、霧。
支持地形渲染。
支持3D音效。
引擎特性全面( ),穩定性好( ),支持很全面( ),容易上手和使用( )。
(6) Blender游戲引擎是采用C++和Python開發,以GPL許可證發布,可以在Windows、Linux、Mac、Solaris、FreeBSD、Irix上使用。Blender是一個完整的游戲引擎。
其主要特征如下:
面向對象,插件及腳本擴展架構,具有文檔支持。
支持內建工作流、GUI、數據庫、角色等編輯器。
支持物理碰撞檢測,可以用於運動物體。
支持頂點燈光、像素燈光。
支持陰影映射。
支持多紋理、凹凸貼圖。
支持頂點、像素着色。
支持場景管理,具有多種數據結構。
支持逆向運動動畫、幀動畫。
支持網格加載及皮膚。
支持環境映射、粒子、天空、水、霧。
支持地形渲染。
支持“客戶端/服務器”網絡模式。
支持2D及3D音效。
通過腳本方式支持人工智能。
引擎特性基本全面( ),穩定性基本不錯( ),支持全面( ),不容易上手和使用( )。
(7) Reality Factory是采用C++開發,以MIT許可證發布,可以在Windows上使用。Reality Factory自稱游戲無需編程。
其主要特征如下:
面向對象,腳本擴展架構,具有文檔支持。
支持內建幾何形體編輯器。
支持物理碰撞檢測。
支持頂點燈光、像素燈光、輻射燈光、三維燈光。
支持陰影映射。
支持多紋理、凹凸貼圖、多重材質貼圖、投影。
支持頂點、像素着色。
支持場景管理,具有多種數據結構。
支持骨架動畫、幀動畫及混合動畫。
支持網格加載及皮膚。
支持環境映射、公告牌、粒子、天空、水、火、爆炸、霧、貼花、天氣、鏡像。
支持地形渲染。
支持“客戶端/服務器”網絡模式。
支持3D及流音效。
通過路徑查找、決策及腳本方式支持人工智能。
引擎特性基本全面( ),穩定性基本不錯( ),支持基本全面( ),容易上手和使用( )。
(8) The Nebula Device 2是采用C++開發,以MIT許可證發布,可以在Windows、Linux上使用。Nebula Device是一個完整的游戲引擎。
其主要特征如下:
面向對象,插件及腳本擴展架構,具有文檔支持。
支持內建幾何形體編輯器。
支持物理碰撞檢測。
支持頂點燈光、像素燈光、燈光映射、光澤映射。
支持陰影映射。
支持多紋理、凹凸貼圖、多重材質貼圖、投影。
支持頂點、像素、高級着色。
支持場景管理,具有多種數據結構。
支持骨架動畫、幀動畫、變形動畫及混合動畫。
支持網格加載及皮膚。
支持環境映射、鏡頭眩光、公告牌、粒子、天空。
支持地形渲染。
支持“客戶端/服務器”、P2P網絡模式。
支持2D、3D及流音效。
通過腳本方式支持人工智能。
引擎特性全面( ),穩定性好( ),支持基本全面( ),不容易上手和使用( )。
(9) RealmForge是采用C#在OGRE上開發,以LGPL許可證發布,可以在Windows、Linux、Mac、Solaris、HP/UX、FreeBSD上使用。RealmForge是一個完整的游戲引擎,現在已經轉入商業化運作。
其主要特征如下:
面向對象,插件及腳本擴展架構,具有文檔支持。
支持內建游戲編輯器。
支持物理碰撞檢測,可以用於運動物體。
支持頂點燈光、像素燈光、燈光映射。
支持陰影映射、投影面、立體投影。
支持多紋理、凹凸貼圖、多重材質貼圖、投影。
支持頂點、像素、高級着色。
支持場景管理,具有多種數據結構。
支持骨架動畫、幀動畫、面部動畫及混合動畫。
支持網格加載、皮膚及漸進網格。
支持環境映射、鏡頭眩光、公告牌、粒子、天空、水、火、爆炸、貼花、霧、天氣、鏡像。
支持地形渲染。
支持“客戶端/服務器”、P2P網絡、主控服務器模式。
支持3D及流音效。
通過路徑查找、決策、優先狀態機、腳本、神經網絡等方式支持人工智能。
引擎特性全面( ),穩定性基本不錯( ),支持基本全面( ),不容易上手和使用( )。
(10) OpenSceneGraph是采用C++開發,以LGPL許可證發布,可以在Windows、Linux、Mac、Solaris、SunOS、FreeBSD、Irix、Playstation上使用。OpenSceneGraph是一個完整的游戲引擎。
其主要特征如下:
面向對象,插件及腳本擴展架構,具有文檔支持。
支持內建場景編輯器。
支持物理碰撞檢測。
支持頂點燈光、各向異性燈光。
支持投影面、立體投影。
支持多紋理、多重材質貼圖、投影。
支持頂點、像素、高級着色。
支持場景管理,具有多種數據結構。
支持骨架動畫、幀動畫及混合動畫。
支持網格加載及皮膚。
支持環境映射、公告牌、粒子、鏡像。
支持地形渲染。
支持“客戶端/服務器”、P2P網絡、主控服務器模式。
支持2D、3D及流音效。
引擎特性全面( ),穩定性好( ),支持還可以( ),上手和使用比較難( )。
一般說來,選擇開源游戲引擎一定需要獲取源碼、好的文檔及開放式支持。穩定性對於商業化運作是一個雙刃劍,利於產品的開發運營,但需要有效引入新的游戲技術革新。引擎涵蓋特性是一個積累過程,可以不斷添加和改進。上手和使用性也反映了設計開發游戲引擎的團隊的內在價值取向——以技術為主,還是以應用為主。
游戲開發商都希望研制、運營一個萬眾矚目的游戲產品,但是,使用按照不同許可證發布的游戲引擎開發的游戲產品需要遵循相應的知識產權法規。因此,游戲引擎的軟件許可證成為選擇時的一個極其重要的考慮因素。