问题标签 [objloader]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
javascript - 无法将动画置换着色器与 OBJ 加载器一起使用(类型错误:网格未定义)
我正在尝试在 OBJ 对象上放置一个带有动画位移的基本着色器。着色器在 CubeBufferGeometry 上工作正常,但我无法让它与 OBJLoader 一起工作。
但是,在我的渲染/动画函数中,我的网格变量是未定义的(我已经将 var mesh 作为全局变量)。我认为这是因为我的网格也在 OBJLoader 函数中定义?
我得到:'类型错误:网格未定义'
这是我的渲染/动画功能:
javascript - OBJLoader 未在 Three.JS 中加载 Structure.IO 模型文件
我有 Structure.IO 传感器,它生成正确加载到 3D 编辑器(Blender、Cinema4D)中的 OBJ+MTL 模型,但它们没有在 three.js 中显示。我检查了加载的对象,它的几何形状和材质似乎是正确的,但是当我将它添加到场景中时它仍然没有显示任何内容。
这里有我要使用的模型: https ://drive.google.com/file/d/0B8Hv0HwLV830a2cwWFpZMEpKNlU/view
提前致谢。
javascript - OBJLoader 和 MTLLoader 不在 ThreeJS 中渲染 png/纹理
我导入了包含 .obj .mtl 和一堆 jpeg 和 pngs 的 3D 模型
尝试像这样使用 /images 加载模型
但是,我得到的只是一个像他一样的黑人模特
我想知道我在遵循使用这两个装载机的指南时错过了什么。
这是我的代码。
我想知道我缺少什么,因为我的资产文件夹包含所有模型文件
opengl - OBJFILELOADER - pygame
所以我尝试运行代码,但它给出了超出索引范围错误的列表。我将索引从 1 更改为 0,但屏幕只弹出黑色。我怎样才能更改代码以使其工作?
javascript - 带有three.js的单个obj文件上的多种材料
我正在使用three.js 加载一个obj 文件,一个带有一些珍珠的戒指。我没有mtl
文件,因为我们用来导出obj
(rhinoceros(?)) 的软件不会用obj
文件生成它(这是平面设计师告诉我的)。
我只需要为戒指设置金属材料,只为石头/珍珠设置玻璃材料。
这是我实际加载文件的测试页面的链接: jaaxlab.com/test_youring
...对于其余的我不知道如何设置单一材料和多个。
链接到 obj 文件jaaxlab.com/test_youring/obj/prova1.obj
javascript - 无法通过 react-three-renderer 加载 .mtl 和 .obj
我正在尝试通过 react-three-renderer 加载 .obj 和 .mtl 但我错过了加载模型。目前我能够在 div 内渲染一个立方体。但是,我想用我的 .obj 模型替换立方体。
安装:
用法:div内的立方体
预期 3D 模型 .obj .mtl 但在哪里添加此代码?
python - OBJFileLoader 中的错误
来自链接的 OBJFILELOADER.py 文件中存在错误 - https://www.pygame.org/wiki/OBJFileLoader。我认为 python2 到 python3 版本错误,但是我尝试更改raise ValueError的东西并将 obj 用作obj=(filename)
但是还是有很多错误。
我从搅拌机中取出了 .obj 文件,我认为这不是问题所在。谁能告诉我 Python3 的确切objfileloader
错误 -
typescript - Uncaught TypeError: THREE.MTLLoader is not a constructor 2.0
我之前在这里问过这个问题:Uncaught TypeError: THREE.MTLLoader is not a constructor
我通过更改三个 mtl-loader 文件让它工作的地方。但是因为我稍后将把我的工作上传到 github,所以我必须在不更改这些文件的情况下创建一个解决方案。
因此,我尝试使用经典示例中使用的加载器加载 obj 和 mtl 文件:https ://github.com/mrdoob/three.js/blob/master/examples/webgl_loader_obj_mtl.html
但我仍然收到错误“未捕获的 TypeError:THREE.MTLLoader 不是构造函数”
我有点不确定如何在这些加载器中加载,但现在我的代码如下所示:
在我插入的 src 文件夹中的 three.js 文件中的位置:
编辑
我使用 NPM 安装,错误消失了。不幸的是,发生了其他问题-但我在另一个问题中提出了这些问题:three-mtl-loader error: THREE.MeshPhongMaterial: .shading has been removed -> object not visible
javascript - Three.js:加载适当的模型比例/尺寸
我正在开发一个three.js 项目,用户可以将.obj 模型上传到场景中。问题是我有两个不同大小的模型(一个缩放到毫米,另一个有任意比例)。当加载到 MeshLab 和 Blender 等 3D 模型程序中时,它们的大小非常明显不同,但它们在场景中以完全相同的大小出现!
问:什么可能导致这两个大小明显不同的模型加载到大小完全相同的三个.js 中?
这是有问题的three.js项目:https ://pcforge.tech/3d-viewer/
免责声明 - 这不是自我推销的尝试,因此请不要将其视为一种。我只是寻求帮助,因为我无法弄清楚问题的原因。
编辑:经过一些研究,很明显 .OBJ 文件不保留跨软件平台的单位/比例数据,所以我计划允许用户在上传模型时设置自己的单位尺寸 (mm),并将这些单位转换为上传时的 SI 单位。