請給我來創建Android應用的3D對象的方式我該如何在android應用程序中創建3D對象?
回答
的Android SDK有一個OPENGL API接口:)
除了Android SDK中有很多第三方的3D引擎,可以使創建3D圖形更容易。我用來創建一些導入的網格文件的簡單3D遊戲的一個是JPCT-AE:
的支持論壇是優秀的,開發者自己通常對響應在1-2天內論壇。 JPCT在其設計中以遊戲爲中心,因此可能會有更好的純3D圖形。有幾個示例代碼的教程可幫助您開始。
要繪製3D對象,您可能需要使用OpenGL ES API。在這裏,您有可能需要以加載實現你自己的3D對象的主要步驟:
從擴展GLSurfaceView.Renderer類,因此onDrawFrame你讓所有的設置了OpenGL API調用的GL環境,繪製3d對象。
將您的模型數據(頂點,法線,面等)加載到ByteBuffer中,以便稍後在OpenGL API調用中使用它們。
您可能需要計算轉換矩陣,如果要旋轉,移動或縮放的對象插入到3D世界(Matrix.rotateM)
計算視圖矩陣,所以你可以從任何角度呈現3D對象的視圖(Matrix.setLookAtM)。
您可能還需要以某種視角呈現對象(Matrix.frustumM),以便看起來更逼真。
一旦MVP矩陣(模型 - 視圖 - 矩陣)準備就緒,您就可以初始化OpenGL選項,例如視口和背面顏色。
創建一個新的OpenGL程序,該程序使用Vertex和Fragment Shader編譯,該Vertex和Fragment Shader將在GPU上執行以處理和渲染對象(此步驟僅執行一次)。
配置先前創建的OpenGL程序(glUseProgram)並配置輸入屬性(glEnableVertexAttribArray),以便可以像要繪製的頂點一樣推送模型的數據。
最後,通過繪製使所有對象(glDrawElements或glDrawArrays)的所有三角形或元素(點,線)繪製對象。
您可能還需要檢查這個GitHub的倉庫android-3D-model-viewer實現這一切變成一個開源演示,發表在play store爲好,可以呈現3D波* .obj文件。
- 1. Android:如何在BaseAdapter類中創建應用程序類對象
- 2. 我應該如何爲Android創建和使用對象?
- 3. 在Android中動態創建3D對象
- 4. 如何創建3D對象
- 5. 我想在android上創建3D應用程序 - opengl
- 6. 如何用3D對象創建UIView
- 7. 我該如何將這個動態創建的3D對象居中對齊呢?
- 8. 我該如何着手在Android中創建一個定義應用程序
- 9. 我應該在JSF應用程序中創建我的ConnectionPool?
- 10. 如何在UWP應用程序中創建COM對象? (C#)
- 11. 我將如何在android應用程序中創建此應用程序?
- 12. 如何在我的應用程序中創建android應用程序
- 13. 如何在Android應用程序中創建進度對話框?
- 14. 如何在Android應用程序中創建進度對話框
- 15. 我應該如何在CodeIgniter中構建我的應用程序?
- 16. 如何在我的android應用程序中創建數據庫?
- 17. 如何在Android應用程序中創建可觸摸的圖形對象?
- 18. 我應該如何創建可更新的應用程序?
- 19. 我應該如何創建體育積分應用程序?
- 20. 我應該在django 1.4中創建django應用程序?
- 21. 爲什麼應用程序對象在android上創建兩次?
- 22. 如何在Android中跟蹤3D對象
- 23. 應該在Coldfusion的應用程序/會話級別創建重用對象嗎?
- 24. 如何在android中創建3D文本
- 25. 如何在Android中創建3D動畫?
- 26. 如何在android中創建InetAddress對象?
- 27. 如何配置PhoneGap Android在Windows中創建android應用程序?
- 28. 在Android應用程序中創建GoogleProgressbar
- 29. 在Android中創建Web應用程序
- 30. 在Android中創建SMS應用程序?