Class BloomFilter

java.lang.Object
com.jme3.post.Filter
com.jme3.post.filters.BloomFilter
All Implemented Interfaces:
com.jme3.export.Savable

public class BloomFilter extends com.jme3.post.Filter
BloomFilter is used to make objects in the scene have a glow effect.
There are 2 mode : Scene and Objects.
Scene mode extracts the bright parts of the scene to make them glow
Object mode makes objects glow according to their material's glowMap or their GlowColor
See advanced:bloom_and_glow for more details
Author:
Rémy Bouquet aka Nehon
  • Nested Class Summary

    Nested Classes
    Modifier and Type
    Class
    Description
    static enum 
    GlowMode specifies if the glow will be applied to the whole scene or to objects that have a glow color or a glow map

    Nested classes/interfaces inherited from class com.jme3.post.Filter

    com.jme3.post.Filter.Pass
  • Field Summary

    Fields inherited from class com.jme3.post.Filter

    defaultPass, enabled, material, postRenderPasses, processor
  • Constructor Summary

    Constructors
    Constructor
    Description
    Creates a Bloom filter
    Creates the bloom filter with the specified glow mode
  • Method Summary

    Modifier and Type
    Method
    Description
    protected void
    cleanUpFilter(com.jme3.renderer.Renderer r)
     
    float
    returns the bloom intensity
    float
    returns the blur scale
    float
    returns the downSampling factor
    for more details see setDownSamplingFactor(float downSamplingFactor)
    float
    returns the exposure cutoff
    for more details see setExposureCutOff(float exposureCutOff)
    float
    returns the exposure power
    for more details see setExposurePower(float exposurePower)
    protected com.jme3.material.Material
     
    protected void
    initFilter(com.jme3.asset.AssetManager manager, com.jme3.renderer.RenderManager renderManager, com.jme3.renderer.ViewPort vp, int w, int h)
     
    protected void
    postQueue(com.jme3.renderer.queue.RenderQueue queue)
     
    void
    read(com.jme3.export.JmeImporter im)
     
    protected void
     
    void
    setBloomIntensity(float bloomIntensity)
    intensity of the bloom effect default is 2.0
    void
    setBlurScale(float blurScale)
    sets The spread of the bloom default is 1.5f
    void
    setDownSamplingFactor(float downSamplingFactor)
    Sets the downSampling factor : the size of the computed texture will be divided by this factor.
    void
    setExposureCutOff(float exposureCutOff)
    Define the color threshold on which the bloom will be applied (0.0 to 1.0)
    void
    setExposurePower(float exposurePower)
    defines how many times the bloom extracted color will be multiplied by itself.
    void
    write(com.jme3.export.JmeExporter ex)
     

    Methods inherited from class com.jme3.post.Filter

    cleanup, getDefaultPassDepthFormat, getDefaultPassTextureFormat, getName, getPostRenderPasses, getRenderedTexture, getRenderFrameBuffer, init, isEnabled, isRequiresBilinear, isRequiresDepthTexture, isRequiresSceneTexture, postFilter, postFrame, preFrame, setDepthTexture, setEnabled, setName, setProcessor, setRenderedTexture, setRenderFrameBuffer

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • BloomFilter

      public BloomFilter()
      Creates a Bloom filter
    • BloomFilter

      public BloomFilter(BloomFilter.GlowMode glowMode)
      Creates the bloom filter with the specified glow mode
      Parameters:
      glowMode - the desired mode (default=Scene)
  • Method Details

    • initFilter

      protected void initFilter(com.jme3.asset.AssetManager manager, com.jme3.renderer.RenderManager renderManager, com.jme3.renderer.ViewPort vp, int w, int h)
      Specified by:
      initFilter in class com.jme3.post.Filter
    • reInitFilter

      protected void reInitFilter()
    • getMaterial

      protected com.jme3.material.Material getMaterial()
      Specified by:
      getMaterial in class com.jme3.post.Filter
    • postQueue

      protected void postQueue(com.jme3.renderer.queue.RenderQueue queue)
      Overrides:
      postQueue in class com.jme3.post.Filter
    • cleanUpFilter

      protected void cleanUpFilter(com.jme3.renderer.Renderer r)
      Overrides:
      cleanUpFilter in class com.jme3.post.Filter
    • getBloomIntensity

      public float getBloomIntensity()
      returns the bloom intensity
      Returns:
      the intensity value
    • setBloomIntensity

      public void setBloomIntensity(float bloomIntensity)
      intensity of the bloom effect default is 2.0
      Parameters:
      bloomIntensity - the desired intensity (default=2)
    • getBlurScale

      public float getBlurScale()
      returns the blur scale
      Returns:
      the blur scale
    • setBlurScale

      public void setBlurScale(float blurScale)
      sets The spread of the bloom default is 1.5f
      Parameters:
      blurScale - the desired scale (default=1.5)
    • getExposureCutOff

      public float getExposureCutOff()
      returns the exposure cutoff
      for more details see setExposureCutOff(float exposureCutOff)
      Returns:
      the exposure cutoff
    • setExposureCutOff

      public void setExposureCutOff(float exposureCutOff)
      Define the color threshold on which the bloom will be applied (0.0 to 1.0)
      Parameters:
      exposureCutOff - the desired threshold (≥0, ≤1, default=0)
    • getExposurePower

      public float getExposurePower()
      returns the exposure power
      for more details see setExposurePower(float exposurePower)
      Returns:
      the exposure power
    • setExposurePower

      public void setExposurePower(float exposurePower)
      defines how many times the bloom extracted color will be multiplied by itself. default is 5.0
      a high value will reduce rough edges in the bloom and somehow the range of the bloom area
      Parameters:
      exposurePower - the desired exponent (default=5)
    • getDownSamplingFactor

      public float getDownSamplingFactor()
      returns the downSampling factor
      for more details see setDownSamplingFactor(float downSamplingFactor)
      Returns:
      the downsampling factor
    • setDownSamplingFactor

      public void setDownSamplingFactor(float downSamplingFactor)
      Sets the downSampling factor : the size of the computed texture will be divided by this factor. default is 1 for no downsampling A 2 value is a good way of widening the blur
      Parameters:
      downSamplingFactor - the desired factor (default=1)
    • write

      public void write(com.jme3.export.JmeExporter ex) throws IOException
      Specified by:
      write in interface com.jme3.export.Savable
      Overrides:
      write in class com.jme3.post.Filter
      Throws:
      IOException
    • read

      public void read(com.jme3.export.JmeImporter im) throws IOException
      Specified by:
      read in interface com.jme3.export.Savable
      Overrides:
      read in class com.jme3.post.Filter
      Throws:
      IOException