Fixing menu navigation in oculus remote

This commit is contained in:
Brad Davis 2016-04-06 15:10:48 -07:00
parent a58a627fdf
commit 2f28c64edb
2 changed files with 15 additions and 14 deletions

View file

@ -1,9 +1,8 @@
{ {
"name": "Oculus Remote to Standard", "name": "Oculus Remote to Standard",
"channels": [ "channels": [
{ "from": "OculusRemote.Back", "to": "Standard.Back" }, { "from": "OculusRemote.Start", "to": "Actions.UiNavSelect" },
{ "from": "OculusRemote.Start", "to": "Standard.Start" }, { "from": "OculusRemote.Back", "to": "Actions.UiNavBack" },
{ "from": "OculusRemote.DU", "to": "Standard.DU" }, { "from": "OculusRemote.DU", "to": "Standard.DU" },
{ "from": "OculusRemote.DD", "to": "Standard.DD" }, { "from": "OculusRemote.DD", "to": "Standard.DD" },
{ "from": "OculusRemote.DL", "to": "Standard.DL" }, { "from": "OculusRemote.DL", "to": "Standard.DL" },

View file

@ -44,13 +44,16 @@ bool OculusControllerManager::activate() {
// register with UserInputMapper // register with UserInputMapper
auto userInputMapper = DependencyManager::get<controller::UserInputMapper>(); auto userInputMapper = DependencyManager::get<controller::UserInputMapper>();
if (OVR_SUCCESS(ovr_GetInputState(_session, ovrControllerType_Remote, &_inputState))) {
_remote = std::make_shared<RemoteDevice>(*this); _remote = std::make_shared<RemoteDevice>(*this);
userInputMapper->registerDevice(_remote); userInputMapper->registerDevice(_remote);
}
#if 0 if (OVR_SUCCESS(ovr_GetInputState(_session, ovrControllerType_Touch, &_inputState))) {
_touch = std::make_shared<TouchDevice>(); _touch = std::make_shared<TouchDevice>(*this);
userInputMapper->registerDevice(_touch); userInputMapper->registerDevice(_touch);
#endif }
return true; return true;
} }
@ -76,7 +79,6 @@ void OculusControllerManager::deactivate() {
void OculusControllerManager::pluginUpdate(float deltaTime, const controller::InputCalibrationData& inputCalibrationData, bool jointsCaptured) { void OculusControllerManager::pluginUpdate(float deltaTime, const controller::InputCalibrationData& inputCalibrationData, bool jointsCaptured) {
PerformanceTimer perfTimer("OculusControllerManager::TouchDevice::update"); PerformanceTimer perfTimer("OculusControllerManager::TouchDevice::update");
if (_touch) { if (_touch) {
if (OVR_SUCCESS(ovr_GetInputState(_session, ovrControllerType_Touch, &_inputState))) { if (OVR_SUCCESS(ovr_GetInputState(_session, ovrControllerType_Touch, &_inputState))) {
_touch->update(deltaTime, inputCalibrationData, jointsCaptured); _touch->update(deltaTime, inputCalibrationData, jointsCaptured);
@ -141,10 +143,10 @@ static const std::vector<std::pair<ovrTouch, StandardButtonChannel>> TOUCH_MAP {
controller::Input::NamedVector OculusControllerManager::RemoteDevice::getAvailableInputs() const { controller::Input::NamedVector OculusControllerManager::RemoteDevice::getAvailableInputs() const {
using namespace controller; using namespace controller;
QVector<Input::NamedPair> availableInputs { QVector<Input::NamedPair> availableInputs {
makePair(DU, "Up"), makePair(DU, "DU"),
makePair(DD, "Down"), makePair(DD, "DD"),
makePair(DL, "Left"), makePair(DL, "DL"),
makePair(DR, "Right"), makePair(DR, "DR"),
makePair(START, "Start"), makePair(START, "Start"),
makePair(BACK, "Back"), makePair(BACK, "Back"),
}; };