Лимит памяти в UEFN: полоса 100 тысяч и ошибка публикации

Содержание
  1. Полоса памяти — это бюджет проекта, а не память твоего устройства
  2. Порог, за которым публикация становится невозможной
  3. Отдельные 3D-модели имеют собственные ограничения
  4. Что именно съедает бюджет
  5. Чего мы не утверждаем
  6. Порядок действий, когда валидация упала
  7. Это не про SSD и не про оперативную память
  8. Коротко
  9. Источники

Полоса памяти в UEFN упирается в 100 тысяч единиц, и если хотя бы одна зона уровня выходит за этот порог, остров опубликовать не получится. Это и есть та самая ошибка валидации, из-за которой ты сюда пришёл.

Ниже — что именно показывает полоса, где проходит граница публикации, какие отдельные ограничения действуют на 3D-модели, и главное: где заканчивается документация Epic и начинаются догадки, которые мы не пишем.

Полоса памяти — это бюджет проекта, а не память твоего устройства

Первое, что стоит понять: полоса памяти в UEFN не имеет отношения к тому, сколько гигабайт оперативной памяти стоит в твоём компьютере и сколько места осталось на диске. Это внутренний бюджет контента острова, который редактор считает сам и показывает тебе в виде шкалы.

Полоса текущего использования памяти показывает максимум 100 тысяч единиц памяти. То есть шкала не безграничная: у неё есть явный потолок, и ты видишь, насколько близко к нему подошёл, ещё до того, как нажмёшь «опубликовать».

Важная деталь, которую часто пропускают: единица памяти — это не мегабайт. Сколько именно мегабайт «весит» одна единица, документация, на которую мы опираемся, не называет. Поэтому любые пересчёты в духе «100 тысяч единиц — это примерно столько-то гигабайт» мы не делаем и тебе не советуем. Работай со шкалой в её собственных единицах.

Порог, за которым публикация становится невозможной

Правило звучит коротко: если любая зона уровня превышает 100 тысяч единиц памяти, опубликовать остров не удастся.

Здесь два момента, которые стоит прочитать внимательно.

Считается по зонам, а не «в целом по острову». Формулировка Epic — про зону уровня. Это значит, что ситуация «в целом у меня всё нормально, просто один участок перегружен» не является смягчающим обстоятельством. Одна зона за порогом — и публикация не состоится.

Это не предупреждение, а стоп. Валидация не пропустит остров дальше. Ты не получишь «опубликовано с замечаниями» — ты получишь отказ.

Именно поэтому полоса полезна не в момент публикации, а задолго до него. Если ты видишь, что шкала ползёт вверх во время работы над конкретным участком, это и есть момент что-то изменить — а не через неделю, когда придётся перебирать весь уровень.

Отдельные 3D-модели имеют собственные ограничения

Помимо общего бюджета зоны, документация Epic описывает ограничения, которые действуют на каждый отдельный static mesh. И ведут они себя по-разному.

Что проверяется Порог Что произойдёт
Кук одного отдельного static mesh 2 Gigabytes (GB) Жёсткий лимит: валидация острова падает
Количество вертексов LOD0 одного меша 30 тысяч Редактор показывает предупреждение о риске проблем с памятью

Разница принципиальная.

Лимит в 2 GB на кук одного меша — жёсткий. Превышение означает, что валидация острова не пройдёт. Здесь нет пространства для «ну почти влезло».

Порог в 30 тысяч вертексов на LOD0 — предупреждение. Редактор сигнализирует о риске проблем с памятью, но это не то же самое, что запрет публикации. Это подсказка: вот этот меш — кандидат на то, чтобы съедать бюджет.

Что именно съедает бюджет

Здесь нужно быть честным насчёт границ того, что мы знаем.

Документация Epic, на которую мы опираемся, не даёт рейтинга типов контента по аппетиту к памяти. Мы не можем сказать тебе «материалы съедают больше, чем звук» или «эффекты дороже геометрии» — таких утверждений в источниках нет, и выдумывать их мы не будем.

Что мы можем сказать обоснованно: оба явных числовых ограничения на уровне отдельного ассета, которые описывает Epic, касаются static mesh — кука модели и количества вертексов на LOD0. То есть именно 3D-геометрию документация регламентирует отдельно и прямо. Для новичка это достаточный ориентир, с чего начинать разбор, когда полоса подошла к потолку: импортированные модели с тяжёлым LOD0 — первое, на что смотреть, потому что именно о них редактор и предупреждает.

Это ориентир по структуре документации, а не измеренный рейтинг потребления. Разницу держи в голове.

Чего мы не утверждаем

  • Не знаем, сколько мегабайт в одной единице памяти. Epic этого не называет в этих документах.
  • Не знаем порога для количества мешей на зону. Такого числа в документации нет — ограничения описаны на один отдельный меш, а не на их количество.
  • Не знаем, как именно считаются другие типы ассетов в общий бюджет зоны. Что они учитываются — логично, ведь бюджет общий; но никаких собственных порогов для них здесь не приведено.
  • Не утверждаем, что эти числа вечны. Они — то, что записано в документации Epic. Если Epic их изменит, изменимся и мы.

Порядок действий, когда валидация упала

  1. Прочитай текст ошибки до конца. Валидация может падать не только из-за памяти. Сначала убедись, что речь идёт именно о ней.
  2. Посмотри на полосу памяти по зонам, а не на «общее ощущение». Поскольку порог в 100 тысяч единиц применяется к зоне уровня, искать нужно конкретную перегруженную зону.
  3. Найди меши, на которые редактор показал предупреждение о LOD0. Это модели, у которых LOD0 превышает 30 тысяч вертексов. Они не блокируют публикацию сами по себе, но это самый очевидный список кандидатов на оптимизацию.
  4. Проверь, нет ли меша, который превышает лимит кука в 2 GB. Если такой есть — это не «оптимизация на потом», а причина падения валидации прямо сейчас.
  5. Упрости тяжёлую геометрию. У Epic есть отдельная страница документации именно про упрощение static mesh в Fortnite — она ниже, в источниках.
  6. Опубликуй заново и посмотри на полосу ещё раз. Если зона всё ещё за порогом — ищи дальше в этой же зоне, а не по всему острову.

Это не про SSD и не про оперативную память

Отдельно, потому что путаница здесь постоянная: ни одно из описанных ограничений не лечится апгрейдом железа. Ни более быстрый накопитель, ни больший объём оперативной памяти, ни перенос проекта на другой диск не изменят того, что показывает полоса памяти UEFN и что проверяет валидация острова.

Бюджет в 100 тысяч единиц на зону, лимит в 2 GB на кук меша и предупреждение на 30 тысячах вертексов — это ограничения контента острова. Они одинаковы для всех, кто публикует, независимо от того, на чём ты работаешь. Единственный способ вписаться в них — изменить сам контент.

Коротко

Полоса памяти в UEFN показывает максимум 100 тысяч единиц, и превышение этого порога любой зоной уровня делает публикацию невозможной; отдельно действуют жёсткий лимит в 2 GB на кук одного static mesh и предупреждение, когда LOD0 меша превышает 30 тысяч вертексов.

Источники

Частые вопросы

Сколько памяти можно потратить на остров в UEFN?

Полоса текущего использования памяти в UEFN показывает максимум 100 тысяч единиц. Это и есть верхний предел, который ты видишь в редакторе.

Почему остров не публикуется из-за памяти?

Если любая зона уровня превышает 100 тысяч единиц памяти, опубликовать остров не получится. Достаточно одной зоны за порогом — остальной проект не спасает.

Есть ли лимит на одну 3D-модель?

Да. На кук одного отдельного static mesh действует жёсткий лимит в 2 Gigabytes (GB). Превысишь — валидация острова падает.

Что означает предупреждение о 30 тысячах вертексов?

Если LOD0 меша превышает 30 тысяч вертексов, редактор показывает предупреждение о риске проблем с памятью. Это предупреждение, а не запрет публикации.

Поможет ли более мощный компьютер или больший SSD?

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

Сколько мегабайт в одной единице памяти UEFN?

Epic этого не называет в документации, на которую мы опираемся. Поэтому пересчитывать единицы в мегабайты не стоит — это будет выдумка.

Источники