首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在反应中改变OrbitControl目标?

如何在反应中改变OrbitControl目标?
EN

Stack Overflow用户
提问于 2021-06-12 16:31:21
回答 1查看 2.3K关注 0票数 2

我试过用react三纤维和react来制作模型,但是OrbitControl的目标是使它看起来很高。

代码语言:javascript
复制
import React, { useRef, useState, Suspense, useEffect } from 'react'
import { Canvas, useFrame, useLoader, useThree} from '@react-three/fiber'
import { ContactShadows, Environment, useGLTF, OrbitControls, PerspectiveCamera } from "@react-three/drei"
import { proxy, useSnapshot } from 'valtio'
import {HexColorPicker} from "react-colorful"

...

export default function App() {
  return (
    <>
    <Picker/>
    <Canvas camera>
      <PerspectiveCamera  makeDefault position={[0.1, 0.9, 1.8]} fov={60} zoom={0.9}/>
      <OrbitControls target={-0.061775 , 10, 0} />
      <ambientLight intensity={1} />
      <spotLight intensity={1} angle={0.1} penumbra={1} position={[10, 15, 10]} castShadow />
      <Suspense fallback={null}>
        <Bike />
        <Environment preset="city" />
        <ContactShadows rotation-x={Math.PI / 2} position={[0, -0.8, 0]} opacity={0.25} width={10} height={10} blur={1.5} far={0.8} />
      </Suspense>
      
    </Canvas>
    </>
  )
}

我尝试使用从@react 3/drei导入的OrbitControls中的目标变量来更改它,但是x和y轴不工作,z轴是螺母。我应该使用anothe OrbitControl进行React.Please帮助吗?

EN

回答 1

Stack Overflow用户

发布于 2021-06-22 16:06:29

为了更改OrbitControls的默认目标,需要将支柱封装在一个数组中,如下所示:

代码语言:javascript
复制
<OrbitControls target={[-0.061775 , 10, 0]} />

或者,如果您希望分别声明塔吉特x、塔吉特y或塔吉特z,可以使用以下虚线语法:

代码语言:javascript
复制
<OrbitControls target-x={-0.061775} />

资源:

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

https://stackoverflow.com/questions/67950854

复制
相关文章

相似问题

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