Floor Generator — это плагин для автоматического создания напольных покрытий в 3D: паркета, ламината, плитки, палубной доски, кирпичной кладки и других повторяющихся паттернов.
Вместо того чтобы вручную моделировать сотни досок или плиток, Floor Generator автоматически генерирует геометрию по заданным параметрам.
Вместо того чтобы вручную моделировать сотни досок или плиток, Floor Generator автоматически генерирует геометрию по заданным параметрам.
Основные задачи плагина:
Floor Generator значительно ускоряет работу, потому что:
- создание паркета;
- генерация ламината;
- плитка;
- террасная доска;
- кирпичная кладка;
- декоративные панели;
- любые повторяющиеся покрытия.
Floor Generator значительно ускоряет работу, потому что:
- не нужно моделировать каждую доску вручную;
- легко менять размеры и раскладку;
- можно быстро создавать вариации;
- поддерживается случайность размеров, вращения и смещения.
Где скачать Floor Generator?
Плагин Floor Generator можно приобрести на сайте производителя: https://cg-source.com/FloorGenerator
У плагина есть бесплатная версия, у которой есть ограничения по вариантам узора - только прямоугольная. В платной ограничений по формам плитки нет.
Установка Floor Generator
После покупки или скачивания плагина у вас будет файл с расширением .dlm
Для установки вам необходимо скопировать файл в папку по следующему адресу:
C:\Program Files\Autodesk\3ds Max XXXX\Pluginsxxxx - ваша версия 3Ds Max. Обратите внимание, что версия плагина должна совпадать с версией программы.
После копирования файла плагина перезапустите 3Ds Max. Плагин появится в списке модификаторов.
Принцип работы Floor Generator
Плагин создаёт геометрию внутри сплайна или плоскости. То есть вы задаёте область, а плагин автоматически заполняет её досками или плитками.
Важно! Область должна быть компланарной, то есть все точки должны находится в одной плоскости. Только тогда плагин отработает корректно. В противном случае программа выдаст ошибку и с большой вероятностью аварийно закроется.
Плоскость может быть повернута под любым углом относительно мировых осей, главное, чтобы она была плоской.
Параметры Floor Generator
Рассмотрим все параметры плагина.
Floor Pattern
Floor Pattern - выбор типа раскладки. В коммерческой версии плагина доступны следующие варианты раскладки:
- Standart
- Herringbone
- Chevron
- Basket Weave
- Hexagon
Board Size
Это блок размера плитки. Он будет различаться в зависимости от того, какой тип кладки выбран.
Standart
Прямоугольная кладка
Max Length (Максимальная длина) - задает максимальную длину отдельной плашки.
Min Length (Минимальная длина) - задает минимальную длину плашки. Когда этот параметр заблокирован (горит синяя иконка L справа), он автоматически равен максимальной длине, и все доски получаются одинаковыми. Если разблокировать, можно делать разбежку по длине.
Spread (Распределение / Плотность) - управляет тем, каких досок будет больше, если задан диапазон между минимальной и максимальной длиной. Значение 0,5 означает равномерное распределение.
Max Width (Максимальная ширина) - задает максимальную ширину плашки.
Min Width (Минимальная ширина) - задает минимальную ширину плашки. Так же, как и с длиной, синий замок L блокирует её, делая ширину всех досок строго одинаковой.
Spread (Распределение по ширине) - работает аналогично распределению по длине, если ширина досок заложена разная.
Grout Len (Шов по длине) - ширина поперечного шва между торцами досок.
Grout Wid (Шов по ширине) - ширина продольного шва между рядами досок. Если связан замком L с предыдущим параметром, то швы со всех сторон будут одинаковые.
Min Offset (Минимальный сдвиг) - минимальный сдвиг каждого следующего ряда досок относительно предыдущего в процентном соотношении от их длины.
Max Offset (Максимальный сдвиг) - максимальный сдвиг рядов. На скриншоте замок L заблокирован на 20 %, то есть ряды смещаются строго на фиксированное расстояние, формируя ровную "палубную" раскладку.
Extrude H (Высота выдавливания) - толщина самой плашки, то есть глубина (высота) трехмерной геометрии. Галочка слева позволяет полностью отключить объём, оставив доски плоскими полигонами.
Bevel H (Высота фаски) - глубина (высота) скоса на краях плашки. Галочка включает или выключает фаску.
Outline (Ширина фаски / Врезка) - ширина самого скоса фаски по горизонтали. Замок L связывает её с высотой фаски (Bevel H), делая угол скоса ровно под 45 градусов.
Min Length (Минимальная длина) - задает минимальную длину плашки. Когда этот параметр заблокирован (горит синяя иконка L справа), он автоматически равен максимальной длине, и все доски получаются одинаковыми. Если разблокировать, можно делать разбежку по длине.
Spread (Распределение / Плотность) - управляет тем, каких досок будет больше, если задан диапазон между минимальной и максимальной длиной. Значение 0,5 означает равномерное распределение.
Max Width (Максимальная ширина) - задает максимальную ширину плашки.
Min Width (Минимальная ширина) - задает минимальную ширину плашки. Так же, как и с длиной, синий замок L блокирует её, делая ширину всех досок строго одинаковой.
Spread (Распределение по ширине) - работает аналогично распределению по длине, если ширина досок заложена разная.
Grout Len (Шов по длине) - ширина поперечного шва между торцами досок.
Grout Wid (Шов по ширине) - ширина продольного шва между рядами досок. Если связан замком L с предыдущим параметром, то швы со всех сторон будут одинаковые.
Min Offset (Минимальный сдвиг) - минимальный сдвиг каждого следующего ряда досок относительно предыдущего в процентном соотношении от их длины.
Max Offset (Максимальный сдвиг) - максимальный сдвиг рядов. На скриншоте замок L заблокирован на 20 %, то есть ряды смещаются строго на фиксированное расстояние, формируя ровную "палубную" раскладку.
Extrude H (Высота выдавливания) - толщина самой плашки, то есть глубина (высота) трехмерной геометрии. Галочка слева позволяет полностью отключить объём, оставив доски плоскими полигонами.
Bevel H (Высота фаски) - глубина (высота) скоса на краях плашки. Галочка включает или выключает фаску.
Outline (Ширина фаски / Врезка) - ширина самого скоса фаски по горизонтали. Замок L связывает её с высотой фаски (Bevel H), делая угол скоса ровно под 45 градусов.
Herringbone
Елочка
Length (Длина) - фиксированная длина одной доски.
Width (Ширина) - фиксированная ширина одной доски.
Grout Size (Размер шва) - общая ширина межплиточного шва со всех сторон.
Parallel Boards (Параллельные доски) - количество плашек, которые укладываются вплотную друг к другу в один ряд перед тем, как изменится направление или начнется следующий блок раскладки. Значение 1 означает, что идет классическая одиночная раскладка. Если поставить 2 или 3, плашки будут группироваться попарно (часто используется для создания узоров в модульном паркете или плетенке).
Extrude H (Высота выдавливания) - толщина геометрии плашки.
Bevel H (Высота фаски) - глубина фаски по вертикали.
Outline (Ширина фаски) - ширина фаски по горизонтали.
Width (Ширина) - фиксированная ширина одной доски.
Grout Size (Размер шва) - общая ширина межплиточного шва со всех сторон.
Parallel Boards (Параллельные доски) - количество плашек, которые укладываются вплотную друг к другу в один ряд перед тем, как изменится направление или начнется следующий блок раскладки. Значение 1 означает, что идет классическая одиночная раскладка. Если поставить 2 или 3, плашки будут группироваться попарно (часто используется для создания узоров в модульном паркете или плетенке).
Extrude H (Высота выдавливания) - толщина геометрии плашки.
Bevel H (Высота фаски) - глубина фаски по вертикали.
Outline (Ширина фаски) - ширина фаски по горизонтали.
Chevron
Шеврон, или французская елочка
Length (Длина) - длина доски по её длинной стороне.
Width (Ширина) - чистая ширина отдельной плашки.
Angle (Угол) - угол спила торцов доски. Именно этот параметр отвечает за то, насколько «острой» будет французская ёлочка.
Grout Len (Шов по длине) - ширина шва между торцами стыкующихся плашек.
Grout Wid (Шов по ширине) - ширина продольного шва между рядами. Замок L блокирует её, делая швы одинаковыми со всех сторон.
Extrude H (Высота выдавливания) - толщина геометрии плашки.
Bevel H (Высота фаски) - глубина фаски по вертикали.
Outline (Ширина фаски) - ширина фаски по горизонтали.
Width (Ширина) - чистая ширина отдельной плашки.
Angle (Угол) - угол спила торцов доски. Именно этот параметр отвечает за то, насколько «острой» будет французская ёлочка.
Grout Len (Шов по длине) - ширина шва между торцами стыкующихся плашек.
Grout Wid (Шов по ширине) - ширина продольного шва между рядами. Замок L блокирует её, делая швы одинаковыми со всех сторон.
Extrude H (Высота выдавливания) - толщина геометрии плашки.
Bevel H (Высота фаски) - глубина фаски по вертикали.
Outline (Ширина фаски) - ширина фаски по горизонтали.
Basket Weave
"Плетенка"
Len/Width (Длина/Ширина) - размер стороны общего квадратного блока. Так как модуль всегда квадратный, один параметр задает сразу и длину, и ширину всей ячейки.
Grout Size (Размер шва) - общая толщина шва между всеми элементами.
Sub Boards (Внутренние плашки) - количество мелких дощечек, на которое делится один большой квадратный блок. Плагин автоматически рассчитает их ширину с учетом швов, чтобы они идеально вписались в заданный габарит.
Extrude H (Высота выдавливания) - толщина геометрии плашек.
Bevel H (Высота фаски) - глубина фаски по вертикали.
Outline (Ширина фаски) - ширина фаски по горизонтали.
Grout Size (Размер шва) - общая толщина шва между всеми элементами.
Sub Boards (Внутренние плашки) - количество мелких дощечек, на которое делится один большой квадратный блок. Плагин автоматически рассчитает их ширину с учетом швов, чтобы они идеально вписались в заданный габарит.
Extrude H (Высота выдавливания) - толщина геометрии плашек.
Bevel H (Высота фаски) - глубина фаски по вертикали.
Outline (Ширина фаски) - ширина фаски по горизонтали.
Hexagon
Шестиугольник
Radius (Радиус) - расстояние от центра плитки до её вершин или краев, определяющее общий размер единичного элемента.
Grout Size (Размер шва) - общая ширина межплиточного шва между всеми гранями соседних элементов.
Extrude H (Высота выдавливания) - толщина геометрии плитки.
Bevel H (Высота фаски) - глубина фаски по вертикали.
Outline (Ширина фаски) - ширина фаски по горизонтали.
Grout Size (Размер шва) - общая ширина межплиточного шва между всеми гранями соседних элементов.
Extrude H (Высота выдавливания) - толщина геометрии плитки.
Bevel H (Высота фаски) - глубина фаски по вертикали.
Outline (Ширина фаски) - ширина фаски по горизонтали.
Variation Per Board
Вариативность для каждой доски.
Параметры в этом блоке отвечают за внесение случайного хаоса, неровностей и дефектов укладки. Это самый важный блок для придания полу фотореалистичного вида, чтобы он не выглядел идеально «пластиковым».
Параметры в этом блоке отвечают за внесение случайного хаоса, неровностей и дефектов укладки. Это самый важный блок для придания полу фотореалистичного вида, чтобы он не выглядел идеально «пластиковым».
Max / Min Rotation (Максимальный / Минимальный поворот) - задает случайный поворот отдельных плашек в плоскости пола (вокруг вертикальной оси).
Max / Min Offset X (Максимальный / Минимальный сдвиг по X) - сдвигает отдельные доски случайным образом влево или вправо вдоль их длинной стороны. Помогает сделать разбежку швов неоднородной.
Max / Min Offset Y (Максимальный / Минимальный сдвиг по Y) - случайный сдвиг досок вперед или назад (поперек рядов). Так как справа горит синий замок L, параметры по Y сейчас заблокированы и зеркально повторяют настройки по оси X.
Max / Min Tilt (Максимальный / Минимальный наклон) - один из самых полезных параметров. Он слегка наклоняет отдельные плашки относительно друг друга. В жизни деревянные доски или старая плитка никогда не лежат в идеальном горизонте. Даже минимальное значение (например, от 0,05 до 0,2) заставит фаски ловить красивые случайные блики от источников света при рендере.
Spread (Распределение) - (присутствует в каждом блоке) определяет баланс случайных значений. При 0,5 отклонения распределяются равномерно между минимальным и максимальным значениями.
Max Overlap (Максимальное перекрытие) - задает допустимый предел, на который плашки могут заходить (наползать) друг на друга при использовании случайных сдвигов или поворотов, чтобы геометрия не ломалась слишком сильно. По умолчанию стоит 0,0 мм.
Max / Min Offset X (Максимальный / Минимальный сдвиг по X) - сдвигает отдельные доски случайным образом влево или вправо вдоль их длинной стороны. Помогает сделать разбежку швов неоднородной.
Max / Min Offset Y (Максимальный / Минимальный сдвиг по Y) - случайный сдвиг досок вперед или назад (поперек рядов). Так как справа горит синий замок L, параметры по Y сейчас заблокированы и зеркально повторяют настройки по оси X.
Max / Min Tilt (Максимальный / Минимальный наклон) - один из самых полезных параметров. Он слегка наклоняет отдельные плашки относительно друг друга. В жизни деревянные доски или старая плитка никогда не лежат в идеальном горизонте. Даже минимальное значение (например, от 0,05 до 0,2) заставит фаски ловить красивые случайные блики от источников света при рендере.
Spread (Распределение) - (присутствует в каждом блоке) определяет баланс случайных значений. При 0,5 отклонения распределяются равномерно между минимальным и максимальным значениями.
Max Overlap (Максимальное перекрытие) - задает допустимый предел, на который плашки могут заходить (наползать) друг на друга при использовании случайных сдвигов или поворотов, чтобы геометрия не ломалась слишком сильно. По умолчанию стоит 0,0 мм.
General
Общие настройки. Параметры в этом блоке управляют глобальным отображением, направлением и позиционированием всей созданной раскладки целиком.
Scale (Масштаб) - глобально масштабирует всю раскладку (и плашки, и швы одновременно) в процентном соотношении. Значение 100 означает оригинальный размер, заданный в блоке Board Size. Помогает быстро подогнать размер пола под сцену без изменения отдельных параметров длины и ширины.
Direction (Направление / Угол поворота) - разворачивает всю сетку пола целиком на заданный угол (в градусах) относительно объекта. Например, если нужно пустить доски по диагонали помещения, достаточно вписать сюда 45.
Seed (Число генерации) - уникальный цифровой номер (индекс) для генератора случайных чисел. Если вам не нравится, как распределились случайные сдвиги, длины досок или их наклон (из прошлых свитков), просто измените это число (нажмите стрелочки или введите любое другое), и плагин перетасует раскладку по-новому.
Offset X (Смещение по X) - глобальный сдвиг всего полотна пола влево или вправо. Позволяет точно спозиционировать раскладку, например, чтобы у стены не оставался некрасивый узкий обрубок доски.
Offset Y (Смещение по Y) - глобальный сдвиг всего полотна пола вперед или назад. Используется для точной подгонки начала укладки (целой доски) от порога или определенного угла комнаты.
WeldThr. (Weld Threshold - Порог сшивания вершин) — когда галочка активна, плагин сшивает близко расположенные вершины на стыках геометрии, если расстояние между ними меньше указанного значения. Это помогает избавиться от микрощелей в геометрии и оптимизировать сетку, но при стандартных задачах чаще всего остается выключенным.
Direction (Направление / Угол поворота) - разворачивает всю сетку пола целиком на заданный угол (в градусах) относительно объекта. Например, если нужно пустить доски по диагонали помещения, достаточно вписать сюда 45.
Seed (Число генерации) - уникальный цифровой номер (индекс) для генератора случайных чисел. Если вам не нравится, как распределились случайные сдвиги, длины досок или их наклон (из прошлых свитков), просто измените это число (нажмите стрелочки или введите любое другое), и плагин перетасует раскладку по-новому.
Offset X (Смещение по X) - глобальный сдвиг всего полотна пола влево или вправо. Позволяет точно спозиционировать раскладку, например, чтобы у стены не оставался некрасивый узкий обрубок доски.
Offset Y (Смещение по Y) - глобальный сдвиг всего полотна пола вперед или назад. Используется для точной подгонки начала укладки (целой доски) от порога или определенного угла комнаты.
WeldThr. (Weld Threshold - Порог сшивания вершин) — когда галочка активна, плагин сшивает близко расположенные вершины на стыках геометрии, если расстояние между ними меньше указанного значения. Это помогает избавиться от микрощелей в геометрии и оптимизировать сетку, но при стандартных задачах чаще всего остается выключенным.
UV Setting
Настройки текстурных координат. Параметры в этом блоке автоматически управляют наложением текстуры на каждую отдельную плашку. Они создают разнообразие ма рисунка дерева или плитки, даже если вы используете всего одну карту, избавляя пол от эффекта «тайлинга».
UV Channel (Текстурный канал) - задает ID канала UV-развертки. Это нужно, чтобы плагин знал, на какой канал накладывать свои внутренние координаты. Если у вас в материале настроен определенный канал, он должен совпадать с этим числом.
Random Flip Mapping U (Случайное отражение по U) - при включении плагин в случайном порядке зеркально отражает текстуру на досках по горизонтали (слева направо).
Random Flip Mapping V (Случайное отражение по V) - в случайном порядке зеркально отражает текстуру на досках по вертикали (сверху вниз). Комбинация этих двух галочек дает 4 разных варианта направления текстуры из одного и того же куска изображения.
Random Offset U (Случайный сдвиг по U) - сдвигает текстуру на каждой доске в случайное положение по горизонтали. Таким образом, волокна дерева или прожилки мрамора на соседних плашках никогда не будут начинаться в одном и том же месте.
Random Offset V (Случайный сдвиг по V) - сдвигает текстуру на каждой доске в случайное положение по вертикали.
Random Flip Mapping U (Случайное отражение по U) - при включении плагин в случайном порядке зеркально отражает текстуру на досках по горизонтали (слева направо).
Random Flip Mapping V (Случайное отражение по V) - в случайном порядке зеркально отражает текстуру на досках по вертикали (сверху вниз). Комбинация этих двух галочек дает 4 разных варианта направления текстуры из одного и того же куска изображения.
Random Offset U (Случайный сдвиг по U) - сдвигает текстуру на каждой доске в случайное положение по горизонтали. Таким образом, волокна дерева или прожилки мрамора на соседних плашках никогда не будут начинаться в одном и том же месте.
Random Offset V (Случайный сдвиг по V) - сдвигает текстуру на каждой доске в случайное положение по вертикали.
Warnings
Предупреждения. Свиток выполняет функцию предохранителя для защиты 3Ds Max от зависания или вылета.
Max Boards (Максимальное количество досок) - лимит на общее число отдельных плашек, которое плагин может создать внутри одного контура.
Зачем это нужно: Если вы случайно примените FloorGenerator к огромной плоскости (например, к целой улице или масштабной локации) с мелкими размерами плашек паркета, компьютер попытается сгенерировать миллионы полигонов, намертво зависнет и вылетит.
Как только плагин упрется в этот лимит, он остановит генерацию и выдаст предупреждающее окно, защищая сцену. Если вы создаете пол для очень большой площади и уверены в силах своего ПК, это число можно смело увеличить.
Зачем это нужно: Если вы случайно примените FloorGenerator к огромной плоскости (например, к целой улице или масштабной локации) с мелкими размерами плашек паркета, компьютер попытается сгенерировать миллионы полигонов, намертво зависнет и вылетит.
Как только плагин упрется в этот лимит, он остановит генерацию и выдаст предупреждающее окно, защищая сцену. Если вы создаете пол для очень большой площади и уверены в силах своего ПК, это число можно смело увеличить.
Update
Обновление геометрии - технический блок, который управляет тем, как часто FloorGenerator пересчитывает и перестраивает полигоны пола при изменении любых параметров.
Always (Всегда) - плагин мгновенно реагирует на любые действия. Передвинули ползунок длины или изменили ширину шва — геометрия во вьюпорте перестраивается «на лету». Это удобно на небольших участках.
Manually (Вручную) - отключает автоматический пересчет. Перестраивание геометрии замораживается до тех пор, пока вы сами не нажмете на кнопку снизу.
Когда это спасает: Режим Manually незаменим на тяжелых сценах или больших площадях. Если у вас огромный пол, изменение любого параметра заставит 3ds Max надолго задуматься, просчитывая тысячи досок. Включив ручной режим, можно спокойно вбить все нужные размеры текстом с клавиатуры, не ловя зависания на каждой цифре, и один раз применить изменения.
Кнопка Update (Обновить) - становится активной только в режиме Manually. По нажатию на неё плагин один раз пересчитывает и обновляет геометрию во вьюпорте в соответствии со всеми внесенными изменениями.
Manually (Вручную) - отключает автоматический пересчет. Перестраивание геометрии замораживается до тех пор, пока вы сами не нажмете на кнопку снизу.
Когда это спасает: Режим Manually незаменим на тяжелых сценах или больших площадях. Если у вас огромный пол, изменение любого параметра заставит 3ds Max надолго задуматься, просчитывая тысячи досок. Включив ручной режим, можно спокойно вбить все нужные размеры текстом с клавиатуры, не ловя зависания на каждой цифре, и один раз применить изменения.
Кнопка Update (Обновить) - становится активной только в режиме Manually. По нажатию на неё плагин один раз пересчитывает и обновляет геометрию во вьюпорте в соответствии со всеми внесенными изменениями.
Save/Load Presets
Сохранение и загрузка пресетов - системный блок FloorGenerator, который позволяет не настраивать размеры досок, швов и вариативность с нуля для каждого нового проекта.
Save (Сохранить) - сохраняет все текущие настройки плагина (размеры, швы, фаски, параметры случайного сдвига и текстурные каналы) в отдельный файл конфигурации на компьютере.
Load (Загрузить) - открывает проводник, позволяя выбрать ранее сохраненный файл пресета и мгновенно применить все настройки к выделенному объекту.
Как это использовать на практике: Настройте один раз идеальные ходовые конфигурации (например, «Паркет палуба 1200х120 мм», «Плитка матовая 600х600 мм» или «Французская елка 45 градусов»), сохраните их через кнопку Save в отдельную папку и просто подгружайте через Load в новых сценах за один клик.
Load (Загрузить) - открывает проводник, позволяя выбрать ранее сохраненный файл пресета и мгновенно применить все настройки к выделенному объекту.
Как это использовать на практике: Настройте один раз идеальные ходовые конфигурации (например, «Паркет палуба 1200х120 мм», «Плитка матовая 600х600 мм» или «Французская елка 45 градусов»), сохраните их через кнопку Save в отдельную папку и просто подгружайте через Load в новых сценах за один клик.