【问题标题】:Unity AR Foundation: how to influence the renderorderUnity AR Foundation:如何影响渲染顺序
【发布时间】:2022-10-03 00:22:46
【问题描述】:

在我的 AR 应用程序中,我想在另一个之上渲染一个模型。是否有任何方法或变量来影响这一点?

  • 请提供足够的代码,以便其他人可以更好地理解或重现该问题。

标签: unity3d render augmented-reality


【解决方案1】:

是的,至少有两种选择:

z-test 设置为always

这必须在您的模型使用的材料的着色器上设置。 Here's unity 的文档,但也有一些在线指南如何使用自定义 z-test 编写着色器。

两个摄像头

这是通过拥有两个摄像头来完成的。一个是您的 ARCamera,另一个是始终与 ARCamera 保持相同姿势的第二个。例如,这可以通过将第二台摄像机设置为具有 Identity Pose 的 ARCamera 的子项来完成。然后您可以创建一个特殊的图层,例如“始终在前面”并将模型分配给它。然后为两个相机相应地设置剔除遮罩,这样第二个相机只渲染模型,而 ARCamera 只渲染其他所有东西。使用此解决方案渲染两个相机时可能会有一些开销。

您的问题有一个类似的解决方案来防止 FPS 游戏中的武器剪辑。如this blogpost 所示。

【讨论】:

  • 嘿,感谢您的帮助,对我迟到的回复感到抱歉。不得不解决一些其他问题。我用两台摄像机尝试了 secon 选项,但遇到的问题是我只能从第二台摄像机看到包含前层内容的 conted。我想用后面的 MainCamera 渲染的模型不会出现。
【解决方案2】:

MainCamera SecondCamera 这两张图片显示了我在检查器中为每个相机设置的属性。因此,我也以两种不同的方式尝试了它,但都没有产生差异。

I:SecondCamera 是 MainCamera 的子级

II:SecondCamera 和 MainCamera 在 ARSessionOrigin 中处于同一层次。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-09-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-01-31
    相关资源
    最近更新 更多