I'm trying to implement a blurring mechanic on a java game. How do I create a blur effect on runtime?
            Asked
            
        
        
            Active
            
        
            Viewed 1.1k times
        
    3 Answers
5
            
            
        Google "Gaussian Blur", try this: http://www.jhlabs.com/ip/blurring.html
        Dean J
        
- 39,360
 - 16
 - 67
 - 93
 
- 
                    Or, searching for "blur" is a pain in the butt. Searching for "gaussian blur" is probably going to yield a *lot* better results. – Dean J Oct 19 '09 at 16:41
 
4
            Read about/Google "Convolution Filters", it's a method of changing a pixels value based on the values of pixels around it. So apart from blurring, you can also do image sharpening and line-finding.
        JonoW
        
- 14,029
 - 3
 - 33
 - 31
 
3
            
            
        If you are doing java game development, I'm willing to bet you are using java2d.
You want to create a convolution filter like so:
 // Create the kernel.
 kernel = new KernelJAI
 float[] = {  0.0F, -1.0F,  0.0F,
             -1.0F,  5.0F, -1.0F,
              0.0F, -1.0F,  0.0F };
 // Create the convolve operation.
 blurredImage = JAI.create("convolve", originalImage, kernel);
You can find more information at: http://java.sun.com/products/java-media/jai/forDevelopers/jai1_0_1guide-unc/Image-enhance.doc.html#51172 (which is where the code is from too)
        Paul
        
- 61
 - 3