Gunner Tracker

Opened 2 months ago

Last modified 4 weeks ago

#36 reopened enhancement

сворачивание игры при потере фокуса

Reported by: deex Owned by: g-cont
Priority: minor Milestone:
Component: Xash Engine Version:
Keywords: Cc:

Description (last modified by deex)

было бы классно не сворачивать игру если она теряет фокус (когда я нажал Escape и вывел мышку на второй монитор)

в last of ass так сделано

может у нас сворачивание прописано командой в коде?

Также, надо ставить игру на паузу при потере фокуса. Этого не происходит

Attachments (2)

2m.jpg (134.4 KB ) - added by deex 5 weeks ago.
Desktop_260126_1620.mp4 (7.7 MB ) - added by deex 4 weeks ago.

Download all attachments as: .zip

Change History (13)

comment:1 by deex, 2 months ago

Description: modified (diff)

comment:2 by g-cont, 5 weeks ago

В норме игра и не должна сворачиваться при потере фокуса, однако второй монитор у меня на данный момент не подключен, поэтому я не могу в точности проверить поведение.

comment:3 by g-cont, 5 weeks ago

Resolution: fixed
Status: assignedclosed

Теперь игра автоматически ставится на паузу при потере фокуса и возобновляет работу при восстановлении фокуса

comment:4 by deex, 5 weeks ago

забрал фокус у фулскрин игры с помощью Винкей.
Она осталась фулскрин - ни паузы, ни сворачивания.
Спокойно пользуюсь вторым монитором, игра занимает первый.

Переключения альт-табом не позволяют вывести другие окна поверх игры - она всегда вылазит на первый план.

Однако на паузе, потеряв фокус, игра не сворачивается. Если щелкнуть по ней - с паузы она сама не снимается (да и не должна)

в общем, поведение на примере ласт-оф-ас:

  • игра потеряла фокус - встала на паузу
  • щелкнул снова по игре, снял с паузы, играешь дальше

Сворачивание отключено, а вот автоматической постановки на паузу не происходит

Version 0, edited 5 weeks ago by deex (next)

by deex, 5 weeks ago

Attachment: 2m.jpg added

comment:5 by deex, 5 weeks ago

Resolution: fixed
Status: closedreopened

comment:6 by deex, 5 weeks ago

Сравнение с Phantom Fury:

  1. ФФ тоже не ставит на паузу при потере фокуса (но выключает звук) (это минус)

Видел игру, где можно выбирать глушить ли звук при потере фокуса.

  1. ФФ позволяет видеть другие окна поверх своего, в borderless. (это важный плюс)

Так что, надо сделать чтобы Ксаш не закрывал собой другие окна, если уж на них переключились по альт-таб

Last edited 4 weeks ago by deex (previous) (diff)

comment:7 by g-cont, 4 weeks ago

А как ты определил, что постановка на паузу не выполняется? Игра замирает, если окно теряет фокус. Ну надпись "paused" не выводится, это да.

надо сделать чтобы Ксаш не закрывал собой другие окна

Отключил стиль "поверх всех окон" когда окно теряет фокус.

comment:8 by g-cont, 4 weeks ago

Resolution: fixed
Status: reopenedclosed

Игра ставится на паузу при потере фокуса и убирает стиль "поверх все окон" для системы с множеством мониторов

comment:9 by deex, 4 weeks ago

  1. должно быть включение экрана меню, а не замирание картинки
  1. тут же я нашел баг:
  • грузишь карту и берешь в руки афтамат
  • теряешь фокус нажатием winkey
  • щёлкаешь по экрану игры (и отпускаешь ЛКМ)
  • афтамат начинает бесконечно стрелять, хотя ЛКМ не нажат

Соотв. при возвращении фокуса игра получила событие, что ЛКМ нажат, но не получила, что он отпущен.

Возможно на экране меню это не будет играть большой роли. Но лучше при получении фокуса вообще не передавать нажатие в игровой код

Last edited 4 weeks ago by deex (previous) (diff)

comment:10 by deex, 4 weeks ago

И вот еще баг:

вернул фокус в окно, вышел из паузы - игрок бесконечно крутится вокруг себя
Причем так и после restart и после смены карты на другую
Перестает крутиться только с зажатым alt, потому что (почему-то) стрейфит вправо

by deex, 4 weeks ago

Attachment: Desktop_260126_1620.mp4 added

comment:11 by deex, 4 weeks ago

Resolution: fixed
Status: closedreopened
Note: See TracTickets for help on using tickets.