2011-05-19 46 views
3

這有點作弊,因爲標題中實際存在兩個問題。Opengl ES如何在運行時導入3D模型和貼圖紋理

關於如何導入3D模型我想我可以通過這一點的帳戶。

但是,我的問題是:我可以在運行時將紋理映射到導入的模型嗎?

是不是叫做UV-Mapping?

三維模型基本上是一個球體,使用OpenGL ES生成球體更好嗎?

但是,我如何映射紋理呢?

對不起,大多數的基礎知識。

+0

我不能回答,我什麼都不知道iPhone上的工具,但你想要的是紫外線映射,是的。至於「一代」,我不知道它是否「更好」,但如果你真的擁有一個領域,實現起來會更簡單。 – Calvin1602 2011-05-19 14:09:06

回答

4

你使用直OpenGL還是引擎?如果你使用引擎,其中一些可能已經爲你解決了。

如果你使用直線OpenGL,你必須記住它僅僅是一個渲染API。所以你仍然必須自己做很多腿部的工作。

要導入你必須

  • 3D模型建立某種形式的網格數據結構的
  • 寫加載程序(OBJ文件格式是一個很好的地方開始),這需要一個文件,將其加載到您的數據結構中
  • 編寫將呈現您已加載的數據並將其呈現出來的呈現代碼。

是的,你可以紋理映射你的網格。你需要的是紋理(UV)座標。這些基本上將網格中的頂點映射到2D紋理上的位置。想象一個球體模擬地球,UV座標將頂點映射到地球2D地圖上的特定位置。

您或許可以使用generate those獲得3D球體的代碼,但建模軟件包也可以幫助您,特別是對於更復雜的3D對象。對於某種視覺介紹,看看這個與Blender相關的tutorial on UV mapping

關於紋理和紋理映射的OpenGL ES教程可以在here找到。

3

你可以用兩種方式

  • loader解析所有頂點 和紋理座標加載3D模型。
  • 使用blender to export您的模型 作爲頭文件。

然後加載模型和紋理應用..

您的信息

閱讀這些tutorials ..

我希望這可以幫助你......