首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >React三纤程Drei HTML转换模式不工作

React三纤程Drei HTML转换模式不工作
EN

Stack Overflow用户
提问于 2021-03-17 16:06:39
回答 1查看 634关注 0票数 0

我正在使用react three fiber g drei,并且想在transfrom模式下使用html组件:

https://drei.pmnd.rs/?path=/story/misc-html--html-transform-st

不幸的是,将transfrom设置为true什么也做不了。

下面是我的代码:

代码语言:javascript
复制
       <Html
          transform
          distanceFactor={20}
          position={[5, -2, 0]}
          style={{
            width: "50px",
          }}
        >
          <img
            src={"assets/img/expand-outline.svg"}
            alt="expand"
          />
        </Html>

我基本上想要实现的是,html组件根据它的父组件进行旋转和转换。

找不到codepen或者类似的东西。希望你能帮助我。

EN

回答 1

Stack Overflow用户

发布于 2021-06-18 12:20:26

我也有类似的问题,我找到了几个原因。

但在此之前,给Html添加一些背景色,看看发生了什么。

1.将widhtheight都添加到Html的样式属性。

  • 我的超文本标记语言没有高度,因此不可见。

2.如果您旋转了父对象,请检查Html的方向。

  • 这件事发生在我身上
    1. 我的父网格是从GLTF文件中导入的,带有"z-up" I rotated it -90 degrees.
    2. Child组件的方向取决于它的父组件,所以它也被旋转了-90度。作为组件的
    3. 没有深度,并且与相机平行,它不是visible.

尝试添加一些rotation={[...]}

  • If您正在导入Z- them.

文件,修复它的最好方法是在导入文件之前进行变换/当导入文件时,

  1. 将其导出为y-up。
  2. 加载文件时,遍历几何图形并旋转them.

如果你仍然有问题,考虑下面。

3.将父对象和Html分别放入<group></group>中。使用此组可以执行所需的转换。

如果您不想更改所有的parents.

  • Make,请确保您的父级和
  • 都在场景的中心启动,这是最简单的解决方案。

代码语言:javascript
复制
<group position={[0,0,0]} rotation={[0,0,0]}>   // transform this
  <mesh/>   // parent
  <Html/>   // your Html
<group/>
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66669106

复制
相关文章

相似问题

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