首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Three.js光纤/ Drei -如何加载fbx模型?

Three.js光纤/ Drei -如何加载fbx模型?
EN

Stack Overflow用户
提问于 2020-11-11 00:02:44
回答 1查看 1.3K关注 0票数 0

亲爱的Stack Overflow朋友们:

我将drei用于react native / three.js光纤。我遵循了https://github.com/pmndrs/drei中关于如何加载fbx的说明,但由于“错误:无效的钩子调用。钩子只能在函数组件的主体内调用。这可能是由于以下原因之一:”而无法使其工作。“

谁能给我指个正确的方向怎么做?

代码语言:javascript
复制
import { StyleSheet, Text, View } from 'react-native';
import ReactDOM from 'react-dom'
import React, { useDebugValue, useRef, useState } from 'react'
import { Canvas, useFrame, useLoader } from 'react-three-fiber'

import { OrbitControls, Sky, useFBX, Loader } from '@react-three/drei'
import { debug } from 'react-native-reanimated';

useFBX('test/test1.fbx')

function SuzanneFBX() {
  let fbx = useFBX('test/test1.fbx')
  // wrap fbx in primitive.
  return <primitive object={fbx} dispose={null} />
}

export default function App() {
  return (
    ReactDOM.render(
      <Canvas>
        <ambientLight />
        <pointLight position={[10, 10, 10]} />
        <OrbitControls />
        <Sky/>

      </Canvas>,
      document.getElementById('root')
    
      )
  );
}


const styles = StyleSheet.create({
  container: {
    flex: 1,
    backgroundColor: '#fff',
    alignItems: 'center',
    justifyContent: 'center',
  },
}); ```
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-11-11 23:29:44

您将在全局空间中调用useFBX('test/test1.fbx')。你不能在组件之外使用钩子。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64772396

复制
相关文章

相似问题

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