Videoforum - форум о видео и не только!


Вернуться   Videoforum - форум о видео и не только! > Компьютерные форумы > Софт и игры

Важная информация

Софт и игры Обсуждаем любые компьютерные программы и игры.

Ответ
 
Опции темы
Старый 08.11.2023, 22:29   #1
Жрец Нефтиды
Модератор
 
Аватар для Жрец Нефтиды
 
Регистрация: 15.07.2012
Адрес: Санкт-Петербург
Сообщений: 1,395
Сказал(а) спасибо: 344
Поблагодарили 542 раз(а) в 371 сообщениях
Вес репутации: 640
Жрец Нефтиды has a reputation beyond reputeЖрец Нефтиды has a reputation beyond reputeЖрец Нефтиды has a reputation beyond reputeЖрец Нефтиды has a reputation beyond reputeЖрец Нефтиды has a reputation beyond reputeЖрец Нефтиды has a reputation beyond repute
По умолчанию Запуск Windows игр в полноэкранном режиме

Некоторые игры, как правило, старые, в полноэкранном режиме не запускаются. Иногда бывает наоборот. Старая игра хорошо запускалась на Win ME в полноэкранном режиме, а на современных ОС может вообще не запуститься: будет мерцание, обрывки звука, но не игра. Бяка не запуска лечится так. Идём сюда [Для просмотра данной ссылки нужно зарегистрироваться] Скачиваем архив Winmode, все файлы из него кладём в папку с программой. Программа заработала. Но только в оконном режиме. Ещё пример. Игра "Сапёр" из Win XP. Прекрасно играет (должна играть) на последних версиях Win без каких-либо дополнений. Но игровое поле маленькое, играть не удобно.
Я не буду в четыреста второй раз мусолить советы и "советы", написанные под копирку четыреста и один раз. Традиции писать под копирку имеют древнеегипетские традиции. Не помогут здесь сайзеры и прочее. Я не буду советовать уменьшить разрешение через настройки видеокарты.
На поверхности вроде бы лежит идея использовать Virtual Box, установить в нём в качестве гостевой ОС WIN ME, и на гостевой ОС выставить малое разрешение. У Virtual Box есть баг, о котором в Сети говорят подозрительно мало. Предположим, твой монитор не совсем древнеегипетский и имеет частоту больше 60. Например, 75. Так вот в гостевой ОС в Virtual Box ты не выставишь частоту больше 60. (Я даже не рассматриваю идею-фикс уменьшить ради игры частоту в основной ОС.) Это ещё не всё. Возьми TFTTest, перенеси его в гостевую ОС, запусти тот тест, где квадратик бегает по окну. Посмотри, во что превратился квадратик. Посмотри-посмотри, чем верить жрецу на слово, лучше один раз увидеть.
Теперь что точно заработает.
Способ № 1 – не сильно продвинутый. Используем экранную лупу. Экранная лупа для игры должна соответствовать следующим требованиям:
1. Не бегать туда-сюда по экрану во время игры.
2. Быть динамической. То есть клик через лупу должен приводить к тем же результатам, что и клик без лупы.
3. Частота просмотров через лупу должна равняться частоте монитора, и не ограничиваться каким-либо значением. У встроенной в виндузятник лупы это так.
Попробовав много сторонних луп, я убедился, что для нашей задачи лучше всего подходит встроенная в виндузятник лупа. Имхо, в Win 8.1 лупа была доведена до совершенства, далее я не обнаружил существенных улучшений. Вот здесь [Для просмотра данной ссылки нужно зарегистрироваться] сочетания клавиш. Возможно, перед началом игры через лупу есть смысл их распечатать. Для Win 8.1 они такие же, как и для Win 10.
Настраиваем лупу так. "Виды" – "Во весь экран". Клик по шестерёнке – птица только у "Следовать за фокусом клавиатуры", ползунок в верхней части прижат к "Меньше". Дальше сообразишь сам.
Из сторонних луп по качеству примерно соответствует встроенной виндузятовской лупе лупа Glassbrick, но к ней нужно приспособиться. Обязательно переводим её в расширенный режим и задаём частоту.
У всех экранных луп, которые я исследовал, включая встроенную виндузятовскую, есть общий недостаток: масштабирование производиться по пиксельному алгоритму. Наведи лупу на букву, сделай увеличение очень большим, и сам увидишь. А во время игры хотелось бы иметь хорошую графику.
Способ № 2 – продвинутый. Мы не будем пробовать перевести игру в полноэкранный режим. Вместо этого мы увеличим игровое окно до размеров экрана, предпросмотрев его экранным проектором. Я исследовал довольно много программ – и бесплатных, и шароварных. Выбирать оказалось не из чего. Бесплатная OBS Studio оказалась лучшей для нашей задачи.
Вначале теория, не зная которую, мы можем легко скатиться на порочную тропинку двойного масштабирования = похороны качества. В OBS Studio есть три видео потока: источник, холст и вывод. Вывод предпросмотреть и невозможно, и не нужно. Источник предпросмотреть можно, но не нужно. Алгоритм масштабирования для предпросмотра источника довольно плохой. Во втором посту я опишу эксперимент, и ты всё увидишь своими глазами.
Предпросматривать мы будем холст. Если размер холста равен размеру источника, то масштабирование будет производиться один раз. Именно это нам и нужно. Алгоритм масштабирования для предпросмотра жёстко прописан в экранном проекторе, и изменить его невозможно. Он довольно хороший, во втором посту мы его исследуем.
Здесь мы подошли к очень важной тонкости. Если размер холста будет задан больше размера источника, то нужно будет выполнить "Трансформировать" – "Подогнать по размеру экрана". И вот тут мы встанем на путь двойного масштабирования. Вначале источник будет отмасштабирован под размер холста по алгоритму, устанавливаемому в "Фильтр масштабирования". А поскольку размер холста вряд ли будет точно равен размеру игрового поля, которое ты задашь в экранном проекторе, то холст будет второй раз отмасштабирован до размера игрового поля в экранном проекторе. Кю.
OBS Studio я рекомендую брать отсюда [Для просмотра данной ссылки нужно зарегистрироваться] Версия OBS-Studio-27.2.4-Full-x86.zip Не требует инсталляции, работает на Win 7 и выше. Почему рекомендую не самую свежую? В этой версии всё, что нам нужно для игры, доведено до совершенства. В дальнейших версиях пошли усложнения, не нужные для нашей относительно простой задачи запуска игры.
Настройка OBS. Вкладка "Общие". Отключаем "Проверять наличие обновлений", в разделе "Проекторы" ставим птицы у "Показывать проекторы поверх всех окон", "Сохранять проекторы при выходе", "Ограничиться одним полноэкранным проектором".
Вкладка "Аудио". "Глобальные устройства аудио" – во всех строках "Выключено".
Вкладка "Видео". "Целое значение FPS" – здесь ставишь частоту твоего монитора. Например, 75. А вот тутошний "Фильтр масштабирования" на предпросмотр игры никак не влияет.
Эти настройки сохранятся при последующих запусках OBS.
В нижней части экрана видишь подокно "Источники". Жмёшь по +. Ты можешь, конечно, попробовать "Захват игры". Разумеется, режим должен быть "Захват отдельного окна". Однако, скорее всего, получишь чёрный экран. Поэтому делаем так.
Запускаешь игру. Жмёшь по +, и выбираешь "Захват окна". Так всегда получится. Выбираешь окно игры. Настройки не меняешь. Щёлкаешь один раз по изображению игры, чтобы оно стало активным, далее правый клик. В выпадающем списке кликаешь по "Масштабировать вывод по размеру источника". Переспросит – соглашайся. Вот и всё. Однокликовый подход даст самый лучший результат.
Снова правый клик. В выпадающем списке "Оконный проектор (Предпросмотр)". Он в верхней части выборки, а не внизу!
Сворачиваем OBS, а оконный проектор разворачиваем на весь экран. Но пока у нас активен проектор, а не игра. Жмём "Alt" – "Tab". Удерживая нажатой "Alt", последовательно нажимаем "Tab", пока не станет активным окно игры. Отпускаем "Alt". Можно играть.
Но увы: только в ту игру, управление которой осуществляется клавишами с клавиатуры. Если мы щёлкнем мышью, то курсор тут же перескочит на экранный проектор, находящийся на переднем плане.
Я попробовал несколько программ для закрепления курсора мыши: DeskPins, LockCursor, Cursor Lock и их аналоги. Не помогло. Быть может, тебе повезёт больше. Суть задачи: заставить компьютер реагировать на клик мыши по находящемуся на заднем плане окну так, как будто бы оно находится на переднем плане, и не переключаться на находящееся на переднем плане окно экранного проектора. Мне представляется, что должна быть какая-то простая утилита для такой задачи, но я её не нашёл.
Для игр с относительно маленьким игровым полем, таких, как "Сапёр", можно сделать так. Поле игры размещаем, допустим, в правой части экрана, а экранный проектор растягиваем вручную до размера экрана в левой части рабочего стола.
Жрец Нефтиды вне форума   Ответить с цитированием Вверх
Старый 12.11.2023, 21:44   #2
Жрец Нефтиды
Модератор
 
Аватар для Жрец Нефтиды
 
Регистрация: 15.07.2012
Адрес: Санкт-Петербург
Сообщений: 1,395
Сказал(а) спасибо: 344
Поблагодарили 542 раз(а) в 371 сообщениях
Вес репутации: 640
Жрец Нефтиды has a reputation beyond reputeЖрец Нефтиды has a reputation beyond reputeЖрец Нефтиды has a reputation beyond reputeЖрец Нефтиды has a reputation beyond reputeЖрец Нефтиды has a reputation beyond reputeЖрец Нефтиды has a reputation beyond repute
По умолчанию

Исследование алгоритма масштабирования из экранного проектора OBS Studio.
Вначале идём сюда [Для просмотра данной ссылки нужно зарегистрироваться] Рекомендую прочитать эту тему. Скачиваем прикреплённый архив. Из него нам потребуется файл "Тест 50.bmp". Этот маленький квадратик обладает большой тестирующей силой.
Запускаем OBS. В "Источники" добавляем "Изображение", и задаём наш файл изображения "Тест 50.bmp". Левым кликом активируем квадратик на холсте.
Правый клик. Вначале попробуй "Оконный проектор (источник)" – он внизу выборки. Смотришь, раздвинув на весь экран. Скорее всего, скажешь, что качество не очень.
Теперь попробуй задать размер холста, например, 1080x1080.
Правый клик – "Трансформировать" – "Подогнать по размеру экрана". Фильтр масштабирования задай, например, Ланкзос.
Снова правый клик – "Оконный проектор (предпросмотр)" – тот, который наверху выборки. Смотришь, раздвинув на весь экран. Обрати внимание на звон – виден отчётливо без гамма-толчка, и на качество. Скорее всего, тоже что-нибудь скажешь.
А теперь сделай, как жрец рекомендовал в основной теме. Только вначале запусти XnViewMP, и задай в нём "Захватить с экрана" – "Рабочий стол". В OBS Studio в выборке после правого клика задай "Полноэкранный проектор (предпросмотр)". Он в верхней части выборки. Для эксперимента лучше использовать полный экран. Этот полный экран с изображением "сфотографируй" XnViewMP и сохрани в bmp.
Исследуем полученный файл bmp. Вначале делаем гамма-толчок, как я описал в той теме. Никакого звона нет. Это радует. Теперь визуально сравниваем полученный bmp с тем, что нам даст XnViewMP при просмотре файла "Тест 50.bmp".
Алгоритм ресайза явно не тянет на сплайн 16. И на бикубический тоже не тянет. Но чуток получше, чем билинейный из XnViewMP – нет изгибов линий на краях. Скорее всего, в проектор вписан билинейный алгоритм. В нашем опыте мы увеличивали примерно в 20 раз, и всё же линии получились довольно чёткие. В реальной игре увеличение производится раза в 2-3. Так что качество будет хорошее.
Жрец Нефтиды вне форума   Ответить с цитированием Вверх
Ответ

Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Запуск DOS-игр в полноэкранном режиме Жрец Нефтиды Софт и игры 3 27.10.2023 15:26
Windows 10 schvelia Windows XP, Windows Vista, Windows 7, Windows 8 1 19.10.2019 11:35
CANON XH A1 - нет изображения в режиме "просмотр" sergeiK Видеокамеры 13 21.09.2015 19:54
Mac - Windows BestGarry Кодеки и кодеры, кодирование и конвертация. 2 26.08.2010 15:59


Часовой пояс GMT +1, время: 00:05.




Powered by vBulletin® Version 3.8.3
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot


Рейтинг@Mail.ru