【发布时间】:2015-12-03 11:01:31
【问题描述】:
我在 Unity5 中使用 Vuforia 和 Google Cardboard,这是我能获得的所有最新版本。我前段时间开始使用它,我需要 RenderTexture 来获得视觉效果,但是虽然我可以让它在 Unity Player 中运行,但我无法让它在 android 版本中运行。让我解释一下。
我需要展示 Vuforia 使用的实时摄像头,并且我需要 Cardboard 的 SDK 用于这个项目,所以我首先尝试让它们很好地协同工作,并且完成了。凉爽的。现在,我尝试使用遮罩只渲染一半的屏幕。完成,尽管在 android 版本中它覆盖了屏幕的另一半。没问题,我只是在测试。
这就是主要问题所在。我想向另一半展示它实际上是镜像的。我尝试了很多东西,似乎可行的一个是在作为相机子代的平面中使用RenderTexture,使用第三个相机,独立于纸板相机,我将目标纹理指定为@987654322 @(称为mirror)是我用材料创建的。我将材料分配给飞机,它起作用了。我只需要调整纹理的平铺和偏移,所以我在变换中调整了位置,这样效果就完成了。尽管存在一些缺陷,但它仍然有效,所以我做了 android 构建。而且...在我测试的所有智能手机中,RenderTexture 看起来都是黑色的。
我尝试了一个我可以很容易看到的立方体,所以我可以确定飞机没有移位或其他什么。不走运,那是一个黑色的立方体。我尝试搜索在执行时生成的缓冲区 (TextureBufferCamera)。在多维数据集脚本的LateUpdate 中得到它,并将多维数据集的RenderTexture 分配给TextureBufferCamera 正在使用的相同RenderTexture,并且它可以工作。如您所料,仅在播放模式下。 android 版本显示了一个完美的黑色立方体。
我也在一个单独的项目中尝试过,仅使用 vuforia,两种方法都出现了完全相同的错误(搜索 TextureBufferCamera,并使用第三个独立摄像头)。而且...我不知道为什么它无论如何都不起作用。
我不知道你们需要什么才能获得更多信息,只要问,我会编辑任何你们认为有用的信息。哦,这是我第一次使用 Cardboard 和 Vuforia...所以请记住这一点,因为我可能会错过一些东西或者...我不知道。我到处搜索(不仅在这里),我只看到非常非常古老的帖子,并且出现这样的错误。
【问题讨论】:
标签: c# android unity3d vuforia google-cardboard