- Статус
- Оффлайн
- Регистрация
- 13 Фев 2026
- Сообщения
- 211
- Реакции
- 5
Народ, кто ковыряет ARC Raiders? Столкнулся с траблой при переходе на ViewTarget и использовании CameraManager для отрисовки ЕСП.
Короче, по фактам: сама логика вроде подхватилась, данные читаются, но отрисовка ведет себя максимально неадекватно. ЕСП прилипает к таргету только если смотреть ровно в него. Как только начинаю стрейфить или просто водить мышкой — начинаются инверсии: прицел увожу вверх, бокс ползет вниз, влево — бокс вправо. Ощущение, что матрица проекции не синхронизирована с текущим углом обзора камеры, либо идет жесткий конфликт с WorldToScreen при расчете ViewProjection.
Подозрения такие:
Юзаю стандартный подход через RPM, но вот этот баг с инверсией при смещении обзора просто выносит мозг. Кто-то уже сталкивался с таким поведением в этом движке? Есть ощущение, что нужно либо пересчитывать дельту между CameraLocation и ViewTarget, либо жестко фиксить ViewMatrix в момент отрисовки, чтобы исключить этот "зеркальный" эффект при движении мыши.
Братва, делитесь опытом, кто ковырял камеру в этом проекте — как лечили этот отвал проекции при стрейфах? Кидайте свои правки или мысли, где именно в трансформации матрицы может быть собака зарыта.
Короче, по фактам: сама логика вроде подхватилась, данные читаются, но отрисовка ведет себя максимально неадекватно. ЕСП прилипает к таргету только если смотреть ровно в него. Как только начинаю стрейфить или просто водить мышкой — начинаются инверсии: прицел увожу вверх, бокс ползет вниз, влево — бокс вправо. Ощущение, что матрица проекции не синхронизирована с текущим углом обзора камеры, либо идет жесткий конфликт с WorldToScreen при расчете ViewProjection.
Подозрения такие:
- Неверно вытягиваю Matrix4x4 из CameraManager.
- Погрешность в расчете вектора направления (Forward/Right/Up) относительно позиции игрока.
- Проблема с DPI scaling или FOV-коррекцией, которая накладывается поверх уже трансформированных координат.
Юзаю стандартный подход через RPM, но вот этот баг с инверсией при смещении обзора просто выносит мозг. Кто-то уже сталкивался с таким поведением в этом движке? Есть ощущение, что нужно либо пересчитывать дельту между CameraLocation и ViewTarget, либо жестко фиксить ViewMatrix в момент отрисовки, чтобы исключить этот "зеркальный" эффект при движении мыши.
Братва, делитесь опытом, кто ковырял камеру в этом проекте — как лечили этот отвал проекции при стрейфах? Кидайте свои правки или мысли, где именно в трансформации матрицы может быть собака зарыта.