|
@@ -1678,15 +1678,6 @@ THREE.EXRLoader.prototype = Object.assign( Object.create( THREE.DataTextureLoade
|
|
|
|
|
|
}
|
|
|
|
|
|
- function parsePreview( dataView, offset ) {
|
|
|
-
|
|
|
- var width = parseUint32( dataView, offset );
|
|
|
- var height = parseUint32( dataView, offset );
|
|
|
-
|
|
|
- offset.value += 4 * width * height;
|
|
|
-
|
|
|
- }
|
|
|
-
|
|
|
function parseInt32( dataView, offset ) {
|
|
|
|
|
|
var Int32 = dataView.getInt32( offset.value, true );
|
|
@@ -1994,13 +1985,9 @@ THREE.EXRLoader.prototype = Object.assign( Object.create( THREE.DataTextureLoade
|
|
|
|
|
|
return parseTimecode( dataView, offset );
|
|
|
|
|
|
- } else if ( type === 'preview' ) {
|
|
|
-
|
|
|
- return parsePreview( dataView, offset );
|
|
|
-
|
|
|
} else {
|
|
|
|
|
|
- throw 'Cannot parse value for unsupported type: ' + type;
|
|
|
+ return undefined;
|
|
|
|
|
|
}
|
|
|
|
|
@@ -2035,7 +2022,16 @@ THREE.EXRLoader.prototype = Object.assign( Object.create( THREE.DataTextureLoade
|
|
|
var attributeSize = parseUint32( bufferDataView, offset );
|
|
|
var attributeValue = parseValue( bufferDataView, buffer, offset, attributeType, attributeSize );
|
|
|
|
|
|
- EXRHeader[ attributeName ] = attributeValue;
|
|
|
+ if ( attributeValue === undefined ) {
|
|
|
+
|
|
|
+ console.warn( `EXRLoader.parse: skipped unknown header attribute type \'${attributeType}\'.` );
|
|
|
+ offset.value += attributeSize;
|
|
|
+
|
|
|
+ } else {
|
|
|
+
|
|
|
+ EXRHeader[ attributeName ] = attributeValue;
|
|
|
+
|
|
|
+ }
|
|
|
|
|
|
}
|
|
|
|