Spaces:
Running
Running
File size: 1,040 Bytes
6cd9596 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 |
/**
* @author sunag / http://www.sunag.com.br/
*/
import { FloatNode } from '../inputs/FloatNode.js';
function MaxMIPLevelNode( texture ) {
FloatNode.call( this );
this.texture = texture;
this.maxMIPLevel = 0;
}
MaxMIPLevelNode.prototype = Object.create( FloatNode.prototype );
MaxMIPLevelNode.prototype.constructor = MaxMIPLevelNode;
MaxMIPLevelNode.prototype.nodeType = "MaxMIPLevel";
Object.defineProperties( MaxMIPLevelNode.prototype, {
value: {
get: function () {
if ( this.maxMIPLevel === 0 ) {
var image = this.texture.value.image ? this.texture.value.image[ 0 ] : undefined;
this.maxMIPLevel = image !== undefined ? Math.log( Math.max( image.width, image.height ) ) * Math.LOG2E : 0;
}
return this.maxMIPLevel;
},
set: function () { }
}
} );
MaxMIPLevelNode.prototype.toJSON = function ( meta ) {
var data = this.getJSONNode( meta );
if ( ! data ) {
data = this.createJSONNode( meta );
data.texture = this.texture.uuid;
}
return data;
};
export { MaxMIPLevelNode };
|