@@ -297,13 +297,14 @@ export class SUBTREELoader extends LoaderBase {
297297 for ( let i = 0 ; i < bufferHeaders . length ; i ++ ) {
298298
299299 const bufferHeader = bufferHeaders [ i ] ;
300- if ( bufferHeader . isActive ) {
300+ // TODO load external buffer (when isExternal == true)
301+ if ( ! bufferHeader . isActive || bufferHeader . isExternal ) {
301302
302- bufferResults . push ( internalBuffer ) ;
303+ bufferResults . push ( undefined ) ;
303304
304305 } else {
305306
306- bufferResults . push ( undefined ) ;
307+ bufferResults . push ( internalBuffer ) ;
307308
308309 }
309310
@@ -339,7 +340,7 @@ export class SUBTREELoader extends LoaderBase {
339340 for ( let i = 0 ; i < bufferViewHeaders . length ; i ++ ) {
340341
341342 const bufferViewHeader = bufferViewHeaders [ i ] ;
342- if ( ! bufferViewHeader . isActive ) {
343+ if ( ! bufferViewHeader . isActive || bufferViewHeader . isExternal ) {
343344
344345 continue ;
345346
@@ -381,6 +382,7 @@ export class SUBTREELoader extends LoaderBase {
381382
382383 const bufferHeader = bufferHeaders [ i ] ;
383384 bufferHeader . isActive = false ;
385+ bufferHeader . isExternal = ! ! bufferHeader . uri ;
384386
385387 }
386388 return bufferHeaders ;
@@ -417,6 +419,7 @@ export class SUBTREELoader extends LoaderBase {
417419 const bufferViewHeader = bufferViewHeaders [ i ] ;
418420 bufferViewHeader . bufferHeader = bufferHeaders [ bufferViewHeader . buffer ] ;
419421 bufferViewHeader . isActive = false ;
422+ bufferViewHeader . isExternal = bufferViewHeader . bufferHeader . isExternal ;
420423
421424 }
422425 return bufferViewHeaders ;
0 commit comments