MRTK V2-观众视图:看不到动态纹理

时间:2019-09-24 10:51:41

标签: c# unity3d augmented-reality hololens mrtk

设置:
我正在使用nativ render plugin在纹理上显示webcontant,而不会使主线程超载。 Unity端将纹理传递到插件中,并且代码每帧更改其像素。这是通过使用Texture.GetNativeTexturePtr

完成的
private void CreateTextureAndPassToPlugin()
{
    // Create a texture
    Texture2D tex = new Texture2D(1280, 720);
    tex.filterMode = FilterMode.Point;

    // Call Apply() so it's actually uploaded to the GPU
    tex.Apply();

    // Set texture onto material
    GetComponent<Renderer>().material.mainTexture = tex;

    // Pass texture pointer to the plugin
    SetTextureFromUnity (connID, tex.GetNativeTexturePtr(), tex.width, tex.height);
}

我根据Microsoft的指南设置了整个观众视图。我可以使用HoloLens进行操作,第二个人可以通过android设备查看我的互动。问题是观众无法在android设备上看到我的纹理/网页内容。

我想要的是
某人是否知道如何告诉团结纹理已更改并且需要更新?我在这方面的知识非常有限。据我了解,问题似乎出在观众身上,而观众没有提供解决问题的方法。

我的规格
Unity 2019.2.0f1
Visual Studio 2017
本机插件:Unity Bitbucket Github

1 个答案:

答案 0 :(得分:1)

Spectator View当前尚未内置对动态纹理的支持。

如果您试图拍摄一种体验以提供第二个观点,那么不太理想的解决方法是在视频中伪造该内容。从理论上讲,您可以将这种纹理内容记录到hololens设备上的mp4中,然后将其内容替换为mp4以进行拍摄。

如果您需要实时更新内容,则可以使用MixedReality-WebRTC存储库之类的内容来获取内容并将其同步到android设备。我个人并没有花费大量时间使用WebRTC,并且不确定这样做会带来的相关费用。

无论如何,这都是一个合理的功能请求,我已经打开了以下跟踪问题: https://github.com/microsoft/MixedReality-SpectatorView/issues/224