首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >白色屏幕显示在react js gltf模型中,没有正确地装载react 3/纤维和drei以及三条js。

白色屏幕显示在react js gltf模型中,没有正确地装载react 3/纤维和drei以及三条js。
EN

Stack Overflow用户
提问于 2022-03-18 15:07:50
回答 1查看 808关注 0票数 1

我用@react-3/纤维,@react-3/drei,3 js和gltfjsx创建了一个3d渲染网站。我想呈现一个gltf文件,并且我已经可以成功地完成它了,但是问题是,每当dev服务器启动时,屏幕就会闪烁并变为空白。虽然如果我使用drei提供的网格(如多维数据集和球形),屏幕不会变为空白,但只要我想使用自定义gltf模型,屏幕就会变为空白,下面是我的jsx组件和app.js文件。

模型构件

代码语言:javascript
复制
/*
Auto-generated by: https://github.com/pmndrs/gltfjsx
*/

import React, { useRef } from 'react'
import { useGLTF } from '@react-three/drei'

export default function Model({ ...props }) {
  const group = useRef()
  const { nodes, materials } = useGLTF('/linear_irl.gltf')
  return (
    <group ref={group} {...props} dispose={null} scale={10}>
      <mesh geometry={nodes.sphere.geometry} material={nodes.sphere.material} />
      <mesh geometry={nodes.sphere_1.geometry} material={nodes.sphere_1.material} />
      <mesh geometry={nodes.sphere_2.geometry} material={nodes.sphere_2.material} />
    </group>
  )
}

useGLTF.preload('/linear_irl.gltf')

App.js

代码语言:javascript
复制
<Canvas className="Canvas">
        <ambientLight intensity={0.5}/>
        <directionalLight position={[-2,5,2]}/>
        <Suspense fallback={null}></Suspense>
        <OrbitControls/>
          <Linear_irl/>
      </Canvas>

链接到GLTF文件Google驱动器链接下面的gltf文件

EN

回答 1

Stack Overflow用户

发布于 2022-04-06 06:43:36

这样试过吗?用悬念包裹整个场景,就在画布下面。

代码语言:javascript
复制
<Canvas className="Canvas">
  <Suspense fallback={null}>
    <ambientLight intensity={0.5}/>
    <directionalLight position={[-2,5,2]}/>
    <OrbitControls/>
    <Linear_irl/>
  </Suspense>
</Canvas>
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71529115

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档