将低级原生插件 (Unity) 与 Google Cardboard 结合使用

Using low-level native plugin (Unity) with Google Cardboard

我安装了 Unity 5.2.0f3 Personal 并从 Unity 文档站点获得了 低级渲染插件 的示例。我做了一些更改,因此项目场景显示:

插件渲染的平面在每帧结束时渲染,因此它不会干扰 Unity 管线。到目前为止,这适用于 PC 和 Android.

最近我尝试将项目移植到 Google Cardboard(通过安装 SDK 包,将 CardboardAdapter 预制件添加到 MainCamera 等等)。问题是让插件在每一帧的末尾渲染平面 会使平面脱离 Google Cardboard 制作的 的 "fancy stuff" 所以场景被渲染使用 VR:以前由 Unity 渲染的球体和平面现在通过 Google Cardboard eyes 渲染,但我的平面不是。

我在脚本 "CardboardEye.cs" 的方法 "render()" 内移动了对插件的调用,但找不到合适的位置。飞机隐藏在 Cardboard 遮阳板后面,或者渲染在 Cardboard 遮阳板外面,或者...

所以此时我的问题有两个:

谢谢。

好吧,我在 "Cardboard & VR Developers" Google+ 组的 this post 上运气更好。

基本上,我做了以下更改:

  1. 正在将 Google 适用于 Unity 的 Cardboard SDK 更新到 v0.5.2。
  2. 在方法 OnRenderObject()(Unity 脚本)中调用 GL.IssuePluginEvent。

现在可以使用了!