gpt4 book ai didi

three.js - 如何使用 three.js 查找 .OBJ 3D 模型的子部分?

转载 作者:行者123 更新时间:2023-12-05 04:12:31 25 4
gpt4 key购买 nike

我需要实现一个用户可以上传 OBJ 3D 模型的功能,然后我将在浏览器中显示该模型的不同子部分。 (与 https://www.sculpteo.com 相同。)。

但是我无法找到 OBJ 模型的子部分。我正在使用 three.js 在浏览器中显示 OBJ 模型。

有什么方法可以使用 three.js 找到 OBJ 模型的子部分吗?

我正在共享代码以加载 OBJ 模型 =>

var mtlLoader = new THREE.MTLLoader();
mtlLoader.setPath( 'path' );
mtlLoader.load( 'model.mtl', function( materials ) {
materials.preload();

var objLoader = new THREE.OBJLoader();
objLoader.setMaterials( materials );
objLoader.setPath( 'path' );
objLoader.load( 'model.obj', function ( object ) {
scene.add( object);
});
});

现在我不知道如何找到这个“model.obj”的子部分。请帮忙。提前致谢。

最佳答案

仅当您的 .obj 文件包含对象组时,您才会将子部分作为对象的子网格。没有它,你只会得到一个单一的子网格。了解 Wavefront .obj file format .因此,如果您的子部分数据分组在

o [object name]

标记,然后您将拥有与 .obj 文件中的“o”组一样多的子网格,然后您就可以遍历了。

upd#1:它也适用于“g”标签。

g [group name]

example基于 Threejs.org 的“webgl_interactive_cubes”,在 .obj 文件中用“g”标签(skull、uteeth、jaw、lteeth)分组的子部分数据

关于three.js - 如何使用 three.js 查找 .OBJ 3D 模型的子部分?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40170372/

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