Все статьи
Туториалы · 6 min read

Модульные киты, которые не выглядят модульными: дисциплина сетки, пивоты и вариация

Как спроектировать модульный кит окружения: выбор сетки и высоты этажа, конвенция пивота, что заставляет детали защёлкиваться, стартовый список из 12 деталей, техники вариации, что прячут повтор, и непрямоугольные раскладки, требующие инструментов.

Illustration of modular building pieces snapped to a construction grid

Коротко: модульный кит живёт или гибнет по трём решениям, принятым до появления первого меша: размер сетки, высота этажа и конвенция пивота. Если взять их верно, уровни собираются как защёлкивающиеся кирпичи; если ошибиться, каждый стык стены навсегда становится ручным трудом. Вот полный чек-лист: сетка, пивоты, стартовый список деталей, приём трёх масштабов для сокрытия повтора и непрямоугольные раскладки, где ручная сборка рассыпается.

Кирпичная стена — тысячи одинаковых модулей, читающихся как одна поверхность Старейший модульный кит в мире. Никто не смотрит на кирпичную стену и не видит повтора, потому что рисунок кладки, раствор и выветривание ломают ритм на трёх разных масштабах. Вашему киту нужны те же три слоя.

Выберите сетку и сделайте её законом

Выберите одну базовую единицу, что делится начисто: 1 м с подразделениями 0,5/0,25, или лестницу степеней двойки, и требуйте, чтобы каждая деталь кита занимала целые единицы. Две защёлкнутые детали должны встречаться заподлицо.

Сетка — контракт между каждым художником, что когда-либо коснётся кита. Сегменты стен идут в 1×, 2×, 4× единицы; высота этажа фиксируется рано (3 м и 4 м распространены, потому что хорошо делятся и читаются просторно через игровую камеру). Кислотная проверка: соберите любые две детали на сетке: ни щелей, ни z-fighting, ни «сдвинь на полединицы». Деталь, которую надо сдвигать, — сломанная деталь, а не привередливый уровень.

Тонкость, что кусает команды спустя месяцы: выбирайте сетку с учётом настроек снапа вашего движка. Если кит создан в метрике, а левел-художники снапят в степенях двойки, рассогласование всплывает как тысячи 3-см щелей, которые никто не может объяснить и которые все закрывают вручную. Решите значение снапа в тот же день, что и сетку, и запишите оба в контракт кита.

Пивоты решают между защёлкиванием и страданием

Одна конвенция, применённая к каждой детали: угол низ-зад-лево (или низ-центр), всегда НА сетке, никогда не плавающий в середине меша. Вращение должно происходить чистыми шагами 90° вокруг этой точки.

Стена, чей пивот сидит там, где его оставил экспорт из DCC, стоит нескольких секунд подгонки на размещение. Умножьте на тысячи размещений по проекту, и небрежность пивотов становится неделями чистого трения, самым избегаемым пожирателем времени в арте окружений. Конвенция также кодирует направление: с низ-зад-лево художники усваивают, что стены «растут» вправо и вверх, и мышечная память делает остальное, так что размещение становится автоматическим, а не обдуманным.

Два спутника-правила, что предотвращают тонкие сбои: держите меш заподлицо с его границами (заблудший выступ в 1 см ломает тайлинг способом, доводящим до безумия при диагностике), и моделируйте водонепроницаемые угловые детали: внутренние и внешние углы как отдельные меши, а не стены под ус, потому что ус в редакторе никогда не переживает вторую ревизию и рождает швы под каждым светом.

Стартовый кит меньше, чем вы думаете

Около дюжины мешей покрывает первый интерьерный кит: выпустите его, постройте настоящую комнату, и пусть комната скажет вам, чего не хватает.

  • пол 1×1 и 2×2
  • стена, стена-с-дверью, стена-с-окном
  • внутренний угол, внешний угол
  • дверной наличник, одна лестница, одна деталь потолка
  • 2–3 «брейкера»: прогон трубы, ящики, балка

Киты, спроектированные исчерпывающе заранее, всегда содержат детали, которыми никто не пользуется, и лишены той единственной детали, что нужна всем в первый день. Растить кит под давлением реальной сборки держит его поджарым, и, что важно, держит согласованными его тексельную плотность, число материалов и именование, потому что каждое добавление наследует конвенции от рабочей детали, а не от спека, который никто не перечитывает. Первая настоящая комната — лучший дизайнер кита, что у вас есть; она жалуется точно и бесплатно.

Прятать повтор

