OGRE(Object-Oriented Graphics Rendering Engine,即:面向對象圖形渲染引擎)是壹個用C++開發的面向場景、非常靈活的3D引擎,它旨在讓開發人員更容易、更直接地利用硬件加速的3D圖形系統開發應用。這個類庫隱藏了底層系統庫(如:Direct3D和OpenGL)的所有細節,提供了壹個基於世界對象和其他直觀類的接口
編輯本段OGRE引擎
壹、它能做什麽?
能做許多!妳可以參考特性頁中當前特性的更新列表。妳也可以通過網站上的截屏看到它是多麽棒。 三、OGRE是壹個遊戲引擎嗎? 不。OGRE能(實際上就是)被用於開發遊戲,但是OGRE被設計成只提供壹個世界級的圖形解決方案;對於其他的特性,如:音效、網絡、人工智能、碰撞檢測、物理等子系統,妳則需要將其整合到OGRE中,在這些子系統中,已有壹些成熟的庫可供選擇,在發布的SDK中,我們有壹個碰撞/物理的參考整合庫的例子。 那為什麽OGRE不是壹個遊戲引擎呢?原因之壹是:不是每壹個需要3D引擎的人都想用其來做遊戲,我們並沒有假設妳要將OGRE用於遊戲開發、模擬、商業應用、或是其他用途。其次,遊戲產業中的需求是相當廣泛的;以MMORPG(Massive Multiplayer Online Role Playing Game,即:大型多人在線角色扮演遊戲)為例,它比起FPS(First Person Shooting,即:第壹人稱射擊)類遊戲,需要不同類型的網絡庫,再如壹個格鬥類遊戲將需要不同類型的碰撞/物理系統。如果OGRE包括了所有這些特性,妳將被迫在壹系列內建的假定的需求下使用壹套有針對性的庫,那將不是壹個好的設計。相反,我們提供了壹個用於整合其他庫的非常友好的API。許多有經驗的遊戲開發者已經證明了這壹點,因為沒有內建的限制。這可能會使得那些僅僅只是想創建另壹種類型的FPS遊戲的新用戶感到更加沮喪,但是對於這些人來說,已經有大量現存的采用OGRE提供完整解決方案的綜合庫可供使用。然而,需要明白的是OGRE自身總是保持足夠地獨立和靈活,以致能夠與任何其他庫融為壹體。“與其他庫協作和整合,而不是實現他們”的原則是面向組件設計的標準原則。
二、為什麽建議使用OGRE?
其他引擎,雖然有些在技術上給人以很深的印象,然而由於缺乏內聚性設計和壹致性文檔致使它們不能被有效地使用。它們中的許多有很長的特性列表,但是由於缺乏清晰的思路將其整合在壹起而給人壹種像是用麻繩將這些技術捆綁到壹起的感覺。就像其他軟件系統壹樣,當它們變得更大的時候,也就是它們衰敗的時刻。大多數其他引擎也被設計為適用於某壹類特定遊戲(例如:FPS)。 OGRE不同。OGRE的設計理念是“以設計為主導”,而非“特性為主導”。被加進OGRE中每壹個特性都是經過深思熟慮,使其盡可能地優雅,並保證了文檔的壹致和詳盡,這樣讓人感覺這個特性與全局渾然壹體。品質勝於數量,因為數量可以隨後被增加,然而質量卻不可能在後面被添加。OGRE采用那些在商業級軟件中被反復試驗、學習和驗證過的完善的設計原則(在OGRE名字中所提及的面向對象只是這些實踐中的壹種,其他還有經常使用的設計模式)。我們有意識地保持核心開發團隊的小規模,團隊中的成員都是有多年開發經驗的軟件工程師。我們歡迎來自社區的補丁,但是在它們被接受之前,它們必須被嚴格地審核以求符合OGRE質量和內聚性的設計要求。 OGRE並沒有假定妳想做某種類型的遊戲或DEMO,它采用靈活的類層次允許妳為妳所喜歡的任何場景開發特定的場景管理插件。想要快速層次渲染室內場景嗎?很好,妳可以使用現有的BSP(Binary Space Partition,即:二叉空間分割)/PVS(Possible Visible Set,即:可見集)場景管理插件。那對於室外呢?妳同樣可以使用其他的場景管理插件。引擎的其余部分如以前壹樣繼續準確無誤地運行。 因此,壹個簡短的回答是:如果妳喜歡具有高質量、靈活性和清晰文檔的設計,那麽,請選擇OGRE,妳將知道它是有意義的。
三、它真的是免費的嗎?
OGRE的源代碼遵循LGPL(GNU Lesser General Public License,即:GNU 寬通用公***許可證[1]),這基本上意味著妳可以免費使用它,但是當妳對內核引擎做了修改並將發布的時候,妳必須將妳的源代碼壹同發布。但是妳所創建的應用或開發的新插件則不必發布其源代碼。全部協議條款請參考授權頁面。 -------------------------------------------- [1] 什麽是 GPL、LGPL 和 GFDL?它們和源代碼以及商業銷售之間的關系是什麽? GPL 是 GNU General Public License (GNU 通用公***許可證)的縮寫形式;LGPL 是 GNU Lesser General Public License (GNU 寬通用公***許可證)的縮寫形式,舊稱 GNU Library General Public License (GNU 庫通用公***許可證);GFDL 是 GNU Free Documentation License (GNU 自由文檔許可證)的縮寫形式。它們是自由軟件(Free Software)的通用版權認證協議,由自由軟件基金會(FSF)制定和發布。 基於 GPL 的軟件允許商業化銷售,但不允許封閉源代碼。 如果您對遵循 GPL 的軟件進行任何改動和/或再次開發並予以發布,則您的產品必須繼承 GPL 協議,不允許封閉源代碼。 基於 LGPL 的軟件也允許商業化銷售,但不允許封閉源代碼。 如果您對遵循 LGPL 的軟件進行任何改動和/或再次開發並予以發布,則您的產品必須繼承 LGPL 協議,不允許封閉源代碼。但是如果您的程序對遵循 LGPL 的軟件進行任何連接、調用而不是包含,則允許封閉源代碼。 [譯者註:本文由Groov0V翻譯,轉載請指明出處] ? OGRE能運行在linux和windows平臺下 LINUX下可以使用各發行版自帶的包管理器下載安裝,其次,3D模型素材可以使用blender繪制,安裝blender的ogre擴展包後導出即可在ogre中使用