Кста, благодаря клоуну на рупоре который решал отвечать используя нейронку добавлю ещё прикол от нейронки)
Дал ей промпт на счёт механики прогруза у майна(у нашей спагетти-помойки тот же механизм, сам промпт ниже в кавычках)
“В таком случае прогружает ли движок майна объекты например скрытые горой, но всё ещё находящиеся в той самой дистанции прогрузки чанков? Например между игроком и строением из множества разных блоков стоит гора, будет ли это самое строение нагружать ресурсы компьютера?”
Да, чанки со строением будут прогружены в память, но не будут полноценно нагружать видеокарту — именно за счёт механизмов отсечения, специфичных для Minecraft.
Что именно происходит
Чанк загружается в RAM. Если строение находится в пределах дистанции прорисовки (render distance), его чанк подгружается в оперативную память вместе со всеми блоками и сущностями. Это нужно не для рендера, а для работы логики: чтобы в здании могли жить мобы, работать редстоун, течь вода и т. п.
Грани блоков не попадают в меш. При сборке меша чанка движок сразу отсекает:
грани между двумя сплошными блоками;
блоки, полностью окружённые сплошными блоками со всех сторон.
То есть гора и само строение «обсчитываются» локально: каждый блок смотрит на своих соседей и решает, какие из его 6 граней вообще имеет смысл рисовать. Если гора перекрывает все грани строения, они просто не добавляются в буфер для видеокарты.
Нет лишних draw calls. Поскольку эти грани не попали в итоговый меш, GPU их не обрабатывает — никаких растеризации, шейдеров и т. д.
Где остаётся нагрузка
Даже если строение полностью скрыто горой, оно всё равно даёт небольшую нагрузку:
CPU (логика): чанк продолжает тикать (tick). В нём обновляются редстоун-схемы, спавнятся/двигаются мобы, обновляются жидкости. Это происходит независимо от видимости.
RAM: данные о блоках и сущностях хранятся в памяти.
Сборка меша: при движении камеры Minecraft заново пересчитывает видимость граней в ближайших чанках, чтобы понять, что теперь видно, а что нет. Это дешёвая операция по сравнению с рендером, но она всё же требует ресурсов CPU.
А вот нагрузка на GPU из‑за самого строения будет минимальной: если его грани не попали в меш, видеокарта их не трогает.
Роль модов (Sodium и др.)
В ванильном Minecraft отсечение довольно простое: «сосед сплошной — грань не рисуем». Моды вроде Sodium делают это умнее и быстрее:
используют многопоточную сборку мешей;
применяют более агрессивные проверки frustum culling на уровне подчанков (16×16×16);
лучше обрабатывают полупрозрачные блоки (листва, стекло), чтобы не рисовать лишнее.
Благодаря этому даже в сложных сценах (гора перед большим зданием) количество реально отправляемых на GPU треугольников сильно сокращается.
Практический пример
Допустим, у тебя дальность прорисовки 12 чанков, между игроком и большим замком стоит сплошная гора.
Чанки замка в памяти — да.
Логика в замке (мобы, редстоун) работает — да.
Грани стен замка, закрытые горой, не попадают в меш — нет лишних треугольников.
Видеокарта не тратит ресурсы на отрисовку этих граней.
То есть основная «нагрузка» — это хранение данных и логика, а не сам рендер.
Для подтверждения промпта