fixes from integration tests

beta.r3js.org
Theunis J. Botha 2016-10-26 16:13:18 +02:00
parent 39258d2afe
commit 7e8e3155bd
6 changed files with 60 additions and 54 deletions

File diff suppressed because one or more lines are too long

View File

@ -5,6 +5,15 @@ if (typeof GameLib == 'undefined') {
if (typeof GameLib.D3 == 'undefined') {
GameLib.D3 = function(){};
}
if (typeof Q == 'undefined') {
if (typeof require == 'undefined') {
console.warn('You need the Q promise library for the GameLib.D3');
throw new Error('You need the Q promise library for the GameLib.D3');
}
var Q = require('q');
}
/**
* BoneWeight object - associates a vertex to a bone with some weight
* @param boneIndex int
@ -1368,17 +1377,17 @@ GameLib.D3.Material.TYPE_MULTI_MATERIAL= "MultiMaterial";
* Creates an instance Material from a GameLib.D3.Material
* @param gameLibMaterial GameLib.D3.Material
* @param graphics GameLib.D3.Graphics
* @param uploadPath String
* @param uploadUrl String
* @param progressCallback
*/
GameLib.D3.Material.createInstanceMaterial = function(
gameLibMaterial,
graphics,
uploadPath,
uploadUrl,
progressCallback
) {
var defer = this.Q.defer();
var defer = Q.defer();
var instanceMaterial = null;
@ -1531,7 +1540,7 @@ GameLib.D3.Material.createInstanceMaterial = function(
blenderMaps,
instanceMaterial,
graphics,
uploadPath,
uploadUrl,
progressCallback
);
Q.all(textureMaps).then(
@ -2496,10 +2505,6 @@ GameLib.D3.RigidBody.prototype.createRigidBodyInstance = function() {
};
if (typeof require != 'undefined') {
var Q = require('q');
}
/**
* Scenes are objects putting meshes into 'world space'
* @param id
@ -2577,7 +2582,7 @@ GameLib.D3.Scene = function(
* @param gameLibScene GameLib.D3.Scene
* @param onLoaded callback
* @param graphics GameLib.D3.Graphics
* @param uploadPath String
* @param uploadUrl String
* @param progressCallback callback
* @param apiUrl
*/
@ -2585,7 +2590,7 @@ GameLib.D3.Scene.loadSceneFromApi = function(
gameLibScene,
onLoaded,
graphics,
uploadPath,
uploadUrl,
progressCallback,
apiUrl
) {
@ -2791,7 +2796,7 @@ GameLib.D3.Scene.loadSceneFromApi = function(
onLoaded,
false,
graphics,
uploadPath,
uploadUrl,
progressCallback
);
}
@ -2807,7 +2812,7 @@ GameLib.D3.Scene.loadSceneFromApi = function(
* @param onLoaded callback when all meshes have loaded
* @param computeNormals set to true to compute new face and vertex normals during load
* @param graphics GameLib.D3.Graphics
* @param uploadPath
* @param uploadUrl
* @param progressCallback
*/
GameLib.D3.Scene.loadScene = function(
@ -2815,12 +2820,14 @@ GameLib.D3.Scene.loadScene = function(
onLoaded,
computeNormals,
graphics,
uploadPath,
uploadUrl,
progressCallback
) {
console.log("loading scene " + gameLibScene.name);
graphics.isNotThreeThrow();
var meshQ = [];
for (var m = 0; m < gameLibScene.meshes.length; m++) {
@ -2968,7 +2975,7 @@ GameLib.D3.Scene.loadScene = function(
GameLib.D3.Material.createInstanceMaterial(
materials[mi],
graphics,
uploadPath,
uploadUrl,
progressCallback
)
);
@ -3109,11 +3116,11 @@ GameLib.D3.Scene.loadScene = function(
}
);
}
}.catch(
}).catch(
function(error){
console.log(error);
}
));
);
};
/**
* Physics Shape Superset
@ -3328,10 +3335,6 @@ GameLib.D3.Physics.Solver = function(
GameLib.D3.Physics.SPLIT_SOLVER = 0x1;
GameLib.D3.Physics.GS_SOLVER = 0x2;
if (typeof require != 'undefined') {
var Q = require('q');
}
/**
* Texture Superset
* @param id
@ -3543,7 +3546,7 @@ GameLib.D3.Texture.TYPE_RGBD_ENCODING = 3006; // MAXRANGE IS 256.
* @param instanceMaterial
* @param instanceMaterialMapType
* @param graphics GameLib.D3.Graphics
* @param uploadPath String
* @param uploadUrl String
* @param progressCallback
* @returns {Promise}
*/
@ -3552,7 +3555,7 @@ GameLib.D3.Texture.loadMap = function(
instanceMaterial,
instanceMaterialMapType,
graphics,
uploadPath,
uploadUrl,
progressCallback
) {
@ -3566,7 +3569,7 @@ GameLib.D3.Texture.loadMap = function(
/**
* Else, load from upload source
*/
imagePath = uploadPath + '/' + gameLibTexture.image.filename;
imagePath = uploadUrl + '/' + gameLibTexture.image.filename;
}
if (imagePath) {
@ -3635,7 +3638,7 @@ GameLib.D3.Texture.loadMap = function(
* @param blenderMaps
* @param instanceMaterial
* @param graphics GameLib.D3.Graphics
* @param uploadPath String
* @param uploadUrl String
* @param progressCallback
* @returns Q[]
*/
@ -3644,7 +3647,7 @@ GameLib.D3.Texture.loadMaps = function(
blenderMaps,
instanceMaterial,
graphics,
uploadPath,
uploadUrl,
progressCallback
) {
@ -3720,7 +3723,7 @@ GameLib.D3.Texture.loadMaps = function(
instanceMaterial,
instanceMap,
graphics,
uploadPath,
uploadUrl,
progressCallback
)
);

View File

@ -4,4 +4,13 @@ if (typeof GameLib == 'undefined') {
if (typeof GameLib.D3 == 'undefined') {
GameLib.D3 = function(){};
}
if (typeof Q == 'undefined') {
if (typeof require == 'undefined') {
console.warn('You need the Q promise library for the GameLib.D3');
throw new Error('You need the Q promise library for the GameLib.D3');
}
var Q = require('q');
}

View File

@ -510,17 +510,17 @@ GameLib.D3.Material.TYPE_MULTI_MATERIAL= "MultiMaterial";
* Creates an instance Material from a GameLib.D3.Material
* @param gameLibMaterial GameLib.D3.Material
* @param graphics GameLib.D3.Graphics
* @param uploadPath String
* @param uploadUrl String
* @param progressCallback
*/
GameLib.D3.Material.createInstanceMaterial = function(
gameLibMaterial,
graphics,
uploadPath,
uploadUrl,
progressCallback
) {
var defer = this.Q.defer();
var defer = Q.defer();
var instanceMaterial = null;
@ -673,7 +673,7 @@ GameLib.D3.Material.createInstanceMaterial = function(
blenderMaps,
instanceMaterial,
graphics,
uploadPath,
uploadUrl,
progressCallback
);
Q.all(textureMaps).then(

View File

@ -1,7 +1,3 @@
if (typeof require != 'undefined') {
var Q = require('q');
}
/**
* Scenes are objects putting meshes into 'world space'
* @param id
@ -79,7 +75,7 @@ GameLib.D3.Scene = function(
* @param gameLibScene GameLib.D3.Scene
* @param onLoaded callback
* @param graphics GameLib.D3.Graphics
* @param uploadPath String
* @param uploadUrl String
* @param progressCallback callback
* @param apiUrl
*/
@ -87,7 +83,7 @@ GameLib.D3.Scene.loadSceneFromApi = function(
gameLibScene,
onLoaded,
graphics,
uploadPath,
uploadUrl,
progressCallback,
apiUrl
) {
@ -293,7 +289,7 @@ GameLib.D3.Scene.loadSceneFromApi = function(
onLoaded,
false,
graphics,
uploadPath,
uploadUrl,
progressCallback
);
}
@ -309,7 +305,7 @@ GameLib.D3.Scene.loadSceneFromApi = function(
* @param onLoaded callback when all meshes have loaded
* @param computeNormals set to true to compute new face and vertex normals during load
* @param graphics GameLib.D3.Graphics
* @param uploadPath
* @param uploadUrl
* @param progressCallback
*/
GameLib.D3.Scene.loadScene = function(
@ -317,12 +313,14 @@ GameLib.D3.Scene.loadScene = function(
onLoaded,
computeNormals,
graphics,
uploadPath,
uploadUrl,
progressCallback
) {
console.log("loading scene " + gameLibScene.name);
graphics.isNotThreeThrow();
var meshQ = [];
for (var m = 0; m < gameLibScene.meshes.length; m++) {
@ -470,7 +468,7 @@ GameLib.D3.Scene.loadScene = function(
GameLib.D3.Material.createInstanceMaterial(
materials[mi],
graphics,
uploadPath,
uploadUrl,
progressCallback
)
);
@ -611,9 +609,9 @@ GameLib.D3.Scene.loadScene = function(
}
);
}
}.catch(
}).catch(
function(error){
console.log(error);
}
));
);
};

View File

@ -1,7 +1,3 @@
if (typeof require != 'undefined') {
var Q = require('q');
}
/**
* Texture Superset
* @param id
@ -213,7 +209,7 @@ GameLib.D3.Texture.TYPE_RGBD_ENCODING = 3006; // MAXRANGE IS 256.
* @param instanceMaterial
* @param instanceMaterialMapType
* @param graphics GameLib.D3.Graphics
* @param uploadPath String
* @param uploadUrl String
* @param progressCallback
* @returns {Promise}
*/
@ -222,7 +218,7 @@ GameLib.D3.Texture.loadMap = function(
instanceMaterial,
instanceMaterialMapType,
graphics,
uploadPath,
uploadUrl,
progressCallback
) {
@ -236,7 +232,7 @@ GameLib.D3.Texture.loadMap = function(
/**
* Else, load from upload source
*/
imagePath = uploadPath + '/' + gameLibTexture.image.filename;
imagePath = uploadUrl + '/' + gameLibTexture.image.filename;
}
if (imagePath) {
@ -305,7 +301,7 @@ GameLib.D3.Texture.loadMap = function(
* @param blenderMaps
* @param instanceMaterial
* @param graphics GameLib.D3.Graphics
* @param uploadPath String
* @param uploadUrl String
* @param progressCallback
* @returns Q[]
*/
@ -314,7 +310,7 @@ GameLib.D3.Texture.loadMaps = function(
blenderMaps,
instanceMaterial,
graphics,
uploadPath,
uploadUrl,
progressCallback
) {
@ -390,7 +386,7 @@ GameLib.D3.Texture.loadMaps = function(
instanceMaterial,
instanceMap,
graphics,
uploadPath,
uploadUrl,
progressCallback
)
);