r3-legacy/src/game-lib-d3-api-pass-bloom.js

73 lines
1.6 KiB
JavaScript

/**
* GameLib.D3.API.Pass.Bloom
* @param apiPass
* @param autoUpdateSize
* @param width
* @param height
* @param strength
* @param radius
* @param threshold
* @constructor
*/
GameLib.D3.API.Pass.Bloom = function (
apiPass,
autoUpdateSize,
width,
height,
strength,
radius,
threshold
) {
if (GameLib.Utils.UndefinedOrNull(apiPass)) {
apiPass = {
passType: GameLib.D3.API.Pass.PASS_TYPE_BLOOM
};
}
if (GameLib.Utils.UndefinedOrNull(apiPass.passType)) {
apiPass.passType = GameLib.D3.API.Pass.PASS_TYPE_BLOOM;
}
if (GameLib.Utils.UndefinedOrNull(autoUpdateSize)) {
autoUpdateSize = true;
}
this.autoUpdateSize = autoUpdateSize;
if (GameLib.Utils.UndefinedOrNull(width)) {
width = 512;
}
this.width = width;
if (GameLib.Utils.UndefinedOrNull(height)) {
height = 512;
}
this.height = height;
if (GameLib.Utils.UndefinedOrNull(strength)) {
strength = 1.5;
}
this.strength = strength;
if (GameLib.Utils.UndefinedOrNull(radius)) {
radius = 0.4;
}
this.radius = radius;
if (GameLib.Utils.UndefinedOrNull(threshold)) {
threshold = 0.85;
}
this.threshold = threshold;
GameLib.D3.API.Pass.call(
this,
apiPass.id,
apiPass.name,
apiPass.passType,
apiPass.parentEntity,
apiPass.renderToScreen
)
};
GameLib.D3.API.Pass.Bloom.prototype = Object.create(GameLib.D3.API.Pass.prototype);
GameLib.D3.API.Pass.Bloom.prototype.constructor = GameLib.D3.API.Pass.Bloom;