Save DepthOfFieldFilter parameters [patch]

The DepthOfFieldFilter doesn’t save it’s parameters when saving a filter *.j3f in the SDK. This fixes it.



[patch]Index: engine/src/core-effects/com/jme3/post/filters/DepthOfFieldFilter.java

===================================================================

— engine/src/core-effects/com/jme3/post/filters/DepthOfFieldFilter.java (revision 9630)

+++ engine/src/core-effects/com/jme3/post/filters/DepthOfFieldFilter.java (working copy)

@@ -32,10 +32,15 @@

package com.jme3.post.filters;



import com.jme3.asset.AssetManager;

+import com.jme3.export.InputCapsule;

+import com.jme3.export.JmeExporter;

+import com.jme3.export.JmeImporter;

+import com.jme3.export.OutputCapsule;

import com.jme3.material.Material;

import com.jme3.post.Filter;

import com.jme3.renderer.RenderManager;

import com.jme3.renderer.ViewPort;

+import java.io.IOException;



/**

  • A post-processing filter that performs a depth range

    @@ -155,4 +160,22 @@

    public float getBlurScale() {

    return blurScale;

    }

    +
  • @Override
  • public void write(JmeExporter ex) throws IOException {
  •    super.write(ex);<br />
    
  •    OutputCapsule oc = ex.getCapsule(this);<br />
    
  •    oc.write(blurScale, &quot;blurScale&quot;, 1f);<br />
    
  •    oc.write(focusDistance, &quot;focusDistance&quot;, 50f);<br />
    
  •    oc.write(focusRange, &quot;focusRange&quot;, 10f);<br />
    
  • }

    +
  • @Override
  • public void read(JmeImporter im) throws IOException {
  •    super.read(im);<br />
    
  •    InputCapsule ic = im.getCapsule(this);<br />
    
  •    blurScale = ic.readFloat(&quot;blurScale&quot;, 1f);<br />
    
  •    focusDistance = ic.readFloat(&quot;focusDistance&quot;, 50f);<br />
    
  •    focusRange = ic.readFloat(&quot;focusRange&quot;, 10f);<br />
    
  • }

    }

    [/patch]
2 Likes

Kewl, thanks!