Для эффективного рендеринга больших ландшафтов с множеством объектов необходимо учитывать две важные области. Один из них - минимизировать избыточную работу, рисуя только то, что видно под текущим углом обзора камеры, а другой - максимизировать эффективность рендеринга того, что видно.
Существует два основных способа минимизировать избыточную работу рендеринга. Сначала вы хотите избежать рисования чего-либо, что находится вне поля зрения камеры. Этот выбор видимости может быть ускорен с использованием различных структур данных: октодеревьев, квадродеревьев, сферных деревьев, деревьев bsp (как правило, более подходящих для менее открытых сред, а не ландшафтов) и т. Д. Некоторый вид иерархической организации сцен также полезен для ускорения такого рода выбраковки Те же структуры данных также можно использовать для пропуска визуализации объектов ниже определенного порогового размера на экране.
Во-вторых, вы хотите избежать рендеринга объектов, которые закрыты ближайшими объектами. Существует много различных методов отбора окклюзии, некоторые из которых используют ускорение графического процессора через запросы окклюзии, а другие работают исключительно на процессоре. Значение выбраковки окклюзии будет зависеть от ваших типичных углов обзора камеры, шероховатости местности и размеров объектов на местности. Относительно плоская открытая местность с небольшими объектами или камерой, которая смотрит в основном вниз на землю, а не на горизонт, уменьшит возможности выбраковки окклюзии. Некоторая иерархическая организация вашей сцены снова поможет при отбраковке окклюзии, так как если родительский объект закрыт, вы можете пропустить тесты для его детей.
После того, как вы свернули набор объектов, которые необходимо визуализировать, вы можете обратить свое внимание на максимизацию эффективности рендеринга для видимых объектов. Здесь полезны техники уровня детализации (нижние поли-сетки для удаленных объектов). Техника самозванца, упомянутая в другом ответе, является другим подходом, который может быть полезен, заменяя сложную геометрию простыми рекламными щитами. Стоит также использовать различные подходы к созданию экземпляров геометрии - современное графическое оборудование может отображать множество копий одной и той же геометрии с разными позициями и другими вариациями с помощью одного вызова графического API. Наконец, здесь применяются все стандартные методы для эффективного использования графического оборудования: сортировка для максимальной эффективности рендеринга (в некоторой степени зависит от оборудования), минимизация избыточной работы на кадр, эффективная упаковка геометрии, оптимизация вершинных и пиксельных шейдеров и т. Д.
Каждая из упомянутых областей довольно сложна сама по себе, и есть много статей, книг и статей, подробно описывающих детали. Надеемся, что упомянутых здесь методов достаточно, чтобы указать вам правильное направление для некоторых исследований Google.