我正在尝试将虚拟对象隐藏在真实世界对象位于其前面,但没有任何运气时,我一直在使用统一的遮挡设置,但虚拟对象不会变成隐藏?
答案 0 :(得分:2)
您可以通过在启用实验网格化的情况下构建增强现实场景来解决此问题。
这是一个概念的例子 https://www.youtube.com/watch?v=sn3bhnPlfcw
然后,如果网格阻挡光线投射,您可以从相机投射到虚拟对象并关闭对象。
答案 1 :(得分:1)
在AndrewNakas的解决方案上+1。
另一种解决方案是进行屏幕空间深度缓冲测试。这意味着从Tango提供的点云中获取深度图像,并将其与虚拟相机的深度缓冲区进行比较。
Tango Unity SDK在Enable Occlusion
预制件上实现了此功能。有一个名为public class Splash extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.splash_screen);
Thread timerThread = new Thread(){
public void run(){
try{
sleep(5000); //Change the timing of the Screen
}catch(InterruptedException e){
e.printStackTrace();
}finally{
Intent intent = new Intent(SplashScreen.this,MainActivity.class);
startActivity(intent);
}
}
};
timerThread.start();
}
}
的复选框。