2013-08-22 132 views
1

我想知道是否有方法檢查相機是否正在查看3D空間中的Vector3點,或者檢查點是否正在顯示屏幕上。檢查屏幕上是否顯示Vector3

+0

19分鐘前你剛纔問你甚至不打算搞一個問題 - 沒有答案,評論或「幫助與否「。你問的問題很簡單 - 但我沒有看到你已經找到答案的任何努力。 – Tarec

+0

爲了清楚起見,我在看到第一個問題時評論了你的答案 - 我只需等待20分鐘,直到我能夠發佈第二個問題。其次,這個問題來自於我的想法,即渲染RenderTarget2D不是每幀都使用相機,而只是當玩家看到鏡子時。正如你所說,我已經想到了這個問題,在我的第一個問題上只是一個簡單的問題,但由於這是一個完全不同的問題,我決定將它發佈爲自己的問題。 –

+0

好的,對不起。 – Tarec

回答

4

是,只給您的視圖和投影矩陣爲邊界視錐是這樣的:

//class scope variables 
BoundingFrustum boundingFrustum; 

//in the init method 
boundingFrustum = new BoundingFrustum(); 

//In the Update method or wherever you need to run a check check 
boundingFrustum.Matrix = view * projection; 

bool isPointInView = boundingFrustum.Contains(Vector3ToTest); 
+0

是的,工作,謝謝! –