Javascript 从三维模型获取纹理贴图
我已经用Javascript/canvas构建了一个3d显示应用程序,它运行得非常好。我最近实现了映射纹理的功能 我从stl格式导入3d模型,效果很好,因为它们只存储TRI,所以很容易导入,因为我不需要分解它们,但它们不存储纹理 纹理的存储方式也是如此Javascript 从三维模型获取纹理贴图,javascript,3d,texture-mapping,Javascript,3d,Texture Mapping,我已经用Javascript/canvas构建了一个3d显示应用程序,它运行得非常好。我最近实现了映射纹理的功能 我从stl格式导入3d模型,效果很好,因为它们只存储TRI,所以很容易导入,因为我不需要分解它们,但它们不存储纹理 纹理的存储方式也是如此 textureObject(){ this.img=image //Js image object this.triArray=[[x1,y1],[x2,y2]...]//Map of where polys function re
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,这样我就不必为该项目创建全新的文件格式
我想我有两个选择:
如果文件中存储了其他文件格式的纹理坐标信息,则为其创建导入器。(但哪种文件格式?)
或
或者有没有一种将纹理映射到对象的标准方法,然后我可以实现它来创建阵列?(方法是什么?也许您正在寻找这种文件格式?我认为很多3d建模程序实际上都是以这种格式导出的:我最终自己解决了这个问题,我确实使用了STL,我发现了它们的布局,并编写了一个查看器(),我将在我的主代码中实现它,当我能够获得一些sub 100tri模型时,或者我学习如何制作自己的模型。