123456789101112131415161718192021222324252627282930313233343536 |
- package eu.tankernn.gameEngine.postProcessing.gaussianBlur;
- import eu.tankernn.gameEngine.loader.textures.Texture;
- import eu.tankernn.gameEngine.postProcessing.IPostProcessingEffect;
- import eu.tankernn.gameEngine.postProcessing.ImageRenderer;
- public class HorizontalBlur implements IPostProcessingEffect {
-
- private ImageRenderer renderer;
- private HorizontalBlurShader shader;
-
- public HorizontalBlur(int targetFboWidth, int targetFboHeight){
- shader = new HorizontalBlurShader();
- shader.start();
- shader.targetWidth.loadFloat(targetFboWidth);
- shader.stop();
- renderer = new ImageRenderer(targetFboWidth, targetFboHeight);
- }
-
- public void render(Texture colorTexture, Texture texture){
- shader.start();
- texture.bindToUnit(0);
- renderer.renderQuad();
- shader.stop();
- }
-
- public Texture getOutputTexture(){
- return renderer.getOutputTexture();
- }
-
- public void cleanUp(){
- renderer.cleanUp();
- shader.cleanUp();
- }
- }
|