2017-01-23 69 views
3

是否可以讓SCNNode的幾何投射陰影但不接收它們?目前我只找到castsShadow屬性來改變節點對陰影的反應方式。SceneKit投射但不接收陰影

+1

你解決了嗎?與你遇到同樣的問題。 – ooOlly

+0

我還沒有找到解決方案,但對於我正在使用的幾何體,我得到了一些陰影問題,所以我決定徹底關閉它們。 –

回答

0

試試這個以避免自我陰影,但保持陰影鑄造。

model.geometry.materials.firstObject.lightingModelName = SCNLightingModelConstant; 
model.categoryBitMask = 1; 
directionalLight.categoryBitMask = ~1UL; 

SCNLightingModelConstant

均勻着色,只有結合了環境照明。

SCNLightingModelConstant只考慮環境光線對陰影,igonring其他視覺屬性。

然後設置模型和燈的categoryBitMask。 如果兩個categoryBitMask的按位AND結果爲零,節點將不考慮光照,所以不再有自我陰影。陰影模型鑄造仍將保留在場景中。

+0

這隻適用於shadowMode SCNShadowModeForward,但是正確嗎?如何實現SCNShadowModeDeferred的這一點? –