LODцитата из википедии:
LOD (англ. Levels Of Detail — уровни детализации) — приём в программировании 3D-графики, заключающийся в создании нескольких вариантов одного объекта с различными степенями детализации, которые переключаются в зависимости от расстояния объекта до виртуальной камеры. Смысл приема заключается в том, что нет смысла отображать высокодетализированные объекты, находящиеся на большом расстоянии. Другой метод заключается в использовании одной основной, "Грубо - приближенной", модели и нескольких внешних надстроек к ней. Каждая последующая надстройка к основной модели будет дополняется элементами детализации пропорционально номеру надстройки. То есть на самом большом расстоянии будет отображаться единственная главная модель объекта. С приближением же последнего к камере игрока, к конвейеру отрисовки будут последовательно подключатся последующие надстройки деталей. Использование LOD способно существенно снизить требования к ресурсам компьютера при выводе графики на экран, будь то рендеринг или вывод в реальном времени.
Один из способов сделать несколько уровней детализации - это рассчитывать расстояние от объекта до игрока, но такой способ очень ресурсоемок и сильно зависит от количества объектов.
В своём примере я применил другой способ. Разбил всю карту на так называемые зоны. Создал список объектов для каждой зоны. И просто рисую только те объекты, которые рядом с игроком. Это работает намнооооооого быстрее первого способа, и менее зависит от кол-ва объектов.(разница порядка 200фпс, это при относительно небольшом кол-ве объектов)