【问题标题】:Adding 2D plane to 3D view将 2D 平面添加到 3D 视图
【发布时间】:2015-06-11 19:04:06
【问题描述】:

我有一个 3D 场景,我想在场景中添加一个 2D 平面,我可以在其中添加按钮。我可以用 3D 平面做到这一点,但我不知道如何让相机忽略它的透视。有什么建议我怎么能做到这一点?谢谢!

【问题讨论】:

  • 最好为此使用精灵。我实际上只是使用 DOM 在您的 3d 元素之上创建一个 2d 元素,它更容易触发事件并影响您的 3d 视图。
  • 这里有一些关于你应该使用 DOM,但你需要这个扩展来将 DOM 元素移动到正确的 3D 位置:github.com/jeromeetienne/threex.objcoord
  • @somethinghere 感谢您的建议!我想做一个透明的菜单覆盖,所以我不必担心闪烁等,我可以简单地指定一个更高的 z-index 就可以了,对吗?
  • 我认为这就是它的工作原理,是的,只需在 DOM 本身(在画布之外)定义东西并定位它们绝对位置,你应该有一个覆盖。 @BenMack我认为您甚至不需要担心这里的three.js,只需像构建常规网站一样构建您的东西并将画布用作画布即可。您可以使用 DOM 轻松影响画布中的内容,因为它只是 JS。
  • 非常感谢!如果您发布“答案”,我会接受,谢谢!

标签: javascript three.js


【解决方案1】:

如果您想快速完成,只需使用绝对定位的 div。 如果您需要更高级的 GUI 功能,如 marcel 所写,只需使用 dat.gui。它反应灵敏,许多 Three.js 示例都在使用它(控件通常位于屏幕的右上角)。

【讨论】:

    猜你喜欢
    • 2012-08-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-07-11
    • 2017-10-06
    • 2011-08-25
    • 2023-03-08
    相关资源
    最近更新 更多