Повтор проявляется, когда глаз находит ритм, поэтому ломайте ритм на трёх масштабах: силуэт, материал и история (свет и пропы).

  • Силуэтные брейкеры на интервалах, что глаз не может сосчитать. Чередуйте на 5, 7, 11, простых промежутках, никогда каждую 4-ю деталь; регулярный слом есть ритм, просто медленнее, который глаз всё равно находит.
  • Наличник и хлам через швы. Труба, пересекающая три детали стены, сшивает их в одну поверхность; декаль над стыком стирает его целиком. Это техника с наивысшим возвратом в минуту в модульном дрессинге.
  • Два-три состояния износа одного материала, назначенные неравномерно: тот же приём, что и в кирпичной стене. Vertex paint или пофрагментные данные дешевле лишних текстур и ломают копи-пейст-прочтение.
  • Свет делает дифференциацию. Одинаковые коридоры под разными температурами света читаются как разные места; это бесплатная вариация, что не стоит геометрии.
  • Вращение и зеркалирование, где дизайн позволяет: половая плитка в четырёх вращениях учетверяет своё видимое разнообразие при нулевой стоимости ассета.

Кирпичная стена здесь идеальный учитель: каждая единица одинакова, но рисунок кладки (силуэт), раствор и выветривание (материал) и то, как свет скользит по ней (история), сочетаются так, что никто никогда не воспринимает повтор. Скопируйте этот стек.

Обнажённый несущий каркас строящегося здания Настоящее модульное строительство: одинаковые структурные единицы на строгой сетке, собранные без щелей. Игры воссоздают эту логику в миниатюре: сетка и пивот суть то, что заставляет детали защёлкиваться.

За пределами квадратной сетки

Прямоугольники — лёгкий случай; круглые комнаты, гекс-платформы и радиальные раскладки проваливаются вручную, потому что ручное вращение никогда не замыкает петлю начисто. Пусть инструменты владеют математикой.

Всякий, кто собирал вручную круглую камеру, знает, что последний сегмент никогда не входит: накопленная ошибка вращения с плавающей точкой оставляет узкую щель, что «правится» на глаз, а затем снова ломается в следующий раз, когда кто-то её касается. Инструменты сетки, что раскладывают прямоугольные, круглые, полигональные и гекс-компоновки со снапом и повращением по ячейкам прямо на поверхности (это умеют сетки Numivo), превращают эти раскладки из особых случаев в ещё одну кисть и замыкают петлю точно, всякий раз, без накопленной ошибки, которую надо отодвигать.

Полевые цифры, которые стоит украсть

  • Базовые единицы, переживающие продакшн: 1 м (метрика) или степенные лестницы 0,25/0,5/1/2/4 м
  • Высоты этажа, хорошо читающиеся в игре: 3 м интерьеры, 4 м индустриальные
  • Размер стартового кита: ~12 мешей, растить под давлением реальной сборки
  • Интервал брейкеров: простые интервалы (5/7/11), никогда регулярные
  • Тексельная плотность: выберите одну (напр. 10,24 px/см) и держите каждую деталь на ней, потому что смешанная плотность выдаёт модульность быстрее геометрии

Мини-FAQ

Должен ли кит быть один меш на деталь или на основе трима? Оба выпускают AAA-игры. Трим-листы выигрывают по текстурной памяти и согласованности; уникальные детали выигрывают по вылепленной детализации. Большинство зрелых китов их сочетают: трим на 80 % соединительных поверхностей, уникальные меши на геройские моменты.

Как натянуть сетку на существующий хаотичный кит? Не масштабируйте уровни, а перестройте кит под сетку и пересоберите ключевые сцены из новых деталей. Больно однократно; альтернатива: платить налог за подгонку на размещение вечно, куда дороже в разбросе по проекту.

Когда модульность — неверный инструмент? Геройские моменты. Тронный зал, место крушения, финальная виста заслуживают штучной геометрии, потому что модульность покупает скорость для соединительной ткани именно ради того, чтобы вы могли позволить себе ручную работу там, где она важна. Игра, модульная всюду, читается как модульная всюду.

Сколько состояний износа мне на самом деле нужно? Два-три. Одно — выдающий копи-пейст признак; четыре и больше — убывающая отдача и стоимость текстурной памяти. Два состояния, назначенные на позиции простых интервалов, уже ломают ритм для человеческого глаза.

До первого меша напишите одностраничный контракт кита: единица сетки, значение снапа, высота этажа, правило пивота, схема именования, список деталей. Страница стоит час. Её отсутствие стоит каждого часа после.