Подписывайтесь на наш Telegram и не пропускайте важные новости! Перейти

Вопрос Day of Defeat — Расчет 2D боксов для лежачих игроков (Prone)

Sloppy
Начинающий
Начинающий
Статус
Оффлайн
Регистрация
13 Фев 2026
Сообщения
394
Реакции
7
Народ, кто плотно сидит на реверсе старой школы, в частности Day of Defeat? Пишу простенький external ESP и уперся в классику жанра.

Для обычных стоек (стоя или на кортах) боксы рисуются вполне сносно, но как только противник принимает горизонтальное положение (ложится), визуализация летит к чертям. Позиция бокса перестает соответствовать реальной модели. Проблема в том, что в классе игрока у меня есть координаты только одной точки — по сути, это центр модели. Никаких готовых векторов для головы или конечностей вытащить пока не удалось.

Кроме того, когда персонаж лежит, он может вращаться по осям XYZ. В структуре игрока нашел несколько float-переменных, которые ведут себя как углы: значения скачут от -180 до +180 и есть нормализованные от -1 до +1. Очевидно, что это Yaw/Pitch/Roll, но как их грамотно прикрутить к отрисовке 2D бокса?

Суть вопроса:
  1. Как правильно рассчитать 2D координаты для бокса, если из данных есть только «центр» и углы поворота?
  2. По какой логике лучше трансформировать эти углы в габариты бокса, чтобы он адекватно описывал лежачую модель, а не превращался в узкий столб?
  3. Есть ли проверенный способ высчитать смещение (offset) относительно центральной точки для отрисовки именно «лежачего» прямоугольника?

Если кто-то уже ковырял подобные механики на GoldSrc или раннем Source, подкиньте дельный совет по математике или вектору смещения. Обычный WorldToScreen тут отрабатывает честно, но самих точек для построения рамки не хватает.

Кто как фиксил отрисовку при смене анимации на prone?
 
Назад
Сверху Снизу