Как сделать так, чтобы пользовательская геометрия SCNG выглядела более плавной или непрерывной
Создание 3D-объекта с помощью SCNGeometry
в реальном времени be/c пользовательские элементы управления изменяют объект. Изображение представляет собой обрезанный снимок экранаSCNNode
отображается в SCNView
:
Моя цель - получить гладкую модель с непрерывным затемнением, а не чередующимися светлыми и темными треугольниками. Я знаю, что треугольники созданы мной как разбиение четырех вершин, но я не знаю, почему затенение будет таким же отличаться от одного к другому, и как его сгладить. Все вершины имеют одинаковый цвет, за исключением красной и черной зазубренной точки вверху справа. Сгиб края - значение по умолчанию.
let element = SCNGeometryElement(indices: tris, primitiveType: .triangles)
geometry = SCNGeometry(sources: [vertexSource, colorSource], elements: [element])
geometry.materials = [SCNMaterial()]
geometry.firstMaterial?.lightingModel = .lambert
geometry.subdivisionLevel = 3
Освещение естественное, хотя эффект, о котором я спрашиваю, такой же, как и с добавленными прожекторами. Я экспериментировал с разными значениями subdivisionLevel. Весь объект состоит из десятков тысяч вершин, причем эта часть объекта состоит из тысяч вершин. Каждая вершина находится там, где задумано, объект выглядит правильно при масштабировании и повороте, и отображение быстрое, но я не знаю, как избежать этих чередующихся более светлых / темных полос для более гладкого внешнего вида.
Спасибо за любые идеи.