Smoothing - PavelBlend/blender-xray GitHub Wiki
Эта страница описывает сглаживание для меш-объектов в движке X-Ray.
В движке X-Ray есть три типа сглаживания:
- Сглаживание, реализованное на уровне треугольников (
Smooth Groups). Аналог групп сглаживания в3DS Max. - Сглаживание, реализованное на уровне рёбер (
Sharp Edges/Smooth Edges). Аналог острых/мягких рёбер вBlenderиMaya. - Сглаживание, реализованное за счёт нормалей вершин (
Vertex Normals). АналогSplit NormalsвBlender.
В движке X-Ray есть четыре формата сглаживания:
-
Max-формат для*.objectфайлов дляX-Ray SDK0.4. Имеет типSmooth Groupsи реализован в виде32-битной маски. Каждый бит указывает одну группу сглаживания. Каждая группа сглаживания может занимать только один бит маски, из-за чего максимальное количество групп равно32. Нет возможности задать не замкнутые границы сглаживания. Подробнее: Параметр Smoothing Groups Mask, Не поддерживается Max-формат сглаживания. -
Maya-формат для*.objectфайлов дляX-Ray SDK0.4. Имеет типSmooth Groupsи реализован в виде32-битных индексов групп. Каждая группа имеет уникальный номер. Количество групп не ограничено. Так же, как иMaxформат, не имеет возможности сохранить не замкнутые границы сглаживания. Если при экспорте в*.objectмеш-объект будет иметь не замкнутые контуры сглаживания, то аддон выдаст предупреждение Maya-SG incompatible и не сохранит сглаживание для незамкнутых контуров. Это означает, что не сглаженное ребро вblenderпосле экспорта станет сглаженным. -
Clear Sky/Call of Pripyatформат дляX-Ray SDK0.5,0.6,0.7. Имеет типSharp Edges. Границы сглаживания указываются с помощью рёбер. Возможно указать не замкнутые границы сглаживания, в отличие отMax/Mayaсглаживания, которое имеет замкнутые контуры. -
Внутриигровой формат сглаживания для
*.ogfи игровых скомпилированных уровней. Имеет типVertex Normals. При создании*.ogfили игровых уровней, вершины сохраняются так, чтобы каждая вершина имела только одну нормаль. Границы сглаживания указываются с помощью направления нормалей. Если нормали вершин ребра направлены в одну сторону, то граница между полигонами ребра будет сглажена. Этот формат позволяет сохранять не только границы сглаживания, но и направление нормалей, что даёт больший контроль над сглаживанием.
В аддоне есть возможность сохранить Vertex Normals в формат *.object. Официальный X-Ray SDK не поддерживает хранение такого сглаживания в *.object. Чтобы сохранить это сглаживание при экспорте *.object в *.ogf, нужно использовать неофициальные программы (например, Object Editor).
Форматы файлов поддерживают такие форматы сглаживания:
-
*.object- 1, 2, 3 и неофициальныйVertex Normals. -
*.ogf- 4. -
level/level.geom- 4. -
*.dm- не поддерживает сглаживание. -
*.details- не поддерживает сглаживание.
Blender имеет такие возможности для настройки сглаживания:
-
Smooth Edges/Sharp Edges- если ребро помечено с помощьюEdge>Mark Sharp, то оно станет острым (Sharp Edge). Если не помечено, то будет сглаженным (Smooth Edge). -
Smooth Faces/Flat Faces- если полигон помечен с помощьюFace>Shade Flat, то он станет плоским. Если помечен с помощьюFace>Shade Smooth, то будет сглаженным. -
Split Normals- позволяет указать направление нормалей для сглаживания. Включить отображение нормалей можно здесь:
-
Smooth Angle- позволяет автоматически рассчитать сглаживание для рёбер (Sharp Edges), по углу между полигонами. Угол задаётся здесь:
В некоторых случаях при экспорте аддон не учитывает некоторые типы сглаживания, настроенные в blender. Подробнее: