unity游戏引擎-增强现实不显示摄像头馈送



我正试图决定为我的Unity3d项目使用哪种AR工具。候选的是ARToolkit和Wikitude。我还在寻找的是关闭相机输入,但仍然显示一个虚拟对象,根据标记的位置或旋转旋转和缩小/增长。

例如,如果我想在一个标记上面显示一个红色的3d立方体,我想只在黑色背景上显示这个立方体,而不显示其他任何东西。有任何AR工具支持此功能吗?如果不是ARToolkit或Wikitude也没关系。

谢谢

ARToolkit有这个功能,你只需要在ARCamera脚本上勾选名为"透视显示"的框。

当使用透明显示时,黑色被认为是透明的,因为它没有被渲染。我想你也是出于同样的原因。

有关这方面的更多信息,包括如何校准透明显示器,您可以查看官方文档:使用光学透明显示器

使用Wikitude Plugin,您还可以通过向执行渲染的相机添加以下脚本来实现这一点。

using UnityEngine;
using UnityEngine.Rendering;
public class CustomCameraRenderer : MonoBehaviour {
    public Texture2D textureToRender;
    void Start () {
        var buffer = new CommandBuffer();
        buffer.Blit(textureToRender, BuiltinRenderTextureType.CameraTarget);
        var camera = GetComponent<Camera>();
        CameraEvent eventForBlit;
        if (camera.actualRenderingPath == RenderingPath.Forward) {
            eventForBlit = CameraEvent.BeforeForwardOpaque;
        } else {
            eventForBlit = CameraEvent.BeforeGBuffer;
        }
        camera.AddCommandBuffer(eventForBlit, buffer);
    }
}

然后在脚本的检查器中添加你想要的纹理作为背景

继沙拉菲的评论之后…如果您深入到ARcontroller脚本的第1222行并找到

clearCamera。

如果SolidColor更改为Skybox,则黑色将成为统一的相机视图。

最新更新