1. 程式人生 > >關於Unity3D第一視角下鏡頭穿牆的問題解決方法

關於Unity3D第一視角下鏡頭穿牆的問題解決方法

昨天做室內模型的時候,遇到一個非常棘手的問題,那就是第一視角在室內執行的時候,會出現穿牆的效果。類似下圖效果,在靠近牆壁的時候,出現了鏡頭看見了牆壁外的情況,很顯然這是不符合邏輯的。我們要做的就是避免這一問題的發生。

我的程式碼很簡單,就是官方的FPS控制器,拿過來就能用。

我一開始遇到這個問題,也是搜了很多的資源,網上的答案層出不窮,指令碼也是千奇百怪,但是這些對我來說,意義都不大,都沒啥意義,根本沒有解決問題,不是出現新的問題,就是指令碼寫的不好,好了,先不說人家了,也許是我的方式不對。

在我測試了N遍之後,終於看出了端倪,我終於找到了問題的原因。所以,步入正題

解決問題的方法就是:

將FPS中帶的鏡頭,或者你第一視角里面的鏡頭子物體,裡面的Camera元件中的Clipping Planes,如圖所示,將此處的Near改成0.1或者更小的數,你需要的數,他官方自帶的時候是0.3,會出現穿牆,但是調小以後,由於視角的剪切面縮小了,所以他就不會出現穿牆了。