Есть много импортированных моделей. У этих моделей нормали некоторых полигонов повернуты внутрь. От туда, от куда были импортированные эти модели такое поведение нормально. Но туда, куда я собираюсь экспортировать эти модели, это недопустимо. Решение задачи я вижу таким:
Представить сетку модели в виде 2D развертки. В итоге будет видно, что большинство нормалей направлены в одну сторону (good faces), а меньшинство в противоположенную (bad faces). Инвертировать нормали плохих фейсов. Прошу помочь с реализацией.
Решение задачи я вижу таким: Представить сетку модели в виде 2D развертки.
Выделяем модель. Добавляем модификатор Edit Mesh.
Добавляем модификатор Normal и включаем Unify Normals.
Такой вариант решения задачи подходит для вашего случая?
Доступ к резюме доступен только по пакетному доступу HR менеджерам зарегистрированных компаний. Узнать о вариантах корпоративных пакетов можно по ссылке.
Castello2401
Представить сетку модели в виде 2D развертки. В итоге будет видно, что большинство нормалей направлены в одну сторону (good faces), а меньшинство в противоположенную (bad faces). Инвертировать нормали плохих фейсов. Прошу помочь с реализацией.
igorznag
Добавляем модификатор Normal и включаем Unify Normals.
Такой вариант решения задачи подходит для вашего случая?
Александр Якушев
fn unifyNormal obj = ( ObjNumFaces = obj.numfaces -- chislo faysov objecta arrayMeshData = #() arrayFaces = #() for f = 1 to ObjNumFaces do append arrayMeshData #(getFaceNormal obj f, meshop.getFaceCenter obj f) for f = 1 to ObjNumFaces do ( theNorm = normalize arrayMeshData[f][1] theCent = normalize arrayMeshData[f][2] if (dot theNorm theCent)<= 0 do append arrayFaces f ) meshop.flipNormals obj arrayFaces update obj --update the mesh )Правда она только для mesh объектовdot theNorm theCent - скалярное произведение нормали с нормализованным вектором из центра объекта к центру фэйса.