2012-08-29 126 views
2

我有一些3D對象存儲在3D編輯器應用程序特定(Blender/Solid/3DS)文件格式中,導出到帶有PNG/JPG文件中可選紋理的OBJ + MTL文件。加載OpenGL ES渲染的3D對象和紋理

我想在手機上的OpenGL ES應用程序中加載這些對象(今天適用於Android,近期適用於iOS)。我不想寫我自己的OBJ + MTL(或任何其他3D格式)解析器。所以我想使用一些3D引擎來支持加載3D模型(從OBJ + MTL或從我的3D編輯器導出到3D引擎特定的頭文件/資源​​文件)來實現這一點。我有一些Min3D框架的經驗,但它加載文件時有點bug(也不會加載材質顏色,只有紋理圖像),不支持OpenGL ES 2.0,並且顯然不能運行iOS版。

我見過C頭文件(http://iphonedevelopment.blogspot.com/2009/06/using-3d-models-from-blender-in-opengl.html)的流行攪拌機導出腳本,但我相信它不支持材質顏色導出(當紋理圖像未使用時)。

最近我開始研究Unity 3D,但它似乎比我需要的要多得多。我需要支付我不會使用的功能(動畫,遊戲特定功能等),還需要將其與我的移動應用程序的其他部分集成。

你會推薦什麼3D引擎/框架?

總結要求:

  • 能夠加載從OBJ + MTL(+ PNG/JPG)3D模型+紋理或(使用插件?)從3D編輯器應用程序中導出,與有色物質支持無紋理
  • 支持Android(iOS版額外支持是非常歡迎)
  • 支持OpenGL ES 2.0
  • 免費/便宜
  • 本地代碼易於集成(Java是Android的首選)

回答

2

OpenSceneGraph支持加載模型類型。我還沒有嘗試過使用它構建任何移動應用程序,但是在論壇/郵件列表上有很多關於這樣做的聊天和一些教程,適用於iOS和Android。開源。

http://www.openscenegraph.com

http://forum.openscenegraph.org/viewtopic.php?t=10076

編輯:作爲一個方面說明,如果你想要做的就是查看您的模型,你不介意將它們存儲在雲中,你可以將它們上傳到SketchFab:

http://sketchfab.com/faq

,並查看與Firefox移動。每當iOS瀏覽器支持完整的webGL時,都會支持iOS。

他們在幕後使用osg來讀取模型,我認爲OSGjs是用於前端的。

+0

https://github.com/andresoviedo/android-3D-model-viewer – Qamar

+0

論壇鏈接已經死機 – Zoe

+0

這不適合我,但以防萬一我只是要求webarchive克隆它:https:// web。 archive.org/web/20170731181502/http://forum.openscenegraph。org/viewtopic.php?t = 10076無論如何,這個答案是5歲,我很驚訝任何鏈接的工作! –