2011-02-06 38 views
8

哪些層有助於實現這一效率?最好能使我能夠在早期層獲得下面列出的這三個組件,並在我去的時候對其餘的代碼進行編碼。用於OpenGL3.1的分層COLLADA加載程序+上下文

我正在寫一個COLLADA加載庫以用於我的圖形引擎。所以當然,一開始我就會注意到這似乎是一個相當大的任務。我現在打算編寫庫來使用不同的圖層。

我做不是還了解COLLADA。我猜想有可能是:

  • 幾何層
  • 着色層
  • Texure層

即使這些我不能確定的,可能需要不同種類的一部分分層方案。

附註,我很可能會使用irrXML或這interesting XML library我剛剛閱讀here閱讀文件,除非另有建議。

回答

15

您是否知道Open Asset Import Libraryhttp://assimp.sourceforge.net/)?它對Collada加載和目標在圖形引擎中的使用有相當好的支持。自己編寫collada加載程序不僅很困難,它還需要很長時間才能使其足夠穩定以便高效使用,這主要是因爲格式非常複雜(或者,因爲Assimp的Collada加載器的主要作者開玩笑地說:幾乎是圖靈 - 完整的),每個出口商都有自己奇怪的習慣。

如果您需要其他功能,您可以將工作建立在Assimp的Collada加載器上,並添加您所需的任何內容(BSD許可證,只要您將源代碼歸屬即可)。

注:我對該項目感興趣,因此並不是沒有偏見的。但是,我們與編寫我們自己的Collada裝載機制造可怕的經歷後,我只是覺得不得不警告你......

側面說明,我將最有可能使用irrXML

我們使用它。 如果你真的從頭開始,不要。使用一個DOM解析器,比如TinyXML。 Collada非常複雜,但定義非常明確,SAX解析器只是讓您的工作變得更加堅固,因爲您必須自行構建文檔樹(而且您*需要一個數據結構來模擬整個文檔 - Collada元素之間高度互連。爲了閱讀有意義的東西,需要解決各種交叉引用)。

+0

您能否建議將OpenAsset加載程序與支持所有功能的渲染引擎進行接口的適當圖層?我聽說過圖書館,但總是擔心我不知道的多線程/流式處理困難。如果你有任何的話我會很感激。 – 2011-02-18 18:54:36

相關問題