是否可以創建一個簡單的3D模型(例如在3DS MAX中)然後將其導入到Android?有沒有辦法將3D模型導入Android?
回答
這就是我到:
- 我使用谷歌的APIDemos爲出發點 - 有在那裏旋轉立方體,各由兩個數組定義:頂點和索引。
- 我已經用攪拌機建立自己的模型,並遠銷它作爲OFF文件 - 這是一個文本文件,列出了所有的頂點,然後在這些頂點(索引幾何)
- 然後我創建了一個簡單的C方面面臨++應用程序將其關閉並將其寫入兩個包含數組的XML(一個用於頂點,另一個用於索引)
- 這些XML文件然後被複制到res/values,這樣我可以將它們包含的數據分配給數組,如下所示:
int vertices[] = context.getResources().getIntArray(R.array.vertices);
- 我還需要在這裏手動更改要繪製的面數:
gl.glDrawElements(GL10.GL_TRIANGLES, 212*6, GL10.GL_UNSIGNED_SHORT, mIndexBuffer);
- 您可以在O之上找到該數字(本例中爲212) FF文件
在這裏,你可以找到我的項目頁面,它使用此解決方案:
對Android沒有特別的瞭解,但一般來說,您需要3DS Max中的一個腳本,它可以手動將模型中需要的格式寫出來。
至於Android是否存在,我不知道。
應該有可能。您可以將該文件作爲數據文件與您的程序一起使用(因此它將被壓入仿真器並打包安裝到實際設備上)。然後,您可以使用Android和GLES庫在Java中編寫模型加載器和查看器來顯示模型。
雖然這方面的具體資源可能有限。 3ds是一種專有格式,所以第三方裝載機的供應量較短,而且大部分是反向工程。其他格式(比如攪拌機或者奶昔)更加開放,你應該能夠很容易地在java中爲他們編寫加載程序的細節。
您可以將其導出爲ASE格式。來自ASE的 ,您可以手動或以編程方式將其轉換爲您的代碼。 您將需要頂點數組和麪向Android中的索引的頂點。 不要忘記你必須設置
gl.glFrontFace(GL10.GL_CCW);
因爲3ds Max軟件默認是逆時針方向。
你試過min3d爲Android?它支持3ds max,obj和md2模型。
關於這個lib的好教程:http://www.mat-d.com/site/tutorial-load-a-3d-obj-model-with-min3d-for-android/ – Evgeny 2012-09-26 22:34:33
你也可以做到這一點與三維目標轉換
該工具可以將3DS反對文本\ XML格式或C代碼。
Open GL的 'c' 的輸出的實施例:
glDisable(GL_TEXTURE_2D);
glEnable(GL_LIGHTING);
glEnable(GL_NORMALIZE);
GLfloat Material_1[] = { 0.498039f, 0.498039f, 0.498039f, 1.000000f };
glBegin(GL_TRIANGLES);
glMaterialfv(GL_FRONT,GL_DIFFUSE,Material_1
glNormal3d(0.452267,0.000000,0.891883);
glVertex3d(5.108326,1.737655,2.650969);
glVertex3d(9.124107,-0.002484,0.614596);
glVertex3d(9.124107,4.039649,0.614596);
glEnd();
或 'c' 的輸出
Point3 Object1_vertex[] = {
{5.108326,1.737655,2.650969},
{9.124107,-0.002484,0.614596},
{9.124107,4.039649,0.614596}};
long Object1_face[] = {
3,0,1,2,
3,3,4,5
3,6,3,5};
然後,可以通過Java代碼只需更換該代碼的部分。
P.s.此工具不是免費的,您只能在30天的試用期內使用它。但'c'代碼和xml轉換器在此期間是可用的。
- 1. three.js - 有沒有辦法從3D工作室導入文件?
- 2. Android導入3D模型
- 3. 有沒有辦法將模型導出到mysql workbench中的csv?
- 4. 有沒有辦法遍歷所有可以導入的模塊
- 5. 有沒有辦法將SourceGear Vault導入/導出到Git
- 6. 有沒有辦法在Android以外的OpenGL(如導入3D文件)使用3D圖形
- 7. Unity 3D |有沒有選擇導入3D模型並將其用於現有的播放器對象?
- 8. 有沒有辦法導入不帶字段的記錄類型?
- 9. 有沒有辦法在Android中導入調試密鑰庫?
- 10. 有沒有辦法將BigQuery表格的模式導出爲JSON?
- 11. 有沒有辦法將Visio 2013(.vsdx)圖導入IBM Blueworks Live?
- 12. 有沒有辦法將MySQL數據庫從Windows導入到Linux?
- 13. 有沒有辦法將wireshark http trace導入到java中?
- 14. 有沒有辦法將類導入到jsp頁面(jsp + eclipse + java)
- 15. 有沒有辦法將WMI數據導入到T-SQL中
- 16. 有沒有辦法在遷移過程中將JSON導入Realm?
- 17. 有沒有辦法將ec2實例導入vagrant?
- 18. 有沒有辦法將數據從word導入到R
- 19. 有沒有辦法將Flash SWF文件導入到Flex中?
- 20. 有沒有辦法將iCal文件導入FullCalendar?
- 21. 有沒有辦法將圖像從excel導入到PictureBox?
- 22. 有沒有辦法將SVN Windows存儲庫導入到Linux?
- 23. 有沒有辦法將項目自動導入Eclipse?
- 24. 有沒有辦法將HTML導入到JavaHelp中?
- 25. 有沒有辦法將Xcode鍵綁定導入到AppCode
- 26. 有沒有辦法將CouchDB導入或轉換爲MongoDB?
- 27. 有沒有辦法將顏色主題從R GUI導入Emacs?
- 28. xcode:有沒有辦法將數據/模式導入xcdatamodel文件/目錄?
- 29. iPhone OpenGl:導入3D模型
- 30. 有沒有辦法將Chrome瀏覽器編入Kiosk模式?
謝謝,這與我所做的非常接近 - 我用OFF和Blonder代替。 – 2009-04-12 17:38:08