Reactjs 如何在react三光纤中使用gltf加载mtl文件
我从一个站点下载了一组文件,并在blender中导出了glb、gltf和mtl文件。我可以在react three fiber场景中显示glb或gltf文件,但我不确定如何正确显示纹理。我遇到过一些演示,但它们看起来很旧,而且不起作用 下面是我加载文件的方式Reactjs 如何在react三光纤中使用gltf加载mtl文件,reactjs,three.js,gltf,react-three-fiber,Reactjs,Three.js,Gltf,React Three Fiber,我从一个站点下载了一组文件,并在blender中导出了glb、gltf和mtl文件。我可以在react three fiber场景中显示glb或gltf文件,但我不确定如何正确显示纹理。我遇到过一些演示,但它们看起来很旧,而且不起作用 下面是我加载文件的方式 import desk from '../../assets/desk.gltf'; // or .glb file const [gltf, set] = useState(); useMemo(() => new GLTFLoa
import desk from '../../assets/desk.gltf'; // or .glb file
const [gltf, set] = useState();
useMemo(() => new GLTFLoader().load(desk, set), []);
return gltf ? <primitive object={gltf.scene} scale={[0.05, 0.05, 0.05]} position={[0,0,1]}
rotation={[Math.PI/2,Math.PI,0]}/> : null
从“../../assets/desk.gltf”导入桌面;//或.glb文件
const[gltf,set]=useState();
UseMoom(()=>new GLTFLoader().load(桌面,集合),[]);
返回gltf?:无效的
恐怕您混淆了两个主题MTL
文件与OBJ
格式相关。这意味着资产几何图形的视觉方面存储在一个或多个外部MTL
文件中
glTF
没有单独的文件。物料定义直接在glTF
JSON清单中定义。因此,加载实际glTF资产足以加载物料定义。OK。这是有道理的。我有一些问题,我从各个网站下载的每个文件都显示为灰色,没有纹理。当我将它们导入Blender时,即使文件夹中存在这些文件,也会发生同样的情况。使用glTF时,最好使用glb
文件,因为所有资产(glTF JSON清单、二进制文件、纹理)都打包在一个二进制存档中。Blender的默认布局视口最初显示为灰色,没有纹理。您必须单击“材质预览”或访问“着色”面板才能在Blender中查看纹理。