bepu / bepuphysics2

Pure C# 3D real time physics simulation library, now with a higher version number.
Apache License 2.0
2.35k stars 272 forks source link

Key.Tilde: Problematic on many non-English keyboards #88

Closed Bartolomeus-649 closed 4 years ago

Bartolomeus-649 commented 4 years ago

Many locals/regions/cultures have a keyboard layout that significantly differs from the "standard" US-English. Many of the keys/characters which is just a normal single key with the US-English keyboard layout, requires a combination of simultaneously pressed keys in may other keyboard layouts. The Tilde key is one of therese keys. So it would be really great if the Demo solution only used keys which doesn't require key combinations, since it can't handle when you need to press several keys simultaneously. And to make things even more complicated, some characters acts as modifications to the following character. So when you press the combination for the Tilde character it's not even produced, instead it's merged with the next character you type. And in order to get the Tilde character by itself, you need to combine it with space.

I made this change to Controls.cs: ChangeDemo = Key.F3, //Key.Tilde,

Also, I think it would be great if it were possible to run the demos on a laptop with a basic touch pad, that is, a touch pad without the possibility to scroll, and no middle mouse button and so on.

When Microsoft introduced Bitlocker for windows, they investigated which keyboard-keys they could use for entering the recovery key. And since this was done very early in the boot sequence, before any localizations for the keyboard were loaded, they needed to find keys that were there same all over the world. And they ended up with using the F-keys because they were the only one present everywhere. So, if you use the F-keys you should be rather safe they'll would just about anywhere.

RossNordby commented 4 years ago

Added some alternative binds in 76d3398ea6c9bd47626214abd157b3dcaaf965df. Let me know if there are any others.