2017-04-11 67 views
0

我正努力在Unity中使用Google Tango做遮擋。如何在Unity中使用Google Tango進行遮擋?

我想要什麼是很容易理解:當在一個虛擬對象的前一個真正的對象,虛擬對象被隱藏(或呈現不同)

完美的結果會像它在這個我發現的令人印象深刻的視頻:https://www.youtube.com/watch?v=EpDhaM7ZhZs

我已經嘗試了Tango相機的「啓用遮擋」選項,我對結果並不滿意(因爲它基於點雲的網格重建,所以不準確並且不是實時的)。

如果您有關於如何實現此目標的提示,提示或想法(如在視頻中),那將非常棒!

回答

0

在Tango中,阻塞仍然是一個非常實驗性的功能。問題是,這是很難做到的閉塞與高保真和高性能,這裏是如何用不同的方法去實現它幾個思路:

  1. 使用三維重建。

探戈沒有提供的功能,構建從點雲三維網格,你可以找到從探戈示例代碼庫(CJavaUnity)示例代碼。如果你有一個預先掃描的世界,你可以基本上使用該網格數據來遮擋虛擬對象。

  1. 運行時上採樣深度圖像。

您還可以將所有點雲投影到圖像平面上,對其進行上採樣,並將該圖像用作深度緩衝區進行渲染。這是TangoUnitySDK中使用的ARScreen遮擋。由於Tango深度感應硬件的限制,結果質量不是很理想,如果所有物理物體距離設備很遠(超過4米),它將不起作用。