从3D模型获取纹理贴图

时间:2010-11-16 16:47:35

标签: javascript 3d texture-mapping

我在Javascript / canvas中构建了一个3D显示应用程序,它运行得很好。我最近实现了贴图纹理的功能。

我从stl格式导入3d模型效果很好,因为它们只存储tris所以很容易导入,因为我没有打破它们但是它们不存储纹理。

纹理的存储方式就是这样

textureObject(){
  this.img=image //Js image object
  this.triArray=[[x1,y1],[x2,y2]...]//Map of where polys

  function returnImage(int i){
    //returns a cropped triangle around the coordinates in the triArray. 
  }
}

实际的实施有点不同,但它的肉和肉汁。虽然它不是完美的纹理映射,但它只是一种仿射变换,它看起来像是罪恶,但对我来说已经足够好了。

我的问题是我不知道如何从已经创建的3d对象中保存triArray,这样我就不必为这个项目创建一个全新的文件格式。

我想我有两个选择:

如果存在其他文件格式的导入器,则将其存储在文件中。 (但是哪种文件格式?)

OR

OR是否有一种将纹理映射到对象的标准方法,然后我可以实现它来创建我的数组? (方法是什么?)

1 个答案:

答案 0 :(得分:0)

也许这种文件格式是您正在寻找的东西?我认为很多3D建模程序实际上都导出为这种格式:http://en.wikipedia.org/wiki/Obj