Added Sepia Shader.
Fixes for movecamera command overlapping each other. Fix if a character changes pattern during a move tween it keeps the tween. Pre load checks for henshin01. Some changes and placeholders for custom effects.
This commit is contained in:
parent
6134339bc6
commit
63f79738b0
3 changed files with 146 additions and 14 deletions
|
@ -13,6 +13,7 @@ class Shaders {
|
|||
|
||||
vec2 mapCoord( vec2 coord ) {
|
||||
coord *= filterArea.xy;
|
||||
coord += filterArea.zw;
|
||||
return coord;
|
||||
}
|
||||
|
||||
|
@ -73,6 +74,7 @@ class Shaders {
|
|||
|
||||
vec2 mapCoord( vec2 coord ) {
|
||||
coord *= filterArea.xy;
|
||||
coord += filterArea.zw;
|
||||
return coord;
|
||||
}
|
||||
|
||||
|
@ -103,6 +105,7 @@ class Shaders {
|
|||
|
||||
vec2 mapCoord( vec2 coord ) {
|
||||
coord *= filterArea.xy;
|
||||
coord += filterArea.zw;
|
||||
return coord;
|
||||
}
|
||||
|
||||
|
@ -121,9 +124,31 @@ class Shaders {
|
|||
|
||||
gl_FragColor = color;
|
||||
}`
|
||||
this.sepiaShader = `
|
||||
precision mediump float;
|
||||
varying vec2 vTextureCoord;
|
||||
uniform sampler2D uSampler;
|
||||
uniform vec2 dimensions;
|
||||
uniform float factor;
|
||||
|
||||
vec4 Sepia( in vec4 color )
|
||||
{
|
||||
return vec4(
|
||||
clamp(color.r * 0.393 + color.g * 0.769 + color.b * 0.189, 0.0, 1.0)
|
||||
, clamp(color.r * 0.349 + color.g * 0.686 + color.b * 0.168, 0.0, 1.0)
|
||||
, clamp(color.r * 0.272 + color.g * 0.534 + color.b * 0.131, 0.0, 1.0)
|
||||
, color.a
|
||||
);
|
||||
}
|
||||
|
||||
void main (void) {
|
||||
gl_FragColor = texture2D(uSampler, vTextureCoord);
|
||||
gl_FragColor = mix(gl_FragColor, Sepia(gl_FragColor), clamp(factor,0.0,1.0));
|
||||
}`
|
||||
this.shaders = {};
|
||||
}
|
||||
|
||||
//https://jsfiddle.net/60e5pp8d/1/
|
||||
buildShaders() {
|
||||
let divalefttorightfade = new PIXI.Filter(null, this.leftToRightFadeShader, {
|
||||
time: { type: 'f', value: 0 },
|
||||
|
@ -161,9 +186,16 @@ class Shaders {
|
|||
divadowntoupfade.apply = baseShaderApply;
|
||||
this.shaders['divadowntoupfade'] = divadowntoupfade;
|
||||
|
||||
let sepia = new PIXI.Filter(null, this.sepiaShader, {
|
||||
factor: { type: 'f', value: 0.5 },
|
||||
dimensions: { type: 'v2', value: [baseDimensions.width, baseDimensions.height] }
|
||||
});
|
||||
sepia.apply = baseShaderApply;
|
||||
this.shaders['sepia'] = sepia;
|
||||
|
||||
function baseShaderApply(filterManager, input, output) {
|
||||
this.uniforms.dimensions[0] = input.sourceFrame.width
|
||||
this.uniforms.dimensions[1] = input.sourceFrame.height
|
||||
this.uniforms.dimensions[0] = input.sourceFrame.width;
|
||||
this.uniforms.dimensions[1] = input.sourceFrame.height;
|
||||
filterManager.applyFilter(this, input, output);
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue