【问题标题】:How to access target texture for rendering from native world in Unity (VR)?如何在 Unity (VR) 中访问目标纹理以从原生世界进行渲染?
【发布时间】:2017-02-13 21:25:24
【问题描述】:

我想通过原生插件渲染 VR。这可能吗?

到目前为止,我所拥有的是:

void OnRenderObject()
{
    GL.IssuePluginEvent(getRenderCallback(), 1);​
}​

这是调用我的原生插件并渲染一些东西,但它在这里搞得一团糟。

似乎我渲染到了错误的纹理。事实上,如何从原生插件 OpenGL 获得正确的纹理/帧缓冲区或渲染 VR 所需的任何技巧?例如,为了正确渲染,我需要有关正在渲染的相机(左或右)的信息。

有什么提示吗?我正在尝试使用 Gear VR 和 Google VR。欢迎任何关于其中任何一个的提示。

【问题讨论】:

    标签: unity3d virtual-reality google-vr gear-vr android-unity-plugin


    【解决方案1】:

    我的解释是,您想用自定义的 OpenGL 调用覆盖 Unity 的默认渲染,而不是 MeshRenderer 的默认渲染。

    在不知道您正在渲染什么以及应该是正确的行为的情况下,我无能为力。

    我可以想象,如果您设置自己的状态,例如打开/关闭特定深度测试、混合,这些将覆盖 Unity 在您的自定义函数之前为您设置的任何状态。如果你不恢复那些 Unity 不知道的状态并产生错误的结果。

    作为旁注,您可能需要查看 https://github.com/Samsung/GearVRf/ 它是三星为 GearVR 开发的开源框架引擎。与 Unity 类似但开源,您可以在知道下面发生的情况下执行与您发布的内容类似的事情

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-09-25
      • 1970-01-01
      • 2023-03-19
      • 1970-01-01
      • 2019-12-13
      • 2011-05-03
      相关资源
      最近更新 更多