Прихожу к выводу, что общая оптимизация не всегда уместна.
Сколько игроков, столько и устройств.
Например, тот же «кольцевой буфер» в моде. Он экономит на работе драйвера видеокарты. Обычно игра заливает каждую пачку вершин в один и тот же буфер, и драйвер каждый раз проверяет, не читает ли его ещё видеокарта, и при необходимости тайком выделяет новую память. Мод вместо этого сразу выделяет один большой буфер и пишет пачки в него друг за другом, а видеокарте просто говорит, с какого места читать.
На Андроиде эта схема часто только мешает. Во-первых, драйверы видеокарт на мобилках обычно уже имеют похожий механизм внутри, так что экономить там почти нечего. Во-вторых, настоящего OpenGL на телефоне нет: Pojav и подобные переводят его в мобильную версию через прослойку, и она часто подделывает наш буфер обычным копированием. В итоге выходит то же самое, что без мода, плюс лишняя работа.
Короче говоря, выигрыш от кольцевого буфера есть, когда FPS упирается в процессор: мы снимаем с него всю эту диспетчеризацию вокруг каждой пачки вершин. Если же упираешься в видеокарту, процессор и так простаивает в ожидании, и буфер ни помогает, ни мешает.
Кстати, на встроенных видеокартах функция «Вершины сразу в кольцо» должна неплохо экономить пропускную способность памяти: вершины не копируются лишний раз. А это узкое место, ведь встройка делит память с процессором.
И таких технических тонкостей многовато. Поэтому нужно делать режим тестирования, в котором мод прогонит ваше устройство через ряд сцен (бенчмарков) и выяснит, какие оптимизации для вас работают, какие вредят, а какие бесполезны. Чтобы мод сам подобрал для вас оптимальный конфиг. Думаю, это будет в следующем обновлении.
Кстати, я видел некоторые стебающие меня комменты со скринами нейронки в соавторах коммитов моего мода, а чтож вы с этими нейронками за столько времени только своих лагающих читов да визуалов напастили? 😄 Или вы даже не сумели клод заставить профилировать клиент? Идите дальше свои 30 фпс визуалс делайте, мамкины "селфкодеры", которые соавторство коммитов убирают в страхе. Поколение нубов блин 😄
Post #5368
5.76K
Грыжа Zako — Исправил краши с вулканом на 1.21.11 и совместимость с Xaeros WorldMap на 26+ — Для LunarClient заменил отрисовку ландшафта на пакетную на видеокартах NVIDIA. Для чего-то лунар специально для видеокарт NVIDIA отправляет куски ландшафта рендериться отдельно…
- ❤ 65
- 🤡 9
- 👍 4
- 👏 1
- 👀 1