Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Баг с дистанцией до цели #387

Open
DmitriySolontsevoy opened this issue Jan 4, 2022 · 12 comments
Open

Баг с дистанцией до цели #387

DmitriySolontsevoy opened this issue Jan 4, 2022 · 12 comments
Labels

Comments

@DmitriySolontsevoy
Copy link

Если вращать камерой, стоя на месте, расстояние до цели на радаре будет меняться.
ss_dima_01-04-22_16-20-18_(l01_escape)
ss_dima_01-04-22_16-20-13_(l01_escape)
В оригинале такого не наблюдал

@xrSimpodin
Copy link
Member

Не подтверждаю
ss_admin_01-06-22_17-31-00_(l03_agroprom)
ss_admin_01-06-22_17-31-03_(l03_agroprom)

@DmitriySolontsevoy
Copy link
Author

Специально проверял на чистой игре + последний релиз OGSR

@xrSimpodin
Copy link
Member

кстати да, есть. Но не всегда и не везде. ЧуднО.

@xrSimpodin xrSimpodin added the bug label Jan 10, 2022
@xrModder
Copy link
Contributor

Подсказка: проблема в функции CUIMapWnd::SetTargetMap

@xrSimpodin
Copy link
Member

Сомнительно

@v2v3v4
Copy link
Contributor

v2v3v4 commented May 29, 2022

Там берётся позиция Device.vCameraPosition: xrGame\map_location.cpp

@DmitriySolontsevoy
Copy link
Author

DmitriySolontsevoy commented Sep 2, 2022

В методе UpdateSpotPointer (map_location.cpp) сделал вместо:

Fvector2 tt = map->ConvertLocalToReal(m_position_on_map);
Fvector ttt;
ttt.set		(tt.x, 0.0f, tt.y);
float dist_to_target = Level().CurrentEntity()->Position().distance_to(ttt);
map->SetPointerDistance	(dist_to_target);

Вот так:

Fvector2 tt = sp->MapLocation()->Position();
Fvector ttt;
ttt.set(tt.x, 0.0f, tt.y);
float dist_to_target = Actor()->Position().distance_to(ttt);
map->SetPointerDistance	(dist_to_target);

Полечило

@joye-ramone
Copy link
Member

выглядит логично. я перенесу в репу

@joye-ramone
Copy link
Member

Нет, не работает нормально. Вообще я этот баг не могу повторить. Нужно больше информации

@DmitriySolontsevoy
Copy link
Author

@joye-ramone да, заметил. Мой вариант работает правильно только тогда, когда я нахожусь на той же локации, на которой метка цели. Если быть на другой локации, дистанция приведёт к рандомной точке на карте (предположительно к координатам, которые занимает цель на той локации, на которой она находится).
А по поводу воспроизведения бага. Специально только что повторил на свежем релизе OGSR и чистой игре. Первое же задание на кордоне пойти к Петрухе - при вращении камеры дистанция меняется

@joye-ramone
Copy link
Member

Ок проверим.

@joye-ramone
Copy link
Member

да, так и есть

  1. сейчас в движке если точка на той же карте где ГГ - баг есть, но если точка на другой локе - указываються координаты до ближайшего перехода и бага нету
  2. с твоим фиксом наоборо расстояние до точки на одной локе начинает работать верно, а для другой локи нет

Можно просто в лоб совместить в целом, ну или найти причину бага. Посмотрю что можно сдлеть

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Development

No branches or pull requests

5 participants