Update controller display to support non-string hardware resolution

This commit is contained in:
Ryan Huffman 2016-12-09 15:15:31 -08:00 committed by Seth Alves
parent b835fc7ada
commit 53fb0a95fe
2 changed files with 12 additions and 8 deletions

View file

@ -21,14 +21,17 @@ function clamp(value, min, max) {
}
function resolveHardware(path) {
var parts = path.split(".");
function resolveInner(base, path, i) {
if (i >= path.length) {
return base;
if (typeof path === 'string') {
var parts = path.split(".");
function resolveInner(base, path, i) {
if (i >= path.length) {
return base;
}
return resolveInner(base[path[i]], path, ++i);
}
return resolveInner(base[path[i]], path, ++i);
return resolveInner(Controller.Hardware, parts, 0);
}
return resolveInner(Controller.Hardware, parts, 0);
return path;
}
var DEBUG = true;
@ -132,7 +135,9 @@ createControllerDisplay = function(config) {
overlayID = Overlays.addOverlay("model", properties);
if (part.type === "rotational") {
mapping.from([part.input]).peek().to(function(controller, overlayID, part) {
var input = resolveHardware(part.input);
print("Mapping to: ", part.input, input);
mapping.from([input]).peek().to(function(controller, overlayID, part) {
return function(value) {
value = clamp(value, part.minValue, part.maxValue);

View file

@ -83,7 +83,6 @@ VIVE_CONTROLLER_CONFIGURATION_LEFT = {
naturalPosition: {"x":-0.004377640783786774,"y":-0.034371938556432724,"z":0.06769277155399323},
textureName: "Tex.Blank",
defaultTextureLayer: "blank",
textureLayers: {
blank: {