mirror of
https://github.com/overte-org/overte.git
synced 2025-08-10 14:52:46 +02:00
Merge pull request #766 from overte-org/controller_scripts_performance_4
Improvement in controller scripts performance
This commit is contained in:
commit
af1932e2cc
5 changed files with 12 additions and 12 deletions
|
@ -190,7 +190,7 @@ Script.include("/~/system/libraries/controllers.js");
|
||||||
var worldToSensorMat = Mat4.inverse(MyAvatar.getSensorToWorldMatrix());
|
var worldToSensorMat = Mat4.inverse(MyAvatar.getSensorToWorldMatrix());
|
||||||
var roomControllerPosition = Mat4.transformPoint(worldToSensorMat, worldControllerPosition);
|
var roomControllerPosition = Mat4.transformPoint(worldToSensorMat, worldControllerPosition);
|
||||||
|
|
||||||
var grabbedProperties = Entities.getEntityProperties(this.grabbedThingID, DISPATCHER_PROPERTIES);
|
var grabbedProperties = Entities.getEntityProperties(this.grabbedThingID, "position");
|
||||||
var now = Date.now();
|
var now = Date.now();
|
||||||
var deltaObjectTime = (now - this.currentObjectTime) / MSECS_PER_SEC; // convert to seconds
|
var deltaObjectTime = (now - this.currentObjectTime) / MSECS_PER_SEC; // convert to seconds
|
||||||
this.currentObjectTime = now;
|
this.currentObjectTime = now;
|
||||||
|
@ -306,7 +306,7 @@ Script.include("/~/system/libraries/controllers.js");
|
||||||
|
|
||||||
this.notPointingAtEntity = function(controllerData) {
|
this.notPointingAtEntity = function(controllerData) {
|
||||||
var intersection = controllerData.rayPicks[this.hand];
|
var intersection = controllerData.rayPicks[this.hand];
|
||||||
var entityProperty = Entities.getEntityProperties(intersection.objectID, DISPATCHER_PROPERTIES);
|
var entityProperty = Entities.getEntityProperties(intersection.objectID, "type");
|
||||||
var entityType = entityProperty.type;
|
var entityType = entityProperty.type;
|
||||||
var hudRayPick = controllerData.hudRayPicks[this.hand];
|
var hudRayPick = controllerData.hudRayPicks[this.hand];
|
||||||
var point2d = this.calculateNewReticlePosition(hudRayPick.intersection);
|
var point2d = this.calculateNewReticlePosition(hudRayPick.intersection);
|
||||||
|
@ -341,7 +341,7 @@ Script.include("/~/system/libraries/controllers.js");
|
||||||
var worldControllerPosition = controllerLocation.position;
|
var worldControllerPosition = controllerLocation.position;
|
||||||
var worldControllerRotation = controllerLocation.orientation;
|
var worldControllerRotation = controllerLocation.orientation;
|
||||||
|
|
||||||
var grabbedProperties = Entities.getEntityProperties(intersection.objectID, DISPATCHER_PROPERTIES);
|
var grabbedProperties = Entities.getEntityProperties(intersection.objectID, "position");
|
||||||
this.currentObjectPosition = grabbedProperties.position;
|
this.currentObjectPosition = grabbedProperties.position;
|
||||||
this.grabRadius = intersection.distance;
|
this.grabRadius = intersection.distance;
|
||||||
|
|
||||||
|
@ -355,7 +355,7 @@ Script.include("/~/system/libraries/controllers.js");
|
||||||
};
|
};
|
||||||
|
|
||||||
this.targetIsNull = function() {
|
this.targetIsNull = function() {
|
||||||
var properties = Entities.getEntityProperties(this.grabbedThingID, DISPATCHER_PROPERTIES);
|
var properties = Entities.getEntityProperties(this.grabbedThingID, "type");
|
||||||
if (Object.keys(properties).length === 0 && this.distanceHolding) {
|
if (Object.keys(properties).length === 0 && this.distanceHolding) {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
|
@ -224,7 +224,7 @@ Script.include("/~/system/libraries/controllers.js");
|
||||||
var worldToSensorMat = Mat4.inverse(MyAvatar.getSensorToWorldMatrix());
|
var worldToSensorMat = Mat4.inverse(MyAvatar.getSensorToWorldMatrix());
|
||||||
var roomControllerPosition = Mat4.transformPoint(worldToSensorMat, worldControllerPosition);
|
var roomControllerPosition = Mat4.transformPoint(worldToSensorMat, worldControllerPosition);
|
||||||
|
|
||||||
var targetProps = Entities.getEntityProperties(this.targetEntityID, DISPATCHER_PROPERTIES);
|
var targetProps = Entities.getEntityProperties(this.targetEntityID, "position");
|
||||||
var now = Date.now();
|
var now = Date.now();
|
||||||
var deltaObjectTime = (now - this.currentObjectTime) / MSECS_PER_SEC; // convert to seconds
|
var deltaObjectTime = (now - this.currentObjectTime) / MSECS_PER_SEC; // convert to seconds
|
||||||
this.currentObjectTime = now;
|
this.currentObjectTime = now;
|
||||||
|
@ -358,7 +358,7 @@ Script.include("/~/system/libraries/controllers.js");
|
||||||
|
|
||||||
this.notPointingAtEntity = function (controllerData) {
|
this.notPointingAtEntity = function (controllerData) {
|
||||||
var intersection = controllerData.rayPicks[this.hand];
|
var intersection = controllerData.rayPicks[this.hand];
|
||||||
var entityProperty = Entities.getEntityProperties(intersection.objectID, DISPATCHER_PROPERTIES);
|
var entityProperty = Entities.getEntityProperties(intersection.objectID, "type");
|
||||||
var entityType = entityProperty.type;
|
var entityType = entityProperty.type;
|
||||||
var hudRayPick = controllerData.hudRayPicks[this.hand];
|
var hudRayPick = controllerData.hudRayPicks[this.hand];
|
||||||
var point2d = this.calculateNewReticlePosition(hudRayPick.intersection);
|
var point2d = this.calculateNewReticlePosition(hudRayPick.intersection);
|
||||||
|
@ -370,7 +370,7 @@ Script.include("/~/system/libraries/controllers.js");
|
||||||
};
|
};
|
||||||
|
|
||||||
this.targetIsNull = function () {
|
this.targetIsNull = function () {
|
||||||
var properties = Entities.getEntityProperties(this.targetEntityID, DISPATCHER_PROPERTIES);
|
var properties = Entities.getEntityProperties(this.targetEntityID, "type");
|
||||||
if (Object.keys(properties).length === 0 && this.distanceHolding) {
|
if (Object.keys(properties).length === 0 && this.distanceHolding) {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
|
@ -161,7 +161,7 @@ Script.include("/~/system/libraries/controllers.js");
|
||||||
|
|
||||||
var props = controllerData.nearbyEntityPropertiesByID[this.targetEntityID];
|
var props = controllerData.nearbyEntityPropertiesByID[this.targetEntityID];
|
||||||
if (!props) {
|
if (!props) {
|
||||||
props = Entities.getEntityProperties(this.targetEntityID, DISPATCHER_PROPERTIES);
|
props = Entities.getEntityProperties(this.targetEntityID, "type");
|
||||||
if (!props) {
|
if (!props) {
|
||||||
// entity was deleted
|
// entity was deleted
|
||||||
this.grabbing = false;
|
this.grabbing = false;
|
||||||
|
|
|
@ -7,7 +7,7 @@
|
||||||
|
|
||||||
/* global Script, Entities, enableDispatcherModule, disableDispatcherModule, makeRunningValues,
|
/* global Script, Entities, enableDispatcherModule, disableDispatcherModule, makeRunningValues,
|
||||||
makeDispatcherModuleParameters, Overlays, HMD, TRIGGER_ON_VALUE, TRIGGER_OFF_VALUE, getEnabledModuleByName,
|
makeDispatcherModuleParameters, Overlays, HMD, TRIGGER_ON_VALUE, TRIGGER_OFF_VALUE, getEnabledModuleByName,
|
||||||
Picks, makeLaserParams, Settings, MyAvatar, RIGHT_HAND, LEFT_HAND, DISPATCHER_PROPERTIES
|
Picks, makeLaserParams, Settings, MyAvatar, RIGHT_HAND, LEFT_HAND
|
||||||
*/
|
*/
|
||||||
|
|
||||||
Script.include("/~/system/libraries/controllerDispatcherUtils.js");
|
Script.include("/~/system/libraries/controllerDispatcherUtils.js");
|
||||||
|
@ -164,7 +164,7 @@ Script.include("/~/system/libraries/controllers.js");
|
||||||
return type;
|
return type;
|
||||||
}
|
}
|
||||||
} else if (intersection.type === Picks.INTERSECTED_ENTITY) {
|
} else if (intersection.type === Picks.INTERSECTED_ENTITY) {
|
||||||
var entityProperties = Entities.getEntityProperties(objectID, DISPATCHER_PROPERTIES);
|
var entityProperties = Entities.getEntityProperties(objectID, ["type","locked"]);
|
||||||
var entityType = entityProperties.type;
|
var entityType = entityProperties.type;
|
||||||
var isLocked = entityProperties.locked;
|
var isLocked = entityProperties.locked;
|
||||||
if (entityType === "Web" && (!isLocked || triggerPressed)) {
|
if (entityType === "Web" && (!isLocked || triggerPressed)) {
|
||||||
|
|
|
@ -311,7 +311,7 @@ Grabber.prototype.pressEvent = function(event) {
|
||||||
mouse.startDrag(event);
|
mouse.startDrag(event);
|
||||||
|
|
||||||
var clickedEntity = pickResults.objectID;
|
var clickedEntity = pickResults.objectID;
|
||||||
var entityProperties = Entities.getEntityProperties(clickedEntity, DISPATCHER_PROPERTIES);
|
var entityProperties = Entities.getEntityProperties(clickedEntity, ["position", "rotation", "dimensions"]);
|
||||||
this.startPosition = entityProperties.position;
|
this.startPosition = entityProperties.position;
|
||||||
this.lastRotation = entityProperties.rotation;
|
this.lastRotation = entityProperties.rotation;
|
||||||
var cameraPosition = Camera.getPosition();
|
var cameraPosition = Camera.getPosition();
|
||||||
|
@ -422,7 +422,7 @@ Grabber.prototype.moveEvent = function(event) {
|
||||||
|
|
||||||
Grabber.prototype.moveEventProcess = function() {
|
Grabber.prototype.moveEventProcess = function() {
|
||||||
this.moveEventTimer = null;
|
this.moveEventTimer = null;
|
||||||
var entityProperties = Entities.getEntityProperties(this.entityID, DISPATCHER_PROPERTIES);
|
var entityProperties = Entities.getEntityProperties(this.entityID, "position");
|
||||||
if (!entityProperties || HMD.active) {
|
if (!entityProperties || HMD.active) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue