in MiniEngine/Core/GameInput.cpp [102:316]
void KbmBuildKeyMapping()
{
#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)
s_DXKeyMapping[GameInput::kKey_escape] = 1;
s_DXKeyMapping[GameInput::kKey_1] = 2;
s_DXKeyMapping[GameInput::kKey_2] = 3;
s_DXKeyMapping[GameInput::kKey_3] = 4;
s_DXKeyMapping[GameInput::kKey_4] = 5;
s_DXKeyMapping[GameInput::kKey_5] = 6;
s_DXKeyMapping[GameInput::kKey_6] = 7;
s_DXKeyMapping[GameInput::kKey_7] = 8;
s_DXKeyMapping[GameInput::kKey_8] = 9;
s_DXKeyMapping[GameInput::kKey_9] = 10;
s_DXKeyMapping[GameInput::kKey_0] = 11;
s_DXKeyMapping[GameInput::kKey_minus] = 12;
s_DXKeyMapping[GameInput::kKey_equals] = 13;
s_DXKeyMapping[GameInput::kKey_back] = 14;
s_DXKeyMapping[GameInput::kKey_tab] = 15;
s_DXKeyMapping[GameInput::kKey_q] = 16;
s_DXKeyMapping[GameInput::kKey_w] = 17;
s_DXKeyMapping[GameInput::kKey_e] = 18;
s_DXKeyMapping[GameInput::kKey_r] = 19;
s_DXKeyMapping[GameInput::kKey_t] = 20;
s_DXKeyMapping[GameInput::kKey_y] = 21;
s_DXKeyMapping[GameInput::kKey_u] = 22;
s_DXKeyMapping[GameInput::kKey_i] = 23;
s_DXKeyMapping[GameInput::kKey_o] = 24;
s_DXKeyMapping[GameInput::kKey_p] = 25;
s_DXKeyMapping[GameInput::kKey_lbracket] = 26;
s_DXKeyMapping[GameInput::kKey_rbracket] = 27;
s_DXKeyMapping[GameInput::kKey_return] = 28;
s_DXKeyMapping[GameInput::kKey_lcontrol] = 29;
s_DXKeyMapping[GameInput::kKey_a] = 30;
s_DXKeyMapping[GameInput::kKey_s] = 31;
s_DXKeyMapping[GameInput::kKey_d] = 32;
s_DXKeyMapping[GameInput::kKey_f] = 33;
s_DXKeyMapping[GameInput::kKey_g] = 34;
s_DXKeyMapping[GameInput::kKey_h] = 35;
s_DXKeyMapping[GameInput::kKey_j] = 36;
s_DXKeyMapping[GameInput::kKey_k] = 37;
s_DXKeyMapping[GameInput::kKey_l] = 38;
s_DXKeyMapping[GameInput::kKey_semicolon] = 39;
s_DXKeyMapping[GameInput::kKey_apostrophe] = 40;
s_DXKeyMapping[GameInput::kKey_grave] = 41;
s_DXKeyMapping[GameInput::kKey_lshift] = 42;
s_DXKeyMapping[GameInput::kKey_backslash] = 43;
s_DXKeyMapping[GameInput::kKey_z] = 44;
s_DXKeyMapping[GameInput::kKey_x] = 45;
s_DXKeyMapping[GameInput::kKey_c] = 46;
s_DXKeyMapping[GameInput::kKey_v] = 47;
s_DXKeyMapping[GameInput::kKey_b] = 48;
s_DXKeyMapping[GameInput::kKey_n] = 49;
s_DXKeyMapping[GameInput::kKey_m] = 50;
s_DXKeyMapping[GameInput::kKey_comma] = 51;
s_DXKeyMapping[GameInput::kKey_period] = 52;
s_DXKeyMapping[GameInput::kKey_slash] = 53;
s_DXKeyMapping[GameInput::kKey_rshift] = 54;
s_DXKeyMapping[GameInput::kKey_multiply] = 55;
s_DXKeyMapping[GameInput::kKey_lalt] = 56;
s_DXKeyMapping[GameInput::kKey_space] = 57;
s_DXKeyMapping[GameInput::kKey_capital] = 58;
s_DXKeyMapping[GameInput::kKey_f1] = 59;
s_DXKeyMapping[GameInput::kKey_f2] = 60;
s_DXKeyMapping[GameInput::kKey_f3] = 61;
s_DXKeyMapping[GameInput::kKey_f4] = 62;
s_DXKeyMapping[GameInput::kKey_f5] = 63;
s_DXKeyMapping[GameInput::kKey_f6] = 64;
s_DXKeyMapping[GameInput::kKey_f7] = 65;
s_DXKeyMapping[GameInput::kKey_f8] = 66;
s_DXKeyMapping[GameInput::kKey_f9] = 67;
s_DXKeyMapping[GameInput::kKey_f10] = 68;
s_DXKeyMapping[GameInput::kKey_numlock] = 69;
s_DXKeyMapping[GameInput::kKey_scroll] = 70;
s_DXKeyMapping[GameInput::kKey_numpad7] = 71;
s_DXKeyMapping[GameInput::kKey_numpad8] = 72;
s_DXKeyMapping[GameInput::kKey_numpad9] = 73;
s_DXKeyMapping[GameInput::kKey_subtract] = 74;
s_DXKeyMapping[GameInput::kKey_numpad4] = 75;
s_DXKeyMapping[GameInput::kKey_numpad5] = 76;
s_DXKeyMapping[GameInput::kKey_numpad6] = 77;
s_DXKeyMapping[GameInput::kKey_add] = 78;
s_DXKeyMapping[GameInput::kKey_numpad1] = 79;
s_DXKeyMapping[GameInput::kKey_numpad2] = 80;
s_DXKeyMapping[GameInput::kKey_numpad3] = 81;
s_DXKeyMapping[GameInput::kKey_numpad0] = 82;
s_DXKeyMapping[GameInput::kKey_decimal] = 83;
s_DXKeyMapping[GameInput::kKey_f11] = 87;
s_DXKeyMapping[GameInput::kKey_f12] = 88;
s_DXKeyMapping[GameInput::kKey_numpadenter] = 156;
s_DXKeyMapping[GameInput::kKey_rcontrol] = 157;
s_DXKeyMapping[GameInput::kKey_divide] = 181;
s_DXKeyMapping[GameInput::kKey_sysrq] = 183;
s_DXKeyMapping[GameInput::kKey_ralt] = 184;
s_DXKeyMapping[GameInput::kKey_pause] = 197;
s_DXKeyMapping[GameInput::kKey_home] = 199;
s_DXKeyMapping[GameInput::kKey_up] = 200;
s_DXKeyMapping[GameInput::kKey_pgup] = 201;
s_DXKeyMapping[GameInput::kKey_left] = 203;
s_DXKeyMapping[GameInput::kKey_right] = 205;
s_DXKeyMapping[GameInput::kKey_end] = 207;
s_DXKeyMapping[GameInput::kKey_down] = 208;
s_DXKeyMapping[GameInput::kKey_pgdn] = 209;
s_DXKeyMapping[GameInput::kKey_insert] = 210;
s_DXKeyMapping[GameInput::kKey_delete] = 211;
s_DXKeyMapping[GameInput::kKey_lwin] = 219;
s_DXKeyMapping[GameInput::kKey_rwin] = 220;
s_DXKeyMapping[GameInput::kKey_apps] = 221;
#else
#define WinRTKey(name) (unsigned char)Windows::System::VirtualKey::name
s_DXKeyMapping[GameInput::kKey_escape] = WinRTKey(Escape);
s_DXKeyMapping[GameInput::kKey_1] = WinRTKey(Number1);
s_DXKeyMapping[GameInput::kKey_2] = WinRTKey(Number2);
s_DXKeyMapping[GameInput::kKey_3] = WinRTKey(Number3);
s_DXKeyMapping[GameInput::kKey_4] = WinRTKey(Number4);
s_DXKeyMapping[GameInput::kKey_5] = WinRTKey(Number5);
s_DXKeyMapping[GameInput::kKey_6] = WinRTKey(Number6);
s_DXKeyMapping[GameInput::kKey_7] = WinRTKey(Number7);
s_DXKeyMapping[GameInput::kKey_8] = WinRTKey(Number8);
s_DXKeyMapping[GameInput::kKey_9] = WinRTKey(Number9);
s_DXKeyMapping[GameInput::kKey_0] = WinRTKey(Number0);
s_DXKeyMapping[GameInput::kKey_minus] = WinRTKey(Subtract);
s_DXKeyMapping[GameInput::kKey_equals] = WinRTKey(Add);
s_DXKeyMapping[GameInput::kKey_back] = WinRTKey(Back);
s_DXKeyMapping[GameInput::kKey_tab] = WinRTKey(Tab);
s_DXKeyMapping[GameInput::kKey_q] = WinRTKey(Q);
s_DXKeyMapping[GameInput::kKey_w] = WinRTKey(W);
s_DXKeyMapping[GameInput::kKey_e] = WinRTKey(E);
s_DXKeyMapping[GameInput::kKey_r] = WinRTKey(R);
s_DXKeyMapping[GameInput::kKey_t] = WinRTKey(T);
s_DXKeyMapping[GameInput::kKey_y] = WinRTKey(Y);
s_DXKeyMapping[GameInput::kKey_u] = WinRTKey(U);
s_DXKeyMapping[GameInput::kKey_i] = WinRTKey(I);
s_DXKeyMapping[GameInput::kKey_o] = WinRTKey(O);
s_DXKeyMapping[GameInput::kKey_p] = WinRTKey(P);
s_DXKeyMapping[GameInput::kKey_lbracket] = 219;
s_DXKeyMapping[GameInput::kKey_rbracket] = 221;
s_DXKeyMapping[GameInput::kKey_return] = WinRTKey(Enter);
s_DXKeyMapping[GameInput::kKey_lcontrol] = WinRTKey(Control); // No L/R
s_DXKeyMapping[GameInput::kKey_a] = WinRTKey(A);
s_DXKeyMapping[GameInput::kKey_s] = WinRTKey(S);
s_DXKeyMapping[GameInput::kKey_d] = WinRTKey(D);
s_DXKeyMapping[GameInput::kKey_f] = WinRTKey(F);
s_DXKeyMapping[GameInput::kKey_g] = WinRTKey(G);
s_DXKeyMapping[GameInput::kKey_h] = WinRTKey(H);
s_DXKeyMapping[GameInput::kKey_j] = WinRTKey(J);
s_DXKeyMapping[GameInput::kKey_k] = WinRTKey(K);
s_DXKeyMapping[GameInput::kKey_l] = WinRTKey(L);
s_DXKeyMapping[GameInput::kKey_semicolon] = 186;
s_DXKeyMapping[GameInput::kKey_apostrophe] = 222;
s_DXKeyMapping[GameInput::kKey_grave] = 192; // ` or ~
s_DXKeyMapping[GameInput::kKey_lshift] = WinRTKey(LeftShift);
s_DXKeyMapping[GameInput::kKey_backslash] = 220;
s_DXKeyMapping[GameInput::kKey_z] = WinRTKey(Z);
s_DXKeyMapping[GameInput::kKey_x] = WinRTKey(X);
s_DXKeyMapping[GameInput::kKey_c] = WinRTKey(C);
s_DXKeyMapping[GameInput::kKey_v] = WinRTKey(V);
s_DXKeyMapping[GameInput::kKey_b] = WinRTKey(B);
s_DXKeyMapping[GameInput::kKey_n] = WinRTKey(N);
s_DXKeyMapping[GameInput::kKey_m] = WinRTKey(M);
s_DXKeyMapping[GameInput::kKey_comma] = 188;
s_DXKeyMapping[GameInput::kKey_period] = 190;
s_DXKeyMapping[GameInput::kKey_slash] = 191;
s_DXKeyMapping[GameInput::kKey_rshift] = WinRTKey(RightShift);
s_DXKeyMapping[GameInput::kKey_multiply] = WinRTKey(Multiply);
s_DXKeyMapping[GameInput::kKey_lalt] = 255; // Only a modifier
s_DXKeyMapping[GameInput::kKey_space] = WinRTKey(Space);
s_DXKeyMapping[GameInput::kKey_capital] = WinRTKey(CapitalLock);
s_DXKeyMapping[GameInput::kKey_f1] = WinRTKey(F1);
s_DXKeyMapping[GameInput::kKey_f2] = WinRTKey(F2);
s_DXKeyMapping[GameInput::kKey_f3] = WinRTKey(F3);
s_DXKeyMapping[GameInput::kKey_f4] = WinRTKey(F4);
s_DXKeyMapping[GameInput::kKey_f5] = WinRTKey(F5);
s_DXKeyMapping[GameInput::kKey_f6] = WinRTKey(F6);
s_DXKeyMapping[GameInput::kKey_f7] = WinRTKey(F7);
s_DXKeyMapping[GameInput::kKey_f8] = WinRTKey(F8);
s_DXKeyMapping[GameInput::kKey_f9] = WinRTKey(F9);
s_DXKeyMapping[GameInput::kKey_f10] = WinRTKey(F10);
s_DXKeyMapping[GameInput::kKey_numlock] = WinRTKey(NumberKeyLock);
s_DXKeyMapping[GameInput::kKey_scroll] = WinRTKey(Scroll);
s_DXKeyMapping[GameInput::kKey_numpad7] = WinRTKey(NumberPad7);
s_DXKeyMapping[GameInput::kKey_numpad8] = WinRTKey(NumberPad8);
s_DXKeyMapping[GameInput::kKey_numpad9] = WinRTKey(NumberPad9);
s_DXKeyMapping[GameInput::kKey_subtract] = WinRTKey(Subtract);
s_DXKeyMapping[GameInput::kKey_numpad4] = WinRTKey(NumberPad4);
s_DXKeyMapping[GameInput::kKey_numpad5] = WinRTKey(NumberPad5);
s_DXKeyMapping[GameInput::kKey_numpad6] = WinRTKey(NumberPad6);
s_DXKeyMapping[GameInput::kKey_add] = WinRTKey(Add);
s_DXKeyMapping[GameInput::kKey_numpad1] = WinRTKey(NumberPad1);
s_DXKeyMapping[GameInput::kKey_numpad2] = WinRTKey(NumberPad2);
s_DXKeyMapping[GameInput::kKey_numpad3] = WinRTKey(NumberPad3);
s_DXKeyMapping[GameInput::kKey_numpad0] = WinRTKey(NumberPad0);
s_DXKeyMapping[GameInput::kKey_decimal] = WinRTKey(Decimal);
s_DXKeyMapping[GameInput::kKey_f11] = WinRTKey(F11);
s_DXKeyMapping[GameInput::kKey_f12] = WinRTKey(F12);
s_DXKeyMapping[GameInput::kKey_numpadenter] = WinRTKey(Enter); // No distinction
s_DXKeyMapping[GameInput::kKey_rcontrol] = WinRTKey(Control); // No L/R
s_DXKeyMapping[GameInput::kKey_divide] = WinRTKey(Divide);
s_DXKeyMapping[GameInput::kKey_sysrq] = 255; // Ignored
s_DXKeyMapping[GameInput::kKey_ralt] = 255; // Only a modifier
s_DXKeyMapping[GameInput::kKey_pause] = WinRTKey(Pause);
s_DXKeyMapping[GameInput::kKey_home] = WinRTKey(Home);
s_DXKeyMapping[GameInput::kKey_up] = WinRTKey(Up);
s_DXKeyMapping[GameInput::kKey_pgup] = WinRTKey(PageUp);
s_DXKeyMapping[GameInput::kKey_left] = WinRTKey(Left);
s_DXKeyMapping[GameInput::kKey_right] = WinRTKey(Right);
s_DXKeyMapping[GameInput::kKey_end] = WinRTKey(End);
s_DXKeyMapping[GameInput::kKey_down] = WinRTKey(Down);
s_DXKeyMapping[GameInput::kKey_pgdn] = WinRTKey(PageDown);
s_DXKeyMapping[GameInput::kKey_insert] = WinRTKey(Insert);
s_DXKeyMapping[GameInput::kKey_delete] = WinRTKey(Delete);
s_DXKeyMapping[GameInput::kKey_lwin] = WinRTKey(LeftWindows);
s_DXKeyMapping[GameInput::kKey_rwin] = WinRTKey(RightWindows);
s_DXKeyMapping[GameInput::kKey_apps] = WinRTKey(Application);
#endif
}