95 lines
1.9 KiB
JavaScript
95 lines
1.9 KiB
JavaScript
var VRServiceTest;
|
|
var vrMockDisplay;
|
|
|
|
var VRSimulationDriver = (function () {
|
|
"use strict";
|
|
|
|
var AttachWebVRDisplay = function () {
|
|
if (vrMockDisplay) {
|
|
// Avoid creating multiple displays
|
|
return Promise.resolve(vrMockDisplay);
|
|
}
|
|
var promise = VRServiceTest.attachVRDisplay("VRDisplayTest");
|
|
promise.then(function (display) {
|
|
assert_true(display != null, "AttachWebVRDisplay should success.");
|
|
vrMockDisplay = display;
|
|
});
|
|
|
|
return promise;
|
|
};
|
|
|
|
var SetVRDisplayPose = function (
|
|
position,
|
|
linearVelocity,
|
|
linearAcceleration,
|
|
orientation,
|
|
angularVelocity,
|
|
angularAcceleration
|
|
) {
|
|
vrMockDisplay.setPose(
|
|
position,
|
|
linearVelocity,
|
|
linearAcceleration,
|
|
orientation,
|
|
angularVelocity,
|
|
angularAcceleration
|
|
);
|
|
};
|
|
|
|
var SetEyeResolution = function (width, height) {
|
|
vrMockDisplay.setEyeResolution(width, height);
|
|
};
|
|
|
|
var SetEyeParameter = function (
|
|
eye,
|
|
offsetX,
|
|
offsetY,
|
|
offsetZ,
|
|
upDegree,
|
|
rightDegree,
|
|
downDegree,
|
|
leftDegree
|
|
) {
|
|
vrMockDisplay.setEyeParameter(
|
|
eye,
|
|
offsetX,
|
|
offsetY,
|
|
offsetZ,
|
|
upDegree,
|
|
rightDegree,
|
|
downDegree,
|
|
leftDegree
|
|
);
|
|
};
|
|
|
|
var SetMountState = function (isMounted) {
|
|
vrMockDisplay.setMountState(isMounted);
|
|
};
|
|
|
|
var UpdateVRDisplay = function () {
|
|
vrMockDisplay.update();
|
|
};
|
|
|
|
var AttachVRController = function () {
|
|
var promise = VRServiceTest.attachVRController("VRControllerTest");
|
|
promise.then(function (controller) {
|
|
assert_true(controller != null, "AttachVRController should success.");
|
|
});
|
|
|
|
return promise;
|
|
};
|
|
|
|
var API = {
|
|
AttachWebVRDisplay,
|
|
SetVRDisplayPose,
|
|
SetEyeResolution,
|
|
SetEyeParameter,
|
|
SetMountState,
|
|
UpdateVRDisplay,
|
|
AttachVRController,
|
|
|
|
none: false,
|
|
};
|
|
|
|
return API;
|
|
})();
|