// キーが押されて離された。 LRESULT OnWindowKeyUpMessage(HWND /*hWnd*/, UINT /*msg*/, WPARAM wParam, LPARAM lParam) { WindowKeyMessageParameters params(wParam, lParam); switch (params.GetVirtKey()) { case VK_F2: _flags = _flags.not(INVALID_MESH_DRAW); break; case VK_F3: _flags = _flags.not(INVALID_BONE_DRAW); break; case VK_F4: _motionTimer.Reset(); _motionTimer.Start(); break; case VK_F5: _pmd.SetMotionLoop(!_pmd.GetMotionLoop()); break; case VK_F6: if (_pmd.IsNoInterpolation()) { _pmd.SwitchToLinearInterpolation(); } else if (_pmd.IsLinearInterpolation()) { _pmd.SwitchToUseParameterInterpolation(); } else if (_pmd.IsUseParameterInterpolation()) { _pmd.SwitchToNoInterpolation(); } break; } return 0; }
// キーが押されて離された。 LRESULT OnWindowKeyUpMessage(HWND /*hWnd*/, UINT /*msg*/, WPARAM wParam, LPARAM lParam) { WindowKeyMessageParameters params(wParam, lParam); if (params.GetVirtKey() == VK_F2) { _flags = _flags.not(INVALID_MESH_DRAW); } if (params.GetVirtKey() == VK_F3) { _flags = _flags.not(INVALID_BONE_DRAW); } return 0; }