2015-06-30 100 views
1

我試圖在我的盒子上設置一個模糊的陰影。這是我到目前爲止。 enter image description hereshadowRadius不模糊陰影

shadowRadius上的文檔說。

SceneKit通過從陰影地圖渲染 幾何圖形的輪廓成2D陰影圖,然後使用若干加權的採樣 產生軟邊緣的陰影,以確定陰影的強度在每個 像素在渲染場景。該屬性控制陰影圖抽樣的半徑。較小的數字會導致陰影邊界銳化,像素化邊緣;更高的數字會導致模糊的陰影。

這是我的影子設置代碼

func setupShadow(){ 
     spotLight.castsShadow = true 
     spotLight.shadowRadius = 30000 
     spotLight.shadowBias = 1 
     spotLight.shadowColor = UIColor.blackColor() 
    } 

正如你所看到的,陰影半徑設置爲一個龐大的數字,但仍然影子心急火燎。事實上,如果shadowRadius改變,模糊度甚至不會改變。我究竟做錯了什麼?

回答

2

你可能想要一個更小的半徑(如[1; 3])。

然後在iOS上,您還需要指定使用shadowSampleCount(因爲iOS上默認只有1個樣本表示沒有模糊)的樣本數。 請注意,增加樣本數量可以提高質量,但會對性能產生重大影響。

+0

太棒了!對於未來的讀者:一旦設置了shadowSampleCount,我還需要設置zNear以使陰影可見。在設置不需要的shadowSampleCount之前。 – brumbrum