Возможно ли иметь геометрию теней теней SCNNode, но не получить их? В настоящее время я нашел свойство castsShadow
, чтобы изменить, как узел реагирует на тени.SceneKit Cast, но не получает тени
ответ
Попробуйте это, чтобы избежать самозатенения, но сохраняйте тени.
model.geometry.materials.firstObject.lightingModelName = SCNLightingModelConstant;
model.categoryBitMask = 1;
directionalLight.categoryBitMask = ~1UL;
SCNLightingModelConstant
Равномерное затемнение, который включает в себя только окружающее освещение.
SCNLightingModelConstant
только учитывать окружающий свет для затенения, игонирование других визуальных свойств.
Затем установите categoryBitMask
модели и огни. Если результаты поразрядного И из двух categoryBitMask
равны нулю, узел не будет учитываться при освещении, поэтому нет никаких собственных теней. модель оттенков теней все равно останется в сцене.
Это будет работать только для shadowMode SCNShadowModeForward, правда, правильно? Как можно добиться этого для SCNShadowModeDeferred? –
Вы разрешили это? Встречайтесь с вами с той же проблемой. – ooOlly
Я не нашел решение, но для геометрии, которую использовал, у меня появились другие проблемы с тенями, поэтому я решил полностью отключить их. –