Prettified all files.
This commit is contained in:
+44
-20
@@ -13,17 +13,17 @@
|
||||
* height: 270,
|
||||
* transparent: false
|
||||
* }).setup().run()
|
||||
*
|
||||
*
|
||||
* // Add a video sprite
|
||||
* const sprite = new PIXI.Sprite(PIXI.Texture.fromVideo("assets/blurfilter.mp4"))
|
||||
* sprite.width = app.size.width
|
||||
* sprite.height = app.size.height
|
||||
* app.scene.addChild(sprite)
|
||||
*
|
||||
*
|
||||
* // Create the filter and assign it to the scene
|
||||
* const blurFilter = new BlurFilter(new PIXI.Rectangle(20, 20, 80, 60))
|
||||
* app.scene.filters = [blurFilter]
|
||||
*
|
||||
*
|
||||
* @class
|
||||
* @extends PIXI.Filter
|
||||
* @param {PIXI.Rectangle|PIXI.Circle|PIXI.DisplayObject} shape The area where the blur effect should be applied to. Relative to the
|
||||
@@ -31,7 +31,6 @@
|
||||
* @param {number} [blur=50] The strength of the blur.
|
||||
*/
|
||||
export default class BlurFilter extends PIXI.Filter {
|
||||
|
||||
constructor(shape, blur = 50) {
|
||||
super()
|
||||
|
||||
@@ -59,7 +58,7 @@ export default class BlurFilter extends PIXI.Filter {
|
||||
set blur(value) {
|
||||
this.tiltShiftXFilter.blur = this.tiltShiftYFilter.blur = value
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* The blur shape.
|
||||
*
|
||||
@@ -69,26 +68,39 @@ export default class BlurFilter extends PIXI.Filter {
|
||||
return this.tiltShiftXFilter.shape
|
||||
}
|
||||
set shape(value) {
|
||||
this.tiltShiftXFilter.shape = this.tiltShiftYFilter.shape = this.normalize(value)
|
||||
this.tiltShiftXFilter.shape = this.tiltShiftYFilter.shape = this.normalize(
|
||||
value
|
||||
)
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
*
|
||||
* @private
|
||||
* @param {PIXI.Rectangle|PIXI.Circle|PIXI.DisplayObject} value
|
||||
* @returns {Object}
|
||||
*/
|
||||
normalize(value) {
|
||||
|
||||
let shape = null
|
||||
|
||||
if (value instanceof PIXI.Circle) {
|
||||
shape = {type: 'circle', x: value.x, y: value.y, r: value.radius}
|
||||
shape = { type: 'circle', x: value.x, y: value.y, r: value.radius }
|
||||
} else if (value instanceof PIXI.Rectangle) {
|
||||
shape = {type: 'rectangle', x: value.x, y: value.y, width: value.width, height: value.height}
|
||||
shape = {
|
||||
type: 'rectangle',
|
||||
x: value.x,
|
||||
y: value.y,
|
||||
width: value.width,
|
||||
height: value.height
|
||||
}
|
||||
} else {
|
||||
const bounds = value.getBounds()
|
||||
shape = {type: 'rectangle', x: bounds.x, y: bounds.y, width: bounds.width, height: bounds.height}
|
||||
shape = {
|
||||
type: 'rectangle',
|
||||
x: bounds.x,
|
||||
y: bounds.y,
|
||||
width: bounds.width,
|
||||
height: bounds.height
|
||||
}
|
||||
}
|
||||
|
||||
return shape
|
||||
@@ -104,9 +116,7 @@ export default class BlurFilter extends PIXI.Filter {
|
||||
* @private
|
||||
*/
|
||||
class TiltShiftAxisFilter extends PIXI.Filter {
|
||||
|
||||
constructor(shape, blur){
|
||||
|
||||
constructor(shape, blur) {
|
||||
const vertex = `
|
||||
attribute vec2 aVertexPosition;
|
||||
attribute vec2 aTextureCoord;
|
||||
@@ -173,13 +183,18 @@ class TiltShiftAxisFilter extends PIXI.Filter {
|
||||
`
|
||||
|
||||
super(vertex, fragment)
|
||||
|
||||
|
||||
if (shape.type === 'circle') {
|
||||
this.uniforms.shape = 1
|
||||
this.uniforms.circle = [shape.x, shape.y, shape.r]
|
||||
} else {
|
||||
this.uniforms.shape = 2
|
||||
this.uniforms.rectangle = [shape.x, shape.y, shape.x + shape.width, shape.y + shape.height]
|
||||
this.uniforms.rectangle = [
|
||||
shape.x,
|
||||
shape.y,
|
||||
shape.x + shape.width,
|
||||
shape.y + shape.height
|
||||
]
|
||||
}
|
||||
this.uniforms.blur = blur
|
||||
this.uniforms.delta = new PIXI.Point(0, 0)
|
||||
@@ -200,7 +215,7 @@ class TiltShiftAxisFilter extends PIXI.Filter {
|
||||
set blur(value) {
|
||||
this.uniforms.blur = value
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* The blur shape.
|
||||
*
|
||||
@@ -213,7 +228,12 @@ class TiltShiftAxisFilter extends PIXI.Filter {
|
||||
return new PIXI.Circle(circle[0], circle[1], circle[2])
|
||||
} else {
|
||||
const rectangle = this.uniforms.rectangle
|
||||
return new PIXI.Rectangle(rectangle[0], rectangle[1], rectangle[2], rectangle[3])
|
||||
return new PIXI.Rectangle(
|
||||
rectangle[0],
|
||||
rectangle[1],
|
||||
rectangle[2],
|
||||
rectangle[3]
|
||||
)
|
||||
}
|
||||
}
|
||||
set shape(value) {
|
||||
@@ -222,7 +242,12 @@ class TiltShiftAxisFilter extends PIXI.Filter {
|
||||
this.uniforms.circle = [value.x, value.y, value.r]
|
||||
} else {
|
||||
this.uniforms.shape = 2
|
||||
this.uniforms.rectangle = [value.x, value.y, value.x + value.width, value.y + value.height]
|
||||
this.uniforms.rectangle = [
|
||||
value.x,
|
||||
value.y,
|
||||
value.x + value.width,
|
||||
value.y + value.height
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -260,4 +285,3 @@ class TiltShiftYFilter extends TiltShiftAxisFilter {
|
||||
this.uniforms.delta.y = 0.1
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user