Визуальная часть Фикс рендера на больших координатах | Any base any modloader

Начинающий
Начинающий
Статус
Оффлайн
Регистрация
6 Дек 2023
Сообщения
508
Реакции
3
Выберите загрузчик игры
  1. Vanilla
  2. Forge
  3. Fabric
  4. NeoForge
  5. OptiFine
  6. ForgeOptiFine
  7. Прочие моды
Короче, думаю не я один заметил у себя, что рендер в 3д на больших координатах начинает багаться

Рассказываю как это фиксить, можете не благодарить
В общем, в вашем рендере, если вы столкнулись с такой проблемой, есть подобная строка
P.S. Код показан на MCP маппингах(потому что я фиксить начал на лебимод аддоне), на других маппингах(yarn и тд, может отличаться)
Java:
Expand Collapse Copy
        GlStateManager.translated(-mc.getRenderManager().info.getProjectedView().x, -mc.getRenderManager().info.getProjectedView().y, -mc.getRenderManager().info.getProjectedView().z);
или подобной, вот еще один вариант как она выглядит
Java:
Expand Collapse Copy
                        ms.translate(-mc.getRenderManager().info.getProjectedView().getX(), -mc.getRenderManager().info.getProjectedView().getY(), -mc.getRenderManager().info.getProjectedView().getZ());
В общем, не смогу сказать почему, но на больших координатах этот способ начинает багаться
Уберите его и вместо этого сделайте 3 поля
Java:
Expand Collapse Copy
double camX = mc.getRenderManager().info.getProjectedView().x;
            double camY = mc.getRenderManager().info.getProjectedView().y;
            double camZ = mc.getRenderManager().info.getProjectedView().z;
После, найдите ваши координаты, где вы рендерите элемент(будь то джампсеркл, трейл или другие элементы)

И добавьте в них
Java:
Expand Collapse Copy
- camX
Что бы полностью строка выглядела как то так
Java:
Expand Collapse Copy
double cX = vector3d.x - camX;

После правок можете улетать на большие координаты и проверять ваш рендер, который будет пофикшен
Всем удачи!
Ща пастеры экспы опять будут прыгать от радости из-за фикса
 
в первом случае у тебя из-за больших координат все вызовы происходят чуть не одновременно, поэтому есть небольшой сдвиг. Во втором случае (фикс) все вызовы происходят одновременно и рассинхрона нет
в первом случае у тебя из-за больших координат все вызовы происходят чуть не одновременно, поэтому есть небольшой сдвиг. Во втором случае (фикс) все вызовы происходят одновременно и рассинхрона нет
точнее происходят они всегда чуть не одновременно, просто на больших координатах рассинхрон становится критичен и заметен на глаз
 
в первом случае у тебя из-за больших координат все вызовы происходят чуть не одновременно, поэтому есть небольшой сдвиг. Во втором случае (фикс) все вызовы происходят одновременно и рассинхрона нет

точнее происходят они всегда чуть не одновременно, просто на больших координатах рассинхрон становится критичен и заметен на глаз
все понял пасиб
 
Назад
Сверху Снизу