Alpha-masked foliage, rebuilt as Nanite geometry Листва на альфа-маске — в геометрию для Nanite
Nanite is built for dense opaque triangles, not alpha masks. This Blender add-on traces your texture’s alpha and rebuilds every cutout as real mesh, with holes cut and UVs, normals and vertex colors carried over, so foliage takes Nanite’s fast path in Unreal Engine 5. Nanite создан для плотных непрозрачных треугольников, а не для альфа-масок. Этот аддон для Blender трассирует альфу текстуры и пересобирает каждый вырез в настоящий меш — с вырезанными дырками и перенесёнными UV, нормалями и цветами вершин, — чтобы листва шла по быстрому пути Nanite в Unreal Engine 5.
More triangles is the pointБольше треугольников — так и задумано
For Nanite the triangle count is not what costs you. The alpha mask is. These are Nanite triangles, and there is no reason to fear themДля Nanite дорого обходится не число треугольников, а альфа-маска. Это треугольники для Nanite, и бояться их не нужно
Triangles are cheap for NaniteТреугольники для Nanite дешёвые
Nanite streams and culls geometry in small clusters and picks detail per pixel, so its cost follows screen resolution rather than mesh size.Nanite подгружает и отсекает геометрию маленькими кластерами и выбирает детализацию по пикселям, поэтому его цена зависит от разрешения экрана, а не от размера меша.
Masks are the slow pathМаска — медленный путь
Masked materials make Nanite evaluate the material during rasterization and stack overdraw in dense crowns. Opaque geometry skips all of that.Masked-материалы заставляют Nanite вычислять материал прямо при растеризации и копят перерисовку в плотной кроне. Непрозрачная геометрия обходится без этого.
Real silhouettes everywhereНастоящий силуэт везде
Shadows, distance and lighting all see the actual leaf shape instead of a card, so foliage holds up from close-up to the horizon.Тени, дальние планы и освещение видят настоящую форму листа, а не карточку, — листва держится и вблизи, и на горизонте.
Drag across the viewportПроведите по вьюпорту
Left, the source: a few quads with an alpha mask. Right, the Nanite-ready mesh, where every leaf is geometryСлева исходник — несколько квадов с альфа-маской. Справа меш для Nanite, где каждый лист — геометрия
Promo videoПромо-видео
The whole workflow, from a masked asset in Blender to Nanite in UnrealВесь процесс — от ассета с маской в Blender до Nanite в Unreal
What it handles for youЧто аддон берёт на себя
Alpha to contoursАльфа в контуры
Marching squares on the exact texture region the UVs use, with separate simplification for bodies and holes.Marching squares по той части текстуры, что реально под UV, с отдельным упрощением для тел и дырок.
Real holesНастоящие дырки
Transparent gaps inside a leaf or a grate are cut with an exact Boolean, so lace and cells stay open.Прозрачные просветы внутри листа или решётки вырезаются точным Boolean — кружево и ячейки остаются открытыми.
UVs, normals, colorsUV, нормали, цвета
UVs come from a densified copy, custom normals and color attributes from the source, with face winding matched to it.UV берутся с уплотнённой копии, кастомные нормали и цвета — с исходника, ориентация граней совпадает с ним.
CachingКэширование
Repeated cards are recognised by their UVs and reuse geometry already built. On the author’s heaviest tree that took a run from 2 h to 4 min.Повторяющиеся карточки узнаются по UV и переиспользуют уже построенную геометрию. На самом тяжёлом дереве автора это сократило прогон с 2 ч до 4 мин.
Estimate and Quick TestОценка и Quick Test
See the runtime before you start, and preview one instance of every unique part in seconds.Время известно до запуска, а Quick Test за секунды показывает по одному экземпляру каждой уникальной части.
Progress and cancelПрогресс и отмена
Blender stays responsive with a progress bar. Esc rolls the scene back to where it was.Blender отзывчив, есть прогресс-бар. Esc возвращает сцену в исходное состояние.
How it worksКак это работает
Four stages per loose part, one part in memory at a timeЧетыре этапа на каждый кусок, в памяти — по одному куску
- 01
SplitРазделение
By material, then into loose parts. Parts without an alpha texture, like bark, pass through untouched.По материалам, затем на куски. Части без альфа-текстуры, например кора, проходят без изменений.
- 02
TraceТрассировка
Alpha in the UV region is traced, each contour classified as body or hole, simplified and filtered.Альфа под UV трассируется, каждый контур — тело или дырка, затем упрощение и фильтрация.
- 03
ProjectПроекция
Contours are mapped onto the densified surface and filled. Holes are cut with a Boolean.Контуры переносятся на уплотнённую поверхность и заливаются. Дырки вырезаются Boolean.
- 04
Transfer and mergeПеренос и сборка
UVs, normals and colors carry over, and every piece joins into
name_nanite.UV, нормали и цвета переносятся, все куски собираются вимя_nanite.
Get Ready For NaniteКупить Ready For Nanite
Available on Gumroad and Blendkit. Install it in Blender 4.5 or newer, run Quick Test on one asset and tune from there with the docs.Продаётся на Gumroad и Blendkit. Установите в Blender 4.5 или новее, запустите Quick Test на одном ассете и настройте по вики.