parent
8bad1ce5a7
commit
396428f82d
@ -0,0 +1,26 @@ |
|||||||
|
package com.otaliastudios.cameraview.shadereffects.effects; |
||||||
|
|
||||||
|
import com.otaliastudios.cameraview.shadereffects.BaseShaderEffect; |
||||||
|
|
||||||
|
|
||||||
|
/** |
||||||
|
* This class is to implement any custom effect. |
||||||
|
*/ |
||||||
|
public class CustomEffect extends BaseShaderEffect { |
||||||
|
|
||||||
|
/** |
||||||
|
* Parameterized constructor with vertex and fragment shader as parameter |
||||||
|
* |
||||||
|
* @param vertexShader |
||||||
|
* @param fragmentShader |
||||||
|
*/ |
||||||
|
public CustomEffect(String vertexShader, String fragmentShader) { |
||||||
|
this.mVertexShader = vertexShader; |
||||||
|
this.mFragmentShader = fragmentShader; |
||||||
|
} |
||||||
|
|
||||||
|
@Override |
||||||
|
public String getFragmentShader() { |
||||||
|
return mFragmentShader; |
||||||
|
} |
||||||
|
} |
@ -1,42 +0,0 @@ |
|||||||
package com.otaliastudios.cameraview.shadereffects.effects; |
|
||||||
|
|
||||||
import com.otaliastudios.cameraview.shadereffects.BaseShaderEffect; |
|
||||||
|
|
||||||
/** |
|
||||||
* Displays the normal preview without any effect. |
|
||||||
*/ |
|
||||||
public class NoEffect extends BaseShaderEffect { |
|
||||||
/** |
|
||||||
* Initialize |
|
||||||
*/ |
|
||||||
public NoEffect() { |
|
||||||
} |
|
||||||
|
|
||||||
@Override |
|
||||||
public String getFragmentShader() { |
|
||||||
|
|
||||||
/*String shader = "#extension GL_OES_EGL_image_external : require\n" |
|
||||||
+ "precision mediump float;\n" |
|
||||||
+ "varying vec2 vTextureCoord;\n" |
|
||||||
+ "uniform samplerExternalOES sTexture;\n" |
|
||||||
+ "void main() {\n" |
|
||||||
+ " gl_FragColor = texture2D(sTexture, vTextureCoord);\n" |
|
||||||
+ "}\n";*/ |
|
||||||
|
|
||||||
//This fragment shader is copied from black and white,
|
|
||||||
//this is for testing purpose and need to be removed once testing is done.
|
|
||||||
String shader = "#extension GL_OES_EGL_image_external : require\n" |
|
||||||
+ "precision mediump float;\n" |
|
||||||
+ "varying vec2 vTextureCoord;\n" |
|
||||||
+ "uniform samplerExternalOES sTexture;\n" + "void main() {\n" |
|
||||||
+ " vec4 color = texture2D(sTexture, vTextureCoord);\n" |
|
||||||
+ " float colorR = (color.r + color.g + color.b) / 3.0;\n" |
|
||||||
+ " float colorG = (color.r + color.g + color.b) / 3.0;\n" |
|
||||||
+ " float colorB = (color.r + color.g + color.b) / 3.0;\n" |
|
||||||
+ " gl_FragColor = vec4(colorR, colorG, colorB, color.a);\n" |
|
||||||
+ "}\n"; |
|
||||||
|
|
||||||
return shader; |
|
||||||
|
|
||||||
} |
|
||||||
} |
|
@ -0,0 +1,11 @@ |
|||||||
|
package com.otaliastudios.cameraview.shadereffects.effects; |
||||||
|
|
||||||
|
import com.otaliastudios.cameraview.shadereffects.BaseShaderEffect; |
||||||
|
|
||||||
|
public class NoFilterEffect extends BaseShaderEffect { |
||||||
|
|
||||||
|
@Override |
||||||
|
public String getFragmentShader() { |
||||||
|
return mFragmentShader; |
||||||
|
} |
||||||
|
} |
Loading…
Reference in new issue