Skip to content

Commit 574f8d7

Browse files
committed
Merge branch 'ie11-collada2' of https://github.com/MSOpenTech/three.js into dev
2 parents 25d0458 + 9a86b9a commit 574f8d7

1 file changed

Lines changed: 20 additions & 12 deletions

File tree

examples/js/loaders/ColladaLoader.js

Lines changed: 20 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -198,17 +198,14 @@ THREE.ColladaLoader = function () {
198198
function parseAsset () {
199199

200200
var elements = COLLADA.querySelectorAll('asset');
201-
202-
var elementsLength = elements.length; //cache loop length
203201

204-
for ( var i = 0; i < elementsLength; i ++ ) {
202+
var element = elements[0];
205203

206-
var element = elements[ i ];
207-
var elementChildNodesLength = element.childNodes.length;
204+
if ( element && element.childNodes ) {
208205

209-
for ( var j = 0; j < elementChildNodesLength; j ++ ) {
206+
for ( var i = 0; i < element.childNodes.length; i ++ ) {
210207

211-
var child = element.childNodes[ j ];
208+
var child = element.childNodes[ i ];
212209

213210
switch ( child.nodeName ) {
214211

@@ -931,8 +928,18 @@ THREE.ColladaLoader = function () {
931928
};
932929

933930
function getLibraryNode( id ) {
934-
935-
return COLLADA.querySelectorAll('library_nodes node#'+id)[0]; //returns 'undefined' if nothing is matched
931+
932+
var nodes = COLLADA.querySelectorAll('library_nodes node');
933+
934+
for ( var i = 0; i < nodes.length; i++ ) {
935+
936+
var attObj = nodes[i].attributes.getNamedItem('id');
937+
if ( attObj && attObj.value === id ) {
938+
return nodes[i];
939+
}
940+
}
941+
942+
return undefined;
936943

937944
};
938945

@@ -2425,7 +2432,7 @@ THREE.ColladaLoader = function () {
24252432
input = inputs[ j ];
24262433

24272434
var offset = input.offset + 1;
2428-
maxOffset = ( maxOffset < offset )? offset : maxOffset;
2435+
maxOffset = (maxOffset < offset)? offset : maxOffset;
24292436

24302437
switch ( input.semantic ) {
24312438

@@ -3036,7 +3043,7 @@ THREE.ColladaLoader = function () {
30363043
repeatU: 1,
30373044
repeatV: 1,
30383045
wrapU: 1,
3039-
wrapV: 1,
3046+
wrapV: 1
30403047
};
30413048
this.parseTexture( child );
30423049
break;
@@ -3090,7 +3097,7 @@ THREE.ColladaLoader = function () {
30903097

30913098
// some dae have a value of true which becomes NaN via parseInt
30923099

3093-
if ( child.textContent.toUpperCase() == 'TRUE' ) {
3100+
if ( child.textContent.toUpperCase() === 'TRUE' ) {
30943101

30953102
this.texOpts[ child.nodeName ] = 1;
30963103

@@ -3099,6 +3106,7 @@ THREE.ColladaLoader = function () {
30993106
this.texOpts[ child.nodeName ] = parseInt( child.textContent );
31003107

31013108
}
3109+
break;
31023110

31033111
default:
31043112

0 commit comments

Comments
 (0)