Как избежать появления ореолов при нажатии нескольких клавиш?


15

Я работаю над 2D-игрой с боковой прокруткой, в которой используется библиотека игр SFML. Проблема, которую я не могу решить, состоит в том, что во многих клавиатурах комбинация из трех или более клавиш (например, w + d + k) не работает. Есть ли способ решить эту проблему?


1
У меня никогда не было клавиатуры, где W + D + K приводило бы к появлению проблемы с ореолом. Вы уверены, что то, что вы видите, это двоение, а не ограниченное количество одновременных входов на клавиатуре?
— Logarr

@Logarr « ореолы » проблема , что некоторые клавиши клавиатуры не работают , когда несколько клавиш нажаты одновременно. Говорят, что нажатия клавиш, которые не отображаются на компьютере или исчезли, «призраки».
— Сис Тиммерман

@CeesTimmerman - я точно знаю, что такое призрак. Я хочу сказать, что, поскольку W + D + K не образуют пересечение, у меня никогда не было клавиатуры, которая была бы разработана таким образом, чтобы иметь такую ​​комбинацию-призрак.
— Logarr

@Logarr Тогда предел будет в программном обеспечении OP, а не в клавиатуре или ее драйвере. Кроме того, не все клавиатуры одинаковы.
— Сис Тиммерман

Ответы:


28

Ты не можешь По крайней мере, не как разработчик игр.

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

Посетите эту демонстрационную страницу, чтобы увидеть, как работает двоение в клавиатуре, а также демонстрацию: http://www.microsoft.com/appliedsciences/antighostingexplained.mspx

Итак, ваши лучшие ставки:

  • Не используйте схему управления, которая требует слишком много одновременных нажатий клавиш
  • Используйте игровые планшеты, если они доступны
  • Позвольте игроку переназначить ключи так, чтобы он мог найти набор ключей, не относящийся к двоениям, для своего оборудования.
  • Если нужно, придерживайтесь левой стороны клавиатуры (вокруг WASD), потому что клавиатуры, как правило, избегают появления ореолов

Исторически сложилось, что многие компьютерные игры используются клавиши - модификаторы ( Ctrl, Alt, Shift) как часть их управления , потому что эти ключи были подключены для обработки прижимаются друг к другу с другими клавишами, чтобы избежать ореолов. Эта практика в 90-х годах потеряла популярность, поскольку клавиши-модификаторы все больше использовались ОС, что мешало бы игре.

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

Глядя на ваш пример, Wи Dвсе хорошо, но Kэто не так; Вы случайно не используете Kв качестве направленного управления? Если это так, рассмотрите возможность использования клавиш со стрелками.


1
Ваш ответ начинается с «Вы не можете», но затем вы даете хороший совет, как именно этого избежать. Я думаю, что правильный ответ здесь - «выбрать управляющие клавиши, у которых нет проблем с ореолом на большинстве клавиатур». Хорошая информация здесь.
— JPhi1618,

@ JPhi1618 Я думаю, что есть разница между «вот как избежать появления призраков» и «вот как бороться с тем фактом, что большинство клавиатур имеют« призрачные »клавиатуры»
— подземный

3

Купи лучшую клавиатуру.

Призраки вызваны самим оборудованием. Даже многие игровые клавиатуры все еще будут иметь эту проблему; они только вкладывают средства в исправление проблемы для «общих» ключей, таких как WASD (но не «K», например).

http://www.microsoft.com/appliedsciences/antighostingexplained.mspx


6
... и скажите всем своим клиентам, чтобы они покупали лучшие клавиатуры? Это не похоже на самое удобное решение.
— Филипп

Жизнь тяжела. Заставьте своих клиентов покупать более качественное оборудование или не создавайте игры, которые по сути своей не работают на обычных клавиатурах. Это не совсем ракетостроение. :)
— Шон Миддледич
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.