Почему врёт точка упреждения
Greyest
03 апр 2013
Точка упреждения в игре нужна для облегчения прицеливания - она должна показывать, где окажется атакуемый самолёт через промежуток времени, равный времени подлёта к нему снарядов, выпущенных атакующим.
Под спойлером много расчетов ТУ вручную:
Первый фактор: вычёркиваем. Для прямолинейно летящего самолёта ТУ рассчитывается правильно.очень похоже, что игра не учитывает скорость стреляющего самолёта. То есть его скорость не прибавляется к скорости снаряда. В то время, как алгоритм расчета ТУ её учитывает. Этот вывод подтверждается тем, что чем быстрее самолёт, тем сильнее врёт игровая ТУ.
Второй фактор: манёвр. Игра рассчитывает "моментальную" ТУ по вектору движения, не учитывая траекторию самолёта, заданную рулями. Думаю, многие видели в бою самолёт, закладывающий крутой манёвр в плоскости, перпендикулярной направлению нашего полёта, у которого вектор ТУ торчит под нелепым углом из пуза, примерно так:

Еще примеры из игры (в конце сообщения, под спойлером)
Здесь я попытался изобразить суть ошибки видимой ТУ.

В такой ситуации с точки зрения атакующего виден прямо летящий самолёт с ТУ, расположенной ровно перед ним. То есть не видно то, что сразу бросается в глаза при взгляде сбоку - уходящий куда-то вниз вектор ТУ. В реальности ТУ находится существенно дальше, чем видит атакующий со своей позиции.
А теперь представьте, что атакующий самолёт летит не точно позади цели, а немного сбоку, под углом. Теперь, если стрелять по ТУ, снаряды пройдут не только позади, но и в стороне от цели. То есть даже если стрелять перед ТУ, промах обеспечен. А если цель маневрирует еще и рулём направления? Ошибка увеличивается дополнительно.
Выводы делайте сами :)
Третий фактор: ситуация усложняется, если наш самолёт оборудован разнотипным вооружением. Понятно, что снаряды, летящие большой скоростью, прилетят к цели быстрее чем медленные, и упреждение для них нужно брать меньшее. Начиная с патча 0.5.3 "Точка упреждения показывается для вооружения самого большого калибра." (Цитата с портала, из описания патча 0.5.3). Выходит, если взять того же Густава и поставить на него пулемёты 13,2 мм с начальной скоростью снаряда 750 м/с и 30 мм пушку с начальной скоростью снаряда 540 м/с, ТУ будет рассчитываться для скорости 540 м/с. Как результат, если стрелять по ТУ, пулемётные пули пролетят далеко перед целью, а пушечные снаряды полетят в цель.
UPD: по просьбам трудящихся добавил голосование
UPD2: про ошибки ТУ и Михалычей:
UPD4: патч 0.5.3 - изменил описание особенностей упреждения при применении разнотипного вооружения.
Сообщение отредактировал Greyest: 04 май 2014 - 15:50
Под спойлером много расчетов ТУ вручную:
Spoiler
Так почему в игре иногда приходится брать упреждение, превышающее расчетное раза в два? Почему частые промахи при попытке стрелять по ТУ?Первый фактор: вычёркиваем. Для прямолинейно летящего самолёта ТУ рассчитывается правильно.
Второй фактор: манёвр. Игра рассчитывает "моментальную" ТУ по вектору движения, не учитывая траекторию самолёта, заданную рулями. Думаю, многие видели в бою самолёт, закладывающий крутой манёвр в плоскости, перпендикулярной направлению нашего полёта, у которого вектор ТУ торчит под нелепым углом из пуза, примерно так:
Еще примеры из игры (в конце сообщения, под спойлером)
Здесь я попытался изобразить суть ошибки видимой ТУ.
В такой ситуации с точки зрения атакующего виден прямо летящий самолёт с ТУ, расположенной ровно перед ним. То есть не видно то, что сразу бросается в глаза при взгляде сбоку - уходящий куда-то вниз вектор ТУ. В реальности ТУ находится существенно дальше, чем видит атакующий со своей позиции.
А теперь представьте, что атакующий самолёт летит не точно позади цели, а немного сбоку, под углом. Теперь, если стрелять по ТУ, снаряды пройдут не только позади, но и в стороне от цели. То есть даже если стрелять перед ТУ, промах обеспечен. А если цель маневрирует еще и рулём направления? Ошибка увеличивается дополнительно.
Выводы делайте сами :)
Третий фактор: ситуация усложняется, если наш самолёт оборудован разнотипным вооружением. Понятно, что снаряды, летящие большой скоростью, прилетят к цели быстрее чем медленные, и упреждение для них нужно брать меньшее. Начиная с патча 0.5.3 "Точка упреждения показывается для вооружения самого большого калибра." (Цитата с портала, из описания патча 0.5.3). Выходит, если взять того же Густава и поставить на него пулемёты 13,2 мм с начальной скоростью снаряда 750 м/с и 30 мм пушку с начальной скоростью снаряда 540 м/с, ТУ будет рассчитываться для скорости 540 м/с. Как результат, если стрелять по ТУ, пулемётные пули пролетят далеко перед целью, а пушечные снаряды полетят в цель.
UPD: по просьбам трудящихся добавил голосование
UPD2: про ошибки ТУ и Михалычей:
Spoiler
UPD3: добавил новую экспериментальную информациюUPD4: патч 0.5.3 - изменил описание особенностей упреждения при применении разнотипного вооружения.
Прикрепленные файлы
-
shot_123.jpg 374,37К
Сообщение отредактировал Greyest: 04 май 2014 - 15:50
BAYRON_LORD
03 апр 2013
Так кто же из нормальных пилотов стреляет по ТУ ? Все знают, что это не более чем сугубо относительный прибамбас примерного направления выстрела. Сам всегда стреляю на "глаз" оно и быстрее и вернее. Тебе , с твоим опытом , она то же как зайцу стоп сигнал.
Сообщение отредактировал BAYRON_LORD: 03 апр 2013 - 16:55
Сообщение отредактировал BAYRON_LORD: 03 апр 2013 - 16:55
Greyest
03 апр 2013
BAYRON_LORD (03 Апр 2013 - 16:54) писал:
Так кто же из нормальных пилотов стреляет по ТУ ? Все знают, что это не более чем сугубо относительный прибамбас примерного направления выстрела. Сам всегда стреляю на "глаз" оно и быстрее и вернее. Тебе , с твоим опытом , она то же как зайцу стоп сигнал.
zviling
03 апр 2013
Nexus_VI
03 апр 2013
Первое, что приходит в голову - ТУ рассчитывается для первой группы вооружения, т.е. для пулемётов. Скорость полёта пулемётного снаряда наверняка выше, чем пушечного, следовательно, пушки промахиваются.
Пришёл к этому выводу много летая на И-16 позднем. Стреляя точно в ТУ еле сношу несколько hp, а беря упреждение в 30-50% впереди точки гарантированно попадаю из ШВАКов. Для густава ситуация похожа, только упреждение для 30мм беру ещё больше.
Пришёл к этому выводу много летая на И-16 позднем. Стреляя точно в ТУ еле сношу несколько hp, а беря упреждение в 30-50% впереди точки гарантированно попадаю из ШВАКов. Для густава ситуация похожа, только упреждение для 30мм беру ещё больше.
BAYRON_LORD
03 апр 2013
Greyest (03 Апр 2013 - 16:56) писал:
Благодарю вас за ценный комментарий.
Сообщение отредактировал BAYRON_LORD: 03 апр 2013 - 17:24
ReadyScorp
03 апр 2013
Для самолетов с вооружением у которого высокая скорость снарядов/пули ТУ действительно врет меньше. Но беда в том, что ТУ показывается не правильно для самолетов на которых стоит только 1 тип орудий (полностью отказался от ТУ, как оказалось точность не упала, думаю, что на самом деле я уже давно стрелял "на глаз", а ТУ только мешала).
Sergey11347
03 апр 2013
Где учет пинга, положения вооружения, разница скорости полета снарядов разных орудий, искривление от перспективы? В чем суть вычислений? Школьную физику показать там где она не должна работать?
zviling
03 апр 2013
BAYRON_LORD (03 Апр 2013 - 17:03) писал:
Так что тут еще коментировать то? Ну да-по ТУ стрелять нет смысла, надо вырабатывать навык стрельбы самому. Почему так? Так косяк ТУ не единственный и не главный в игре. Переживать за раков не которые из за этого не попадают-дурь..
Greyest
03 апр 2013
Nexus_VI (03 Апр 2013 - 17:00) писал:
Первое, что приходит в голову - ТУ рассчитывается для первой группы вооружения, т.е. для пулемётов. Скорость полёта пулемётного снаряда наверняка выше, чем пушечного, следовательно, пушки промахиваются.
Пришёл к этому выводу много летая на И-16 позднем. Стреляя точно в ТУ еле сношу несколько hp, а беря упреждение в 30-50% впереди точки гарантированно попадаю из ШВАКов. Для густава ситуация похожа, только упреждение для 30мм беру ещё больше.
Пришёл к этому выводу много летая на И-16 позднем. Стреляя точно в ТУ еле сношу несколько hp, а беря упреждение в 30-50% впереди точки гарантированно попадаю из ШВАКов. Для густава ситуация похожа, только упреждение для 30мм беру ещё больше.
Sergey11347 (03 Апр 2013 - 17:06) писал:
В чем суть вычислений? Школьную физику показать там где она не должна работать?
Sergey11347 (03 Апр 2013 - 17:06) писал:
Где учет пинга, положения вооружения, разница скорости полета снарядов разных орудий, искривление от перспективы?
Используйте опцию Изменить, а не пишите несколько сообщений подряд. /ToRmoZo.
ReadyScorp
03 апр 2013
Цитата
Где учет пинга, положения вооружения, разница скорости полета снарядов разных орудий, искривление от перспективы?
Положение вооружения - практика показывает, что влияет только на расстоянии 200 и менее метров.
Скорость полета снарядов разных орудий - уже объяснили.
Искривление от перспективы - и на каком расстоянии его уже следует учитывать (в игре)?
Может сами приведете пример подсчетов?
B_E_R_K_U_T
03 апр 2013
Утверждать не буду, но мне кажется что тут не только ТУ влияет но и не соответствие скорости снарядов, она ниже заявленной. Потому и получаются такие странные упреждения, когда самолет находится ближе 400метров и беря упреждение дальше ТУ получаем промах...
Arventis_Pilot
03 апр 2013
А помоему нормально. Бета-тестеры пытаются разобраться с ошибкой в игре, которую они тестируют, на форуме
этой игры. Спасибо им за помощь и внимание к проекту.
этой игры. Спасибо им за помощь и внимание к проекту.
Sergey11347
03 апр 2013
От сервера пришла информация: тут враг, такое упреждение. Далее игрок посылает на сервер информацию куда но стреляет. За то время пока информация пошла к игроку и обратно на сервер картина спокойно может поменяться: физика полета (обсчет самого поведения крафта нонстоп происходит), а так же информация от игрока по которому ведется огонь - он-то может уклонятся и влиять на положение самолета. Но точность у нас достаточно высокая. В следствии чего на момент расчета самого факта попадания положение самолета смело может изменится на корпус. Для ваших расчетов время полета пули 540мс, мой пинг от 60мс, до 120мс, что составляет добрый кусок времени. Все еще не влияет?
Перспектива камеры от третьего лица дает погрешность в несколько градусов при стрельбе на 400 метров, это даст погрешность до 2 метров. Для Хенкеля длинной 8,2 м это цифра сопоставима. Или опять не влияет?
Так же надо отметить, что точка одна для всех орудий, не зависимо от того где они и с какой скоростью стреляют и в случае каких-нибудь амеров с пулеметами на крыльев все равно одна и круглая. Не влияет?
А теперь давайте все это в кучу и разом соберем, а потом еще и лаги с фпс прикрутим и получим, что имеем.
Все это обусловлено не физикой или ее кривизной, а особенностью удаленных вычислений и организации работы клиент-сервер. По хорошему тут должны быть механизмы сглаживания всех этих факторов, но у нас они то ли отсуцтвуют, то ли на столько слабо влияют, что о них стоит только догадываться.
Перспектива камеры от третьего лица дает погрешность в несколько градусов при стрельбе на 400 метров, это даст погрешность до 2 метров. Для Хенкеля длинной 8,2 м это цифра сопоставима. Или опять не влияет?
Так же надо отметить, что точка одна для всех орудий, не зависимо от того где они и с какой скоростью стреляют и в случае каких-нибудь амеров с пулеметами на крыльев все равно одна и круглая. Не влияет?
А теперь давайте все это в кучу и разом соберем, а потом еще и лаги с фпс прикрутим и получим, что имеем.
Все это обусловлено не физикой или ее кривизной, а особенностью удаленных вычислений и организации работы клиент-сервер. По хорошему тут должны быть механизмы сглаживания всех этих факторов, но у нас они то ли отсуцтвуют, то ли на столько слабо влияют, что о них стоит только догадываться.
vitas_satana
03 апр 2013
Пофлудить что ли?))) Посмотрите на пилота Ла-9 сбоку (да и многих других). Проведите линию его взгляда через прицел и сравните с осью самолета. Они не то что не сходятся спереди - они даже не параллельны!))) О каком попадании может быть разговор? Он или парашют забыл одеть или ему пару подушек под зад надо положить.
Кстати это наверное баг - неправильная модель.
PhoenixVegas
03 апр 2013
vitas_satana (03 Апр 2013 - 17:56) писал:
Пофлудить что ли?))) Посмотрите на пилота Ла-9 сбоку (да и многих других). Проведите линию его взгляда через прицел и сравните с осью самолета. Они не то то не сходятся спереди - они даже не параллельны!))) О каком попадании может быть? Он или парашют забыл одеть или ему пару подушек под зад надо положить.
Кстати это наверное баг - неправильная модель.
ReadyScorp
03 апр 2013
Цитата
От сервера пришла информация: тут враг, такое упреждение. Далее игрок посылает на сервер информацию куда но стреляет. За то время пока информация пошла к игроку и обратно на сервер картина спокойно может поменяться: физика полета (обсчет самого поведения крафта нонстоп происходит), а так же информация от игрока по которому ведется огонь - он-то может уклонятся и влиять на положение самолета. Но точность у нас достаточно высокая. В следствии чего на момент расчета самого факта попадания положение самолета смело может изменится на корпус. Для ваших расчетов время полета пули 540мс, мой пинг от 60мс, до 120мс, что составляет добрый кусок времени.
Цитата
Перспектива камеры от третьего лица дает погрешность в несколько градусов при стрельбе на 400 метров, это даст погрешность до 2 метров. Для Хенкеля длинной 8,2 м это цифра сопоставима.
Цитата
Так же надо отметить, что точка одна для всех орудий, не зависимо от того где они и с какой скоростью стреляют и в случае каких-нибудь амеров с пулеметами на крыльев все равно одна и круглая. Не влияет?
Цитата
А теперь давайте все это в кучу и разом соберем, а потом еще и лаги с фпс прикрутим и получим, что имеем.
Собрали все вместе - даже с учетом ваших дельных замечаний разница не может быть столь значительной, как это есть в игре.
Кстати до версии 0.4.0 ТУ работала достаточно точно.
vitas_satana
03 апр 2013
Влияние пинга можно исключить. У меня вечером может скакать от 60 до 300 - при этом реальная ТУ если и меняется, то я этого не замечаю. Просто пересаживаюсь на ТИ, чтобы задержки управления не так сильно нервировали. С этим разрабы постарались.
Monstrofil
03 апр 2013
Sergey11347
03 апр 2013
Для пули 7.92мм MG-17 скорость полета 780м/с, при пинге 100мс за эти самые 100мс пуля пролетит 7,8 метра (читай корпус не 100). Как ЭТО не влиятет?
Идите на спарках полетайте (109z, 609) и потом расскажите мне как крайнее крыльевое вооружение будет вам попадать в круг. Вас вообще не смущает: вооружение бьющее прямо и не настроенное на скрещивание траекторий должно всегда бить в круг. Вооружение расположенное линией и в круг - прям искривление пространства. Или у вас на весь экран круг разброса?
Камеру фиксируйте и будет вам точка. Кстати от болтающейся камеры изменяется угол зрения, и как следствие погрешности перспективы. На свистках из-за скорости она ощутимо болтается, а так как скорость полета сопоставима при этом со скоростью полета самолета имеет ощутимую погрешность.
Пинг и лаги за счет интернета будут (провайдер клиента + провайдер сервера в данный момент времени, при данной маршрутизации). Вот вам и будет погрешность от соединения. А ну да, у вас же пинг не учитывается... Прямой конект к серверам господа Бога.
Что бы вам совсем грустно стало - учтите время реакции человека. Вот еще вам один "пинг". Так же время обработки нажатия - опять милисекунды и очередной "пинг".Не бывает моментальных вещей. А ну да да, что но: мир идеален, и все эти милисикунды дающие погрешность, можно не учитывать при обсчете погрешности...
Цитата
Как написал выше - погрешность будет в рамках круга рассеивания.
Цитата
Разница выявлена на самолете с одинаковыми пушками (возьмите Ла-15, попытайтесь попадать по цели стреляя только по ТУ, а потом попробуйте найти настоящую точку упреждения).
Цитата
В треньке с 1 ботом на фоне неба нет сколько-нибудь значительных лагов или проседания ФПС
Что бы вам совсем грустно стало - учтите время реакции человека. Вот еще вам один "пинг". Так же время обработки нажатия - опять милисекунды и очередной "пинг".Не бывает моментальных вещей. А ну да да, что но: мир идеален, и все эти милисикунды дающие погрешность, можно не учитывать при обсчете погрешности...


