|
@@ -4034,6 +4034,14 @@ var BABYLON;
|
|
var Tools = (function () {
|
|
var Tools = (function () {
|
|
function Tools() {
|
|
function Tools() {
|
|
}
|
|
}
|
|
|
|
+ Tools.SetImmediate = function (action) {
|
|
|
|
+ if (window.setImmediate) {
|
|
|
|
+ window.setImmediate(action);
|
|
|
|
+ }
|
|
|
|
+ else {
|
|
|
|
+ setTimeout(action, 1);
|
|
|
|
+ }
|
|
|
|
+ };
|
|
Tools.GetFilename = function (path) {
|
|
Tools.GetFilename = function (path) {
|
|
var index = path.lastIndexOf("/");
|
|
var index = path.lastIndexOf("/");
|
|
if (index < 0)
|
|
if (index < 0)
|
|
@@ -14922,6 +14930,13 @@ var BABYLON;
|
|
this.delayLoadState = BABYLON.Engine.DELAYLOADSTATE_NOTLOADED;
|
|
this.delayLoadState = BABYLON.Engine.DELAYLOADSTATE_NOTLOADED;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
+ else {
|
|
|
|
+ BABYLON.Tools.SetImmediate(function () {
|
|
|
|
+ if (onLoad) {
|
|
|
|
+ onLoad();
|
|
|
|
+ }
|
|
|
|
+ });
|
|
|
|
+ }
|
|
}
|
|
}
|
|
Texture.prototype.delayLoad = function () {
|
|
Texture.prototype.delayLoad = function () {
|
|
if (this.delayLoadState !== BABYLON.Engine.DELAYLOADSTATE_NOTLOADED) {
|
|
if (this.delayLoadState !== BABYLON.Engine.DELAYLOADSTATE_NOTLOADED) {
|
|
@@ -21462,8 +21477,9 @@ var BABYLON;
|
|
var body = registeredMesh.body.body;
|
|
var body = registeredMesh.body.body;
|
|
mesh.computeWorldMatrix(true);
|
|
mesh.computeWorldMatrix(true);
|
|
var center = mesh.getBoundingInfo().boundingBox.center;
|
|
var center = mesh.getBoundingInfo().boundingBox.center;
|
|
- body.setPosition(center.x, center.y, center.z);
|
|
|
|
- body.setRotation(mesh.rotation.x, mesh.rotation.y, mesh.rotation.z);
|
|
|
|
|
|
+ body.setPosition(new OIMO.Vec3(center.x, center.y, center.z));
|
|
|
|
+ body.setRotation(new OIMO.Vec3(mesh.rotation.x, mesh.rotation.y, mesh.rotation.z));
|
|
|
|
+ body.sleeping = false;
|
|
return;
|
|
return;
|
|
}
|
|
}
|
|
// Case where the parent has been updated
|
|
// Case where the parent has been updated
|
|
@@ -21473,8 +21489,9 @@ var BABYLON;
|
|
var absolutePosition = registeredMesh.mesh.getAbsolutePosition();
|
|
var absolutePosition = registeredMesh.mesh.getAbsolutePosition();
|
|
var absoluteRotation = mesh.rotation;
|
|
var absoluteRotation = mesh.rotation;
|
|
body = registeredMesh.body.body;
|
|
body = registeredMesh.body.body;
|
|
- body.setPosition(absolutePosition.x, absolutePosition.y, absolutePosition.z);
|
|
|
|
- body.setRotation(absoluteRotation.x, absoluteRotation.y, absoluteRotation.z);
|
|
|
|
|
|
+ body.setPosition(new OIMO.Vec3(absolutePosition.x, absolutePosition.y, absolutePosition.z));
|
|
|
|
+ body.setRotation(new OIMO.Vec3(absoluteRotation.x, absoluteRotation.y, absoluteRotation.z));
|
|
|
|
+ body.sleeping = false;
|
|
return;
|
|
return;
|
|
}
|
|
}
|
|
}
|
|
}
|