Jump to content
72AG_Olega

Оверлеи для Авиасимуляторов от 72AG_Olega.

Recommended Posts

Всем привет! Анонсирую тему по оверлеям, которые планирую разработать для авиасимуляторов. В планах сделать следующие оверлеи серии Overlay Avia ... :

1. Overlay Avia Course (OAC или Оверлей курса). См.скриншоты ниже. Планирую выпустить первую версию в течение двух недель.

Overlay Avia Course начальная версия 1.0 - будет работать пока только в оконном режиме и использовать временный "костыль" (стороннюю программу, выводящую окно оверлея поверх всех окон). В дальнейших версиях планирую от него (костыля) избавиться а также перевести работу и в полноэкранный режим. Суть работы: в трее будет сидеть программка, которая мониторит вызов по средней кнопке мыши оверлея в тот момент, когда он нужен, - а именно, когда мы вызвали карту:

- средняя кнопка мыши (клик) (окно оверлея не вызвано) - вызов окна оверлея, можно мерить курс

- средняя кнопка мыши (удержание) (окно оверлея работает) - перемещает по экрану точку от которой строится линия курса (старая точка при этом исчезает, "таскаем точку вживую")

- средняя кнопка мыши (клик) то же что и выше, но перемещает точку мгновенно (до клика видно старую точку)

- правая кнопка мыши (клик) - переключение между режимами точка-точка (удобно для малых и средних расстояний) и точка-луч (удобно для высоких разрешений и объектов в противоположных концах карты, луч идет до границы окна). См.скриншоты ниже.

- левая кнопка мыши (клик) - закрытие окна оверлея, программа слежения остается работать.

На время работы основного окна оверлея будет отрубаться G-Sync, с этим ничего не поделаешь, но т.к. в этот момент вызвана карта, то G-sync в этот момент не особо нужен. После закрытия основного окна оверлея G-sync вновь включается.

Настройки режимов оверлея будут сохраняться в том виде, в каком пользователю удобно будет пользоваться.

 

2. Overlay Avia Joy (Оверлей осей, кнопок джойстика, клавиш клавиатуры). См.скриншот ниже (пока только оси). Этим оверлеем в части клавиш клавиатуры и кнопок джойстика я уже пользовался в видео про АОМ на своем ютуб-канале. На экране отображаются положения физических осей джойстика и педалей.

 

3. Overley Avia Shooting (Оверлей для тренировки упреждения по стрельбе). Скрин пока не выкладываю, но уже опробировано (сечас в переоформлении пока)

По всем трем направлениям есть наработки.

 

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

 

Cкрины: OverlayAviaCourse - меню, режим точка-точка, режим точка-луч. OverlayAviaJoy полоски снизу и справа экрана: зеленая - тангаж, красная - руль направления, желтая - крен.

 

OAC_menu.png

Point-Point.jpg

Point-Ray.jpg

OverlayAviaJoy.jpg

  • Like 3
  • Upvote 5

Share this post


Link to post
Share on other sites
Posted (edited)

Авиа Оверлей Курс. Версия 1.0 (самая первая). Оформлена. Ссылка на архив с файлами под видео. Особенности версии:

1. Пока работает только для игр, запущеных в режиме окна.

2. Скрипты пока не имеют защиты от повторных запусков. Рекомендуется пользоваться пока только через штатный интерфейс. (есть вариант забиндить вызов скрипта AviaOverlayCourse.py напрямую на кнопку джойстика, но пока лучше этого не делать, т.к. есть огромная вероятность запуска сразу нескольких копий (проверял - они работают параллельно) и компьютер будет тормозить.

3. Так как в программе используется подгрузка модуля клавиатуры, - возможно нарушение клавиатурных мапперов, если таковые есть в системе.

4. В этой версии временно используется "костыль" в виде приложения deskpins.

 

Продолжаю работу. В течение следующего месяца планирую:

А. Перейти в полноэкранный режим. При этом отпадут надобность в deskpins, и главное окно измерений должно будет вызываться быстрее раза в два-три.

Б. Поставить иконки (осваиваю тему).

В. Поставить защиту от повторных запусков.

Г. Помехи от клавиатурного модуля свести к нулю. (сейчас на нем две опции - крепление окна deskpins и исправления косяка питоно-модуля мыши при закрытии главного окна.

 

Сделал для затравки вкладки Стрельба и Джойстик... По ним работы будут после полноэкранки (с этим серъезно повозиться придется)...

 

P.S. Большое спасибо вирпилу =SF=Tresher за помощь в отладке программы!

Edited by 72AG_Olega
  • Like 3
  • Thanks 2
  • Upvote 5

Share this post


Link to post
Share on other sites

Забыл добавить. Пока нет масштабируемости интерфейса в более высокие разрешения. В следующих версиях сделаю...

  • Like 1
  • Thanks 1

Share this post


Link to post
Share on other sites
Posted (edited)

Парни. Тема вывода в полноэкранном режиме оказалась труднее, чем я надеялся. Интересуюсь у вас, в каком направлении вам интереснее что бы я работал: оформлять остальные две вкладки оверлея Стрельба и Джойстик в экранном режиме (видео смогу выдавать быстрее), или бросить силы на полноэкранный режим (тут думаю месяц вам видео не видать точно)?

 

ЗЫ. Сегодня написал разработчку PlayClaw, попросил подсказать где копать надо для вывода поверх игры... Может ответит...

Edited by 72AG_Olega

Share this post


Link to post
Share on other sites

Я затрудняюсь с ответом. По большому счету, мне не видно проблему обязательности полноэкранной игры. Сколько раз ни пробовал сравнить - не вижу в нем преимущества такого, что, вот, не могу без полного экрана так, что кушать не могу.  Поэтому я могу и месяц подождать и больше месяца, если будет принято решение о работе над полноэкранной версией оверлеев.

По крайней мере, для меня уже есть оверлей с определителем курса. :) Могу ждать следующий. ;)

 

Share this post


Link to post
Share on other sites
Posted (edited)

Ладно, пока буду делать оастальные две вкладки Стрельбу и Джой (это конечно интересней, т.к. понятно как делать). Параллельно эпизодически буду курить полноэкранную тему. Эдуард (разработчик PlayClaw) мне уже ответил, как у него это в проге реализовано. По крайней мере теперь знаю в какую сторону смотреть. Он также обмолвился, что они собираются встроить поддержку скриптов в PlayClaw (склоняются в сторону выбора языка Питон потихонечку), вопрос только где бытрее, я сделаю сам или они выпустят 😄 Мне конечно хочется самому сделать, т.к. это интересно, правда достаточно сложно... Как-то так. Вторую вкладку по стрельбе попытаюсь уложить в две недели... 

 

ЗЫ: возможно потребуется ваша помошь, нужно набрать со скринов из игры разные ракурсы самолетов с одинаковой дистанции, для вывода на экран в виде таблицы (пока еще не считал сколько, но сетка нужна не менее 4х4). Если не будет хватать сил, приду за помощью...

Edited by 72AG_Olega

Share this post


Link to post
Share on other sites
4 минуты назад, 72AG_Olega сказал:

Ладно, пока буду делать оастальные две вкладки Стрельбу и Джой (это конечно интересней, т.к. понятно как делать).

.........

Мне конечно хочется самому сделать, т.к. это интересно, правда достаточно сложно... Как-то так. Вторую вкладку по стрельбе попытаюсь уложить в две недели... 

Удачи! Все когда-то начинается с первого шага. :) Его ты уже сделал, так что теперь только вперед. :)  Мы будем ждать

  • Thanks 1

Share this post


Link to post
Share on other sites
Posted (edited)

Парни, если у кого-то что-то не запускается или глючить, просьба сообщать в тему, отладка и устранение ошибок тоже важно...

Edited by 72AG_Olega

Share this post


Link to post
Share on other sites

Полноэкранный режим важен тем, кто из за прелестной "видимости" вынужден занизить разрешение экрана. Я например, что бы не быть как слепой котёнок выставляю 2560х1080 вместо родных 3440х1440. Без полноэкранного режима мы имеем игру в центре монитора, т.е. в этих случаях невозможно пользоваться прогой.

Share this post


Link to post
Share on other sites
1 час назад, 72AGs_miky сказал:

Я например, что бы не быть как слепой котёнок выставляю 2560х1080 вместо родных 3440х1440

Странно. Я сделал так, что Авиа Оверлей Курс (главное окно, где происходит измерение курса) автоматически определяет текущее разрешение экрана и создает рабочее окно (прозрачное) равное этому разрешению. Причем это не обязательно будет игра, это может быть и рабочий стол. Для режима точка-точка, где измерять, должно быть по барабану, а для режима точка-луч либо длина луча будет ограничена окном игры, либо вылазить за его пределы, если игра находится "в рамке" на раб столе.

Share this post


Link to post
Share on other sites

Ты не понял. Сама игра при заниженном разрешении и без галочки в полноэкранном режиме открывается всего лишь в окошко в центре экрана. И играть в таком виде сам понимаешь ... Поэтому понизив разрешение без полного экрана никуда (

Share this post


Link to post
Share on other sites
6 часов назад, 72AG_Olega сказал:

Странно. Я сделал так, что Авиа Оверлей Курс (главное окно, где происходит измерение курса) автоматически определяет текущее разрешение экрана и создает рабочее окно (прозрачное) равное этому разрешению. Причем это не обязательно будет игра, это может быть и рабочий стол. Для режима точка-точка, где измерять, должно быть по барабану, а для режима точка-луч либо длина луча будет ограничена окном игры, либо вылазить за его пределы, если игра находится "в рамке" на раб столе.

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

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

Share this post


Link to post
Share on other sites

Первые тесты. Вкладка Shooting (стрельба) Пока только ракурсы фоки.

 

Share this post


Link to post
Share on other sites

Для тренировок, хорошо. А так космосим какой то... 

Share this post


Link to post
Share on other sites
1 час назад, 72AGs_miky сказал:

А в  полноэкранном будет?

Пока нет. В полноэкранном не скоро.

1 минуту назад, LIE_27 сказал:

Для тренировок, хорошо. А так космосим какой то... 

Так и есть, для тренировок.

Share this post


Link to post
Share on other sites

Так. Парни. Уезжаю в отпуск на неделю. Версию 1.2 оформил, будем считать её бетой. Не хватает оптимизации расположения текста в верхних четвертях прицела и пока скупой хелп (однако самое важное есть).  Видео оформить не успеваю (уезжаю в отпуск в пятницу на неделю). Даю ссылку на архив, кто хочет, может постестировать:

https://drive.google.com/file/d/1USd9TkTuD3WJ5LPeAHaRs_4HUkiEC6dl/view?usp=sharing

Установка: распакованную папку "AviaOverlay_v.1.2" переместить в корень диска С:\. Файл python_package_install_v1.2.bat закинуть в папку установки питона и запустить его. После установки модулей запустить AviaOverlayMenu.py двойным кликом. Вот и вся установка. У кого нет питона, - возьмите в архиве по ссылке под моим видео с моего канала (где версия 1.0).

Что сделано из общего: deskpin больше не нужен, масштабирование окна интерфейса автоматическое, сделана блокировка от повторных запусков (на вопросик внизу справа жмете и читаете там). По остальному, думаю разберетесь, клавиши управления прописаны прямо на вкладке Стрельба.

 

Если будут ошибки -пишите.

Share this post


Link to post
Share on other sites
Posted (edited)

Спасибо пилоту =SF=Thresher за тестирование программы на предмет стабильности. Приступаю к программированию третьей части "Джойстик и клавиатура".  По второй части (Стрельба) однако около 2 тысяч строк кода получилось...😮

В первых двух частях (Курс - прокладка маршрута, и Стрельба - шкала дальности) еще есть чего добавить. Скорее всего буду добавлять их уже после третьей части. Типа глобальный апдейт...

Edited by 72AG_Olega
  • Thanks 1

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...