Как сделать экранную клавиатуру поверх игры
Обновлено: 21.11.2024
Похоже, вы используете устаревший браузер. Некоторые вещи могут работать не так, как должны (или не работать вообще).
Мы предлагаем вам обновить более новый и лучший браузер, например: Chrome, Firefox, Internet Explorer или Opera
Я инвалид и не могу использовать обычную клавиатуру для своих старых игр. Возможно ли вообще использовать экранную клавиатуру Windows с моими играми GOG?
Я играл в "Колонизацию", "Фараона" и т. д.
Я точно знаю, что в последней версии DOSBOX есть поддержка экранной клавиатуры Windows, и все продаваемые здесь игры для DOS используют ее. Однако я не могу с уверенностью сказать, что все продаваемые здесь DOS-игры поставляются с последней версией. Если сотрудник не отвечает в этой теме, обязательно свяжитесь со службой поддержки (они отлично свяжутся с вами, просто иногда это может занять пару дней).
EDIT: Добро пожаловать в GOG :)
Я не думаю, что многие пошаговые игры или симуляторы, о которых вы упомянули, создадут с этим большие проблемы. Опять же, я никогда не пытался использовать экранную клавиатуру во время игры.
Для игр для DOS проблем быть не должно. Вы можете запускать их в окне в DOSBox, и DOSBox будет принимать команды с виртуальной клавиатуры. Однако для некоторых игр может потребоваться мышь, и переключение между внутриигровой мышью и внешней виртуальной клавиатурой может быть неудобным. Если вы умеете обращаться с мышью, я бы купил ее с дополнительными кнопками и привязал Alt-Tab к одной из них. Но я не могу сказать, сработает ли это для вас без дополнительной информации.
Кроме того, обратите внимание, что на экранной клавиатуре в Windows 7 отсутствуют функциональные клавиши и цифровой блок. Для некоторых игр могут потребоваться эти ключи. Однако доступны и другие экранные клавиатуры, проверьте ссылку WBGhiro.
Другие игры в большинстве случаев также должны работать, хотя всегда есть вероятность, что игра может читать клавиатуру необычным образом и не распознавать экранную. Но это должны быть исключения. Проблема с другими играми заключается скорее в том, чтобы отобразить игру и клавиатуру, поскольку многие игры настаивают на переходе в полноэкранный режим. Для этого есть несколько решений: может помочь установка с двумя мониторами; кроме того, существуют (несколько экспериментальные) инструменты для перевода игр в оконный режим, даже если они не поддерживают его изначально. Google для DxWnd и D3DWindower, чтобы найти их.
Если вы не боитесь рассказать нам больше о типе вашей инвалидности и о том, что вы можете и чего не можете делать, мы можем дать более конкретный совет. Существует множество различных контроллеров, и клавиши можно переназначать несколькими способами, поэтому мы должны быть в состоянии найти хорошие решения.
Я не учел отсутствие цифровой клавиатуры, она определенно используется в Colonization, так что спасибо, что указали на это.
Моя инвалидность позволяет мне держать мышь (только чуть-чуть) и нажимать левую кнопку моим единственным здоровым пальцем, все остальное — тяжелая работа.
drathro: Я не учел отсутствие цифровой клавиатуры, в Colonization она определенно используется, так что спасибо, что указали на это.
В этом случае Click-n-Type может быть предпочтительной экранной клавиатурой. Его макет полностью настраиваемый, и он поставляется с несколькими предварительно разработанными макетами, один из которых содержит цифровую клавиатуру. Я только что проверил это с версией Colonization от GOG, и это сработало. Клавиши цифровой клавиатуры были распознаны, как и все остальные.
Click-n-Type также позволяет пользователям настраивать свои собственные клавиатуры (хотя для этого, очевидно, требуется дополнительная загрузка какого-либо стороннего программного обеспечения). Но теоретически для игр, в которых используется всего несколько клавиш, вы можете создать свою собственную раскладку клавиатуры для этой игры с короткими расстояниями между необходимыми клавишами и без лишних клавиш.
drathro: Моя инвалидность позволяет мне держать мышь (только чуть-чуть) и нажимать левую кнопку моим единственным здоровым пальцем, все остальное - большая рутина.
Хм. Улучшит ли для вас доступность педальный или голосовой ввод?
Существует множество различных решений (хотя многие из них, к сожалению, довольно дороги). Вы можете проверить эту страницу для хорошего обзора альтернативных вариантов ввода для всех видов инвалидности: Альтернативные устройства ввода JAN. JAN — это правительственное агентство США, которое (среди прочего) предоставляет технологические консультации для сохранения занятости граждан с ограниченными возможностями. Страница была написана врачом и содержит множество ссылок на другие обзоры, компании и отдельные продукты. Это очень хорошая отправная точка, чтобы увидеть, что доступно.
Если палец — единственный рабочий вариант, возможно, проверьте какое-нибудь программное обеспечение, которое позволяет вводить азбуку Морзе с помощью кнопки мыши и переводит ее в симулированные нажатия клавиш. Я сам не проверял и не использовал такие программы, просто читал, что они существуют. Лучшее ли это решение, чем экранная клавиатура, зависит от того, насколько сложно двигать мышь.
Дайте мне час или около того, чтобы проверить Pharaoh (другую игру, которую вы упомянули).Я только что купил его по акции и не думаю, что он предоставляет оконный режим из коробки, я посмотрю, есть ли способ заставить его работать с экранной клавиатурой.
Эндрю223344
Похвально
Здравствуйте, как я могу использовать экранную клавиатуру в играх для ввода (полноэкранный режим)? В оконном могу, но у меня fps хуже, чем в полноэкранном. Любое предложение приложения? Я инвалид, и я могу играть, но мне трудно писать, я бы хотел играть в полноэкранном режиме и набирать игровой чат на виртуальной клавиатуре (на экранной клавиатуре), когда это необходимо. Спасибо!
kerberos_20
Прославленный
привет
нажмите win + CTRL + O, чтобы открыть экранную клавиатуру в полноэкранном режиме
вы можете использовать там кнопки, но есть и недостаток, если вы нажмете белую полосу, чтобы переместить ее, полноэкранная игра свернется, и еще один недостаток в том, что он слишком большой
Начало темы | Похожие темы | Форум | Ответы | Дата | tr>
---|---|---|---|---|
[РЕШЕНО] Я получаю BSOD каждый раз, когда пытаюсь поделиться экраном в приложении (Discord, Google Meet, Team Viewer). Я получаю сообщение об ошибке DPC_Watchdog_Violation. | Приложения и программное обеспечение | 2 | 9 марта 2022 г. | |
Вопрос Лучший программное обеспечение для отображения на экране температуры графического/процессорного процессора во время игры? | Приложения и программное обеспечение | 2 | 9 марта 2022 г. | |
F | Вопрос Я не знаю, есть ли способ заставить программное обеспечение Logitech Gaming Software версии 9.02.65 изменить размер шрифта или сделать его полноэкранным. | < td >Приложения и программное обеспечение2 | 5 января 2022 г. | |
N | Вопрос Мой экран Discord доля очень медленная и похожа на слайд-шоу? | Приложения и программное обеспечение | 5 | 4 января 2022 г. |
Вопрос о простом бесплатном программном обеспечении, с помощью которого я могу выбрать экономичную запись для записи части моего экрана | Приложения и программное обеспечение | 9 | 28 декабря 2021 г. | |
S | [РЕШЕНО] Экран второго монитора становится черным при использовании Photoshop и AutoCAD Lt 2021 | Приложения и Программное обеспечение | 3 | 27 декабря 2021 г. |
R | Вопрос Принуждение приложения не открывать полноэкранный режим | Приложения и программное обеспечение | 2 | 22 декабря 2021 г. |
W | [РЕШЕНО] Помогите найти надежное программное обеспечение для печати с экрана на принтер | Приложения и программное обеспечение | 4 | 26 ноября 2021 г. |
A | Зеркальное отображение экрана Android на ПК | Приложения и программное обеспечение | 5 | 20 ноября 2021 г. | tr>
S | [РЕШЕНО] Помощь с экранной клавиатурой NohBoard ? | Приложения и программное обеспечение | 2 | 11 июля 2021 г. |
ПОПУЛЯРНЫЕ ТРЕКИ
- Инициировано BADAZZMEDIC.
- Вчера в 22:36
- Ответов: 23
- Инициировано Cybert2
- Сегодня в 4:56
- Ответов: 1
- Инициировано Cofastic.
- Сегодня в 2:37
- Ответов: 6
- Инициатор chrisbek
- Сегодня в 1:38
- Ответов: 10
- Инициировано GettaXX10
- Сегодня в 3:51
- Ответов: 0
- Инициатор alesito1119
- Вчера в 23:55
- Ответов: 4
- Инициировано raeanthony.
- Вчера в 15:57
- Ответов: 20
Последние сообщения
- Последнее: Филипп Коркоран
- 4 минуты назад
Модераторы онлайн
Поделиться этой страницей
Tom's Hardware является частью Future plc, международной медиа-группы и ведущего цифрового издателя. Посетите наш корпоративный сайт.
© Future Publishing Limited Quay House, Амбери, Бат BA1 1UA.
Все права защищены. Регистрационный номер компании в Англии и Уэльсе 2008885.
Tom's Hardware является частью Future plc, международной медиа-группы и ведущего цифрового издателя. Посетите наш корпоративный сайт.
© Future Publishing Limited Quay House, Амбери, Бат BA1 1UA. Все права защищены. Регистрационный номер компании в Англии и Уэльсе 2008885.
Демонстрирует создание и взаимодействие с виртуальной 3D-клавиатурой с помощью UMG.
Выберите операционную систему:
Если вы хотите создать трехмерную клавиатуру или виртуальную клавиатуру, которая позволяет игроку вводить определенные символы, вы можете сделать это с помощью комбинации компонентов Widget Interaction и Widget. Компонент взаимодействия с виджетом определяет, какие «кнопки» нажимаются, и обрабатывает отправку символов компоненту виджета в Актере, который будет обрабатывать отображение.
В этом практическом руководстве мы создаем клавиатуру, с которой можно взаимодействовать, и вводить данные в текстовое поле. В рамках этого руководства мы определим, какие виджеты можно сфокусировать, а какие нет. Это важно для того, чтобы текстовое поле, в которое игрок вводит числа, не теряло фокус игрока при нажатии другой кнопки.
В конце этого руководства у вас будет клавиатура и дисплей, которые появляются внутри трехмерного игрового мира и с которыми можно взаимодействовать.
Для целей этого руководства мы используем проект шаблона Blueprint от первого лица.
1 — Настройка персонажа
Во-первых, нам нужно настроить нашего персонажа с компонентом взаимодействия с виджетами и создать активы для отображения нашего пользовательского интерфейса.
В папке Content > FirstPersonBP > Blueprints откройте чертеж FirstPersonCharacter.
Добавьте компонент WidgetInteraction, прикрепленный к сфере. На панели «Подробности» обнулите «Расположение» и установите флажок «Показать отладку».
Компонент «Взаимодействие с виджетом» теперь будет указывать в направлении, в котором игрок направляет пистолет, что указано в игре маркером отладки.
В графе событий добавьте событие правой кнопки мыши и перетащите компонент взаимодействия с виджетом.
При отключении виджета добавляются узлы «Нажмите клавишу указателя» и «Отпустите клавишу указателя». Установите обе клавиши на левую кнопку мыши. Соедините контакты Pressed и Released правой кнопки мыши с соответствующими узлами Pointer Key.
Виджеты реагируют на взаимодействие с мышью/касание с помощью щелчка левой кнопки мыши или сенсорного управления, и мы можем имитировать это взаимодействие с помощью функции нажатия клавиши указателя. В нашем примере мы используем правую кнопку мыши, чтобы имитировать щелчок левой кнопкой мыши; тем не менее, вы можете использовать нажатие кнопки геймпада или даже нажатие триггера контроллера движения, чтобы активировать функцию нажатия клавиши указателя.
В Content Browser создайте два класса Blueprint на основе Актера с именами Keypad и KeypadDisplay. Затем добавьте две схемы виджетов с именами KeypadWB и KeypadDisplayWB.
Теперь наш персонаж может взаимодействовать с виджетами в мире. Далее мы настроим наши интерактивные виджеты.
2 – Настройка схемы виджета
На этом шаге мы создаем макет наших интерактивных виджетов пользовательского интерфейса и скрипт того, что происходит при нажатии кнопки.
Откройте схему KeypadDisplayWB и удалите панель холста. В иерархии добавьте поле размера с текстовым полем.
Для поля "Размер" установите для предварительного просмотра значение "Желаемый на экране" и измените ширину и высоту на 100 x 50.
Для текстового поля установите текст подсказки на 1212 и измените размер шрифта на 28.
В этом примере игрок должен использовать клавиатуру для ввода текста 1212, чтобы сообщить об успешном вводе, но вы можете использовать любое значение по своему желанию.
Скомпилируйте и сохраните схему KeypadDisplayWB.
Откройте KeypadWB Blueprint и удалите панель холста. Настройте иерархию с 3 кнопками, каждая с текстом 0, 1 и 2 соответственно.
Вы также можете нажать F2 на каждой из кнопок в иерархии, чтобы изменить их имена в соответствии с названием кнопки.
Добавьте вторую горизонтальную рамку, содержащую две кнопки с текстом в них, одну из которых установите на Del, а другую — на Ent.
На клавиатуре будет только три цифровые кнопки и две другие для удаления (Del) или подтверждения ввода (Ent).
Удерживая нажатой клавишу CTRL, выберите каждую из своих кнопок и снимите флажок "Фокусируется" (установите значение "Ложь").
Чтобы эта настройка работала, нам нужно убедиться, что никакие другие виджеты, с которыми мы взаимодействуем, не отвлекают внимание от виджета «Отображение клавиатуры». Если мы оставим их равными true, когда мы нажмем кнопку, фокус переместится с дисплея клавиатуры на кнопку. Это не позволяет нам передавать нажатие клавиши и значение на дисплей клавиатуры.
В графе событий добавьте события OnClicked для каждой кнопки.
Создайте две переменные: тип String с именем CharToSend и компонент WidgetInteractionComponent с именем WidgetInteraction.
Удерживая клавишу Alt, перетащите CharToSend для каждого события OnClicked. Задайте для переменной значение ранее установленных значений текста кнопки: 0, 1 и **2*.
Удерживая нажатой клавишу Ctrl, перетащите элемент WidgetInteraction. Перетащите булавку и добавьте узел Send Key Char. Подключите его к переменной CharToSend и событиям OnClicked.
Мы используем функцию отправки символа ключа, потому что текстовые поля в Slate не получают ключи, отправляемые им напрямую. Например, если мы нажмем клавишу A, функция Slate не распознает нажатие клавиши и не отправит A. Вместо этого функции Slate прослушивают отправку символа, поэтому операционный код системы нижнего уровня может определить, удерживалась ли нажатой клавиша Shift при нажатии клавиши A или был ли включен Caps Lock при нажатии клавиши A.
Выключите событие Del OnClicked, используйте клавишу «Нажать и отпустить» и установите клавишу на «Backspace». Подключите переменную WidgetInteraction к цели «Нажмите и отпустите клавишу».
Создайте диспетчер событий с именем EnterPressed и вызовите его из OnClicked(Ent).
Скомпилируйте и сохраните схему KeypadWB.
Наши схемы виджетов теперь настроены для отображения нашей клавиатуры и дисплея клавиатуры.
3 — Настройка актеров
Далее нам нужно настроить актеров Keypad и Keypad Display, прежде чем мы начнем писать сценарий актера Keypad.
Откройте схему KeypadDisplay и добавьте компонент Widget с классом, установленным на KeypadDisplayWB, и установите флажок Draw at Desired Size.
Отрисовка желаемого размера — это быстрый способ заставить цель рендеринга автоматически соответствовать желаемому размеру в схеме виджета.
Скомпилируйте и сохраните схему KeypadDisplay.
Откройте схему клавиатуры и добавьте компонент виджета с классом, установленным на KeypadWB, и установите флажок «Рисовать в нужном размере».Снимите флажок «Фокус окна» для этого компонента виджета.
Мы не хотим, чтобы этот компонент отвлекал внимание от виджета «Отображение клавиатуры», поэтому этот флажок необходимо снять.
Добавьте компонент WidgetInteraction и снимите флажок Включить проверку попадания (установите значение false).
Этот компонент WidgetInteraction означает, что нам не нужно получать ссылку на компонент WidgetInteraction в персонаже игрока. Это позволяет нам отключить проверку попадания, поскольку мы не хотим создавать эффекты наведения.
Компоненты WidgetInteraction по умолчанию устанавливаются на индекс виртуального пользователя 0 при их создании, и все они обмениваются данными с использованием идентификатора виртуального индекса пользователя. Поскольку компонент WidgetInteraction в персонаже игрока также использует индекс виртуального пользователя 0, это то же самое, что получить ссылку на него.
4 — Скрипт актера клавиатуры
В этом заключительном разделе мы добавляем наши Widget Blueprints в качестве компонентов Widget к нашим Актерам и определяем, что происходит, когда игрок нажимает кнопку Enter. Мы также установили внутриигровой тест, который выводит на экран сообщение об успешном завершении, если код правильный, или неправильный код, если код неверный.
На графике событий Keypad Blueprint в разделе Event Begin Play добавьте узел Cast to KeypadWB. Затем добавьте компонент Widget и перетащите его, чтобы добавить объект Get User Widget Object. Соедините возвращаемое значение с выводом литого объекта.
Выключите контакт As Keypad WB, добавьте узел Set Widget Interaction, добавьте компонент Widget Interaction и подключите его к Set Widget Interaction.
Выключите контакт As Keypad WB, вызовите узел Assign Enter Pressed, который создаст пользовательское событие Enter Pressed.
Теперь, когда мы нажимаем кнопку «Ввод», будет вызываться это пользовательское событие. Мы можем использовать для проверки правильности введенного кода.
Создайте ссылочную переменную объекта дисплея клавиатуры и назовите ее TargetDisplay. Отметьте экземпляр как редактируемый.
Создайте текстовую переменную с именем GoalText. Скомпилируйте Blueprint и установите значение по умолчанию на 1212.
Удерживая нажатой клавишу Ctrl, перетащите объект TargetDisplay, чтобы получить виджет и объект пользовательского виджета. Затем добавьте узел Cast to KeypadDisplayWB и соедините возвращаемое значение с объектом.
Выключите булавку WB As Keypad Display, чтобы получить редактируемое текстовое поле и GetText (текстовое поле). Выключите возвращаемое значение, добавьте узел Equals. Перетащите текст цели и соедините его с узлом «Равно».
Если вы переименовали текстовое поле, вам нужно будет найти новое имя, чтобы найти компонент.
Добавить ветвь с двумя строками печати. Задайте для текста String значение Success (True), а для другого — значение Wrong Code (False).
Скомпилируйте и сохраните схему клавиатуры.
В окне просмотра перетащите чертежи Keypad и KeypadDisplay на уровень и поверните/поместите их по желанию.
На панели Details для Keypad Actor установите для переменной Target Display значение KeypadDisplay на уровне.
Сохраните область просмотра и выберите "Воспроизвести", чтобы взаимодействовать с виджетами.
Конечный результат
Подойдите к дисплею с клавиатурой, наведите указатель на дисплей и щелкните правой кнопкой мыши, чтобы сфокусироваться на нем. Теперь вы можете посмотреть на кнопки и щелкнуть их правой кнопкой мыши, чтобы выполнить команду «Отправить ключевой символ» и передать значение на дисплей.Мы используем правую кнопку мыши для взаимодействия с виджетами на уровне, но вы также можете изменить ее, чтобы использовать нажатия кнопок геймпада или контроллера движения.
Хотя этот пример выводится на экран только в том случае, если был введен правильный код или нет, вместо этого вы можете запустить какое-либо событие, открывающее дверь, порождающее врага или любое другое событие, связанное с игровым процессом.
Steam Deck от Valve — это впечатляющая игровая технология, но ей определенно нужно научиться.
Даже если вы знакомы с магазином Steam и его удобным для просмотра на телевидении «режимом большого изображения», который напоминает SteamOS для колоды, все равно потребуется время, чтобы понять, как основные функции Steam на ПК переводятся на геймпад портативного устройства. элементы управления стилем. Однако это проще, чем может показаться на первый взгляд.
Valve не сообщает об этом заранее, но у пользователей Steam Deck есть масса кнопок быстрого доступа, на которые они могут положиться. Все эти сочетания клавиш включают удержание кнопки «Steam» в тандеме с одной из других кнопок для создания различных эффектов. Как я уже сказал, легкие вещи.
Самое главное, что нужно знать просто, касается кнопки Steam. Если вы нажмете и будете удерживать ее практически в любое время, всплывает весь список всех доступных ярлыков, пока вы не отпустите кнопку. Так что в те моменты, когда вы забываете — как это случалось со мной много раз — вы можете безболезненно освежить свою память, не обращаясь к поисковой системе в Интернете.
С точки зрения того, что я использовал чаще всего, ярлык «Сделать снимок экрана» (Steam + R1) захватывает все, что находится на вашем экране, и загружает его в библиотеку на устройстве. Если вы хотите сделать свои скриншоты доступными на компьютере (или другом устройстве, на котором у вас установлен Steam), вы можете легко отправить их в облако. Перейдите в меню «Медиа» Steam Deck, выделите снимок экрана, который хотите загрузить, нажмите кнопку «Параметры» и выберите «Загрузить». Вот и все!
Виртуальное сочетание клавиш также чрезвычайно полезно для многих игр, поддерживаемых Steam Deck, которые требуют периодического набора текста. Просто нажмите Steam + X, чтобы мгновенно вызвать клавиатуру в стиле смартфона.
Однако есть одна загвоздка. Виртуальная клавиатура работает только при запущенном Steam. В стандартном режиме SteamOS это означает, что вы можете вызывать клавиатуру практически из любого места. Но эта функция более ограничена, если вы используете «Режим рабочего стола» в стиле Windows. Он по-прежнему работает в таких приложениях, как Chrome, но вам понадобится настольная версия Steam, работающая в фоновом режиме (для этого есть значок на рабочем столе). Вы, вероятно, не будете слишком часто использовать эту функцию на рабочем столе, но она полезна в тех случаях, когда вы хотите установить сторонние приложения, такие как Discord.
Вы также можете мгновенно настроить яркость экрана, что поможет продлить срок службы батареи, удерживая кнопку Steam и наклоняя левый стик вверх или вниз, чтобы увеличить или уменьшить яркость соответственно.
Последний важный момент, который нужно запомнить: Steam + B (долгое нажатие), который в Steam Deck эквивалентен Force Quit на Mac и Alt + F4 на Windows. Время от времени игры дают сбои, и Steam Deck не всегда сможет это исправить. Достаточно легко перезагрузиться, нажав и удерживая кнопку питания, но команда Steam + B «Принудительное завершение игры» дает вам еще один вариант. Я использовал его много раз.
Потратьте время на изучение меню, если вам посчастливилось получить колоду Steam. Существует множество незаметных функций, которые легко пропустить, если вы их не ищете.
Читайте также: