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


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.