gpt4 book ai didi

three.js - 在 Three.js 中加载 OBJ 文件

转载 作者:行者123 更新时间:2023-12-02 08:03:03 25 4
gpt4 key购买 nike

我试图通过在 Three.js 中导入 OBJ 文件来在浏览器上可视化圆柱体的简单 3D 模型。我从运行 Three.js 的 OBJ 加载器的简单示例开始:

https://github.com/mrdoob/three.js/blob/master/examples/webgl_loader_obj.html

在本地运行良好。

我尝试将 OBJ 文件的路径替换为我的路径,但无法加载。我仔细检查了路径,它是正确的。

在 Firefox (Crtl + Shift + k) 上检查控制台上的错误时,它会显示:Syntax Error 并抛出以下错误:

[22:59:30.865] Error: WebGL: DrawElements: bound vertex attribute buffers do not have sufficient size for given indices from the bound element array @ http://localhost/~harmanpreet/three.js/build/three.min.js:455

OBJ 文件是从 BRL-CAD 中制作的模型转换而来的(.g 到 .obj 转换)。 OBJ 文件链接:http://devplace.in/~harman/cyl1_bot_dump.obj

谁能找出问题所在吗?

谢谢

最佳答案

根据规范,您的 .obj 文件看起来是正确的,但我建议您使用非缩小的 Three.js 版本,然后查看错误消息周围的代码。

您还可以尝试将 obj 文件中开头的“g”替换为“o”(g = 组,o = 对象) - 我不确定 Three.js 如何在内部处理此问题,或者是否可以会有所不同,但我想尝试一下不会有什么坏处。

除此之外,错误似乎是在说“我遇到了超出范围的数组索引”,这意味着面(.obj 文件中的 f)使用的索引高于定义的最高索引,但您的文件似乎并非如此(.obj 索引从 1 开始,所以一切都应该没问题)。

关于three.js - 在 Three.js 中加载 OBJ 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17841731/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com