OGRE開源遊戲引擎

2021-09-07 23:18:19 字數 1311 閱讀 7339

ogre引擎  ogre官方**:

關於ogre(翻譯自index.php?option=com_content&task=view&id=19&itemid=79)

一、什麼是ogre?

ogre(object-oriented graphics rendering engine,即:物件導向圖形渲染引擎)是乙個用c++開發的面向場景、非常靈活的3d引擎,它旨在讓開發人員更容易、更直接地利用硬體加速的3d圖形系統開發應用。這個類庫隱藏了底層系統庫(如:direct3d和opengl)的所有細節,提供了乙個基於世界物件和其他直觀類的介面。

[譯者注:ogre在英文中意為:食人魔鬼, 怪物, 象鬼的人,故其logo是乙個怪物頭]

二、它能做什麼?

三、ogre是乙個遊戲引擎嗎?

不。ogre能(實際上就是)被用於開發遊戲,但是ogre被設計成只提供乙個世界級的圖形解決方案;對於其他的特性,如:音效、網路、人工智慧、碰撞檢測、物理等子系統,你則需要將其整合到ogre中,在這些子系統中,已有一些成熟的庫可供選擇,在發布的sdk中,我們有乙個碰撞/物理的參考整合庫的例子。

四、為什麼建議使用ogre?

其他引擎,雖然有些在技術上給人以很深的印象,然而由於缺乏內聚性設計和一致性文件致使它們不能被有效地使用。它們中的許多有很長的特性列表,但是由於缺乏清晰的思路將其整合在一起而給人一種像是用麻繩將這些技術**到一起的感覺。就像其他軟體系統一樣,當它們變得更大的時候,也就是它們衰敗的時刻。大多數其他引擎也被設計為適用於某一類特定遊戲(例如:fps)。

ogre不同。ogre的設計理念是「以設計為主導」,而非「特性為主導」。被加進ogre中每乙個特性都是經過深思熟慮,使其盡可能地優雅,並保證了文件的一致和詳盡,這樣讓人感覺這個特性與全域性渾然一體。品質勝於數量,因為數量可以隨後被增加,然而質量卻不可能在後面被新增。ogre採用那些在商業級軟體中被反覆試驗、學習和驗證過的完善的設計原則(在ogre名字中所提及的物件導向只是這些實踐中的一種,其他還有經常使用的設計模式)。我們有意識地保持核心開發團隊的小規模,團隊中的成員都是有多年開發經驗的軟體工程師。我們歡迎來自社群的補丁,但是在它們被接受之前,它們必須被嚴格地審核以求符合ogre質量和內聚性的設計要求。

因此,乙個簡短的回答是:如果你喜歡具有高質量、靈活性和清晰文件的設計,那麼,請選擇ogre,你將知道它是有意義的。

五、它真的是免費的嗎?

ogre的源**遵循lgpl(gnu lesser general public license,即:gnu 寬通用公共許可證[1]),這基本上意味著你可以免費使用它,但是當你對核心引擎做了修改並將發布的時候,你必須將你的源**一同發布。但是你所建立的應用或開發的新外掛程式則不必發布其源**。全部協議條款請參考授權頁面。

Ogre遊戲引擎滑鼠選取物體演示

ogre遊戲引擎滑鼠選取物體演示 韓舉 喝水不上火 由於ogre推出了最新的release1版,為了適應該版本所以延遲了幾天,不過還好問題解決了,主要是 gui方面的 ogre是開源的圖形渲染引擎見http ogre3d.該引擎很有名,在網上可以找到很多相關的資訊。言歸正傳,這個演示程式演示了在og...

開源遊戲引擎KlayGE簡介

klayge是乙個開放源 跨平台的遊戲引擎。它是用c 開發的,並使用python作指令碼語言。klayge在gpl協議下發行。klayge是用於下一代遊戲的乙個完整的遊戲開發框架。它是api無關的外掛程式是結構,提供了很多先進技術,並確有無限的擴充套件性。klayge的設計目的非常明確,用最先進的技...

Ogre引擎原始碼 UTFString

繼續上次ogre的string篇未完的乙個檔案解讀,unicode string實現類utfstring。該部分標頭檔案 ogreutfstring.h 雖然只有乙個檔案,但實現內容很多,不具體列出所有實現細節,盡量理清主要的實現思路,學習一下對unicode字元不同編碼的轉換。關於unicode編...