Изменить расстояние размытия в сцене SCNKit - PullRequest
0 голосов
/ 01 декабря 2019

Расстояние размытия в моей сцене только размывает узел SCNFloor на расстоянии. Я пытаюсь убрать размытие со сцены. Все остальные узлы не затрагиваются. Это то, что отрисовывает сцена ...

The road blurs while no other node in the scene blurs.

Я устал от использования документов Apple, чтобы зафиксировать фокусное расстояние камеры, но, похоже, это делаетне работает.

        cameraNode.camera?.focusDistance = 100
        cameraNode.camera?.fStop = 100
        cameraNode.camera?.apertureBladeCount = 100
        cameraNode.camera?.focalBlurSampleCount = 100
        cameraNode.camera?.motionBlurIntensity = 0

Я также пытался изменить фокусное расстояние в функциях рендеринга сцены. Это также не удалось.

func renderer(_ renderer: SCNSceneRenderer, updateAtTime time: TimeInterval) {
        //Other code to deal with the follow camera
        cameraNode.camera?.focusDistance = 100
    }

Будет ли решение связано с узлом пола или с камерой?

1 Ответ

1 голос
/ 16 декабря 2019

Хорошо, поэтому после некоторых глубоких исследований я смог найти решение. Оказывается, анизотропия нижнего узла не была установлена ​​на желаемое значение. Итак, вот решение,

Решение не имеет ничего общего с камерой. Где бы вы ни настраивали свою сцену, добавьте эту строку:

  yourSceneName.rootNode.childNode(withName: "yourFloorNodeName", recursively: true)?.geometry?.firstMaterial?.diffuse.maxAnisotropy = 50 //Change according to preference.  

Это решает всю проблему.

...