Package com.jme3.post.filters
Class CartoonEdgeFilter
java.lang.Object
com.jme3.post.Filter
com.jme3.post.filters.CartoonEdgeFilter
- All Implemented Interfaces:
com.jme3.export.Savable
public class CartoonEdgeFilter
extends com.jme3.post.Filter
Applies a cartoon-style edge detection filter to all objects in the scene.
- Author:
- Kirill Vainer
-
Nested Class Summary
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 -
Method Summary
Modifier and TypeMethodDescriptionprotected voidcleanUpFilter(com.jme3.renderer.Renderer r) floatReturn the depth sensitivity
for more details seesetDepthSensitivity(float depthSensitivity)floatreturns the depth threshold
for more details seesetDepthThreshold(float depthThreshold)com.jme3.math.ColorRGBAreturns the edge colorfloatreturns the edge intensity
for more details seesetEdgeIntensity(float edgeIntensity)floatreturns the width of the edgesprotected com.jme3.material.Materialfloatreturns the normals sensitivity
form more details seesetNormalSensitivity(float normalSensitivity)floatreturns the normal threshold
for more details seesetNormalThreshold(float normalThreshold)protected voidinitFilter(com.jme3.asset.AssetManager manager, com.jme3.renderer.RenderManager renderManager, com.jme3.renderer.ViewPort vp, int w, int h) protected booleanprotected voidpostQueue(com.jme3.renderer.queue.RenderQueue queue) voidread(com.jme3.export.JmeImporter im) voidsetDepthSensitivity(float depthSensitivity) sets the depth sensitivity
defines how much depth will influence edges, default is 10voidsetDepthThreshold(float depthThreshold) sets the depth threshold
Defines at what threshold of difference of depth an edge is outlined default is 0.1fvoidsetEdgeColor(com.jme3.math.ColorRGBA edgeColor) Sets the edge color, default is blackvoidsetEdgeIntensity(float edgeIntensity) sets the edge intensity
Defines how visible the outlined edges will bevoidsetEdgeWidth(float edgeWidth) sets the width of the edge in pixels default is 1voidsetNormalSensitivity(float normalSensitivity) Sets the normals sensitivity.voidsetNormalThreshold(float normalThreshold) sets the normal threshold default is 0.5voidwrite(com.jme3.export.JmeExporter ex) Methods inherited from class com.jme3.post.Filter
cleanup, getDefaultPassDepthFormat, getDefaultPassTextureFormat, getName, getPostRenderPasses, getRenderedTexture, getRenderFrameBuffer, init, isEnabled, isRequiresBilinear, isRequiresSceneTexture, postFilter, postFrame, preFrame, setDepthTexture, setEnabled, setName, setProcessor, setRenderedTexture, setRenderFrameBuffer
-
Constructor Details
-
CartoonEdgeFilter
public CartoonEdgeFilter()Creates a CartoonEdgeFilter
-
-
Method Details
-
isRequiresDepthTexture
protected boolean isRequiresDepthTexture()- Overrides:
isRequiresDepthTexturein classcom.jme3.post.Filter
-
postQueue
protected void postQueue(com.jme3.renderer.queue.RenderQueue queue) - Overrides:
postQueuein classcom.jme3.post.Filter
-
getMaterial
protected com.jme3.material.Material getMaterial()- Specified by:
getMaterialin classcom.jme3.post.Filter
-
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:
initFilterin classcom.jme3.post.Filter
-
cleanUpFilter
protected void cleanUpFilter(com.jme3.renderer.Renderer r) - Overrides:
cleanUpFilterin classcom.jme3.post.Filter
-
getDepthSensitivity
public float getDepthSensitivity()Return the depth sensitivity
for more details seesetDepthSensitivity(float depthSensitivity)- Returns:
- the depth sensitivity
-
setDepthSensitivity
public void setDepthSensitivity(float depthSensitivity) sets the depth sensitivity
defines how much depth will influence edges, default is 10- Parameters:
depthSensitivity- the desired sensitivity (default=10)
-
getDepthThreshold
public float getDepthThreshold()returns the depth threshold
for more details seesetDepthThreshold(float depthThreshold)- Returns:
- the threshold
-
setDepthThreshold
public void setDepthThreshold(float depthThreshold) sets the depth threshold
Defines at what threshold of difference of depth an edge is outlined default is 0.1f- Parameters:
depthThreshold- the desired threshold (default=0.1)
-
getEdgeIntensity
public float getEdgeIntensity()returns the edge intensity
for more details seesetEdgeIntensity(float edgeIntensity)- Returns:
- the intensity
-
setEdgeIntensity
public void setEdgeIntensity(float edgeIntensity) sets the edge intensity
Defines how visible the outlined edges will be- Parameters:
edgeIntensity- the desired intensity (default=1)
-
getEdgeWidth
public float getEdgeWidth()returns the width of the edges- Returns:
- the width
-
setEdgeWidth
public void setEdgeWidth(float edgeWidth) sets the width of the edge in pixels default is 1- Parameters:
edgeWidth- the desired width (in pixels, default=1)
-
getNormalSensitivity
public float getNormalSensitivity()returns the normals sensitivity
form more details seesetNormalSensitivity(float normalSensitivity)- Returns:
- the sensitivity
-
setNormalSensitivity
public void setNormalSensitivity(float normalSensitivity) Sets the normals sensitivity. Default is 1.- Parameters:
normalSensitivity- the desired sensitivity (default=1)
-
getNormalThreshold
public float getNormalThreshold()returns the normal threshold
for more details seesetNormalThreshold(float normalThreshold)- Returns:
- the threshold
-
setNormalThreshold
public void setNormalThreshold(float normalThreshold) sets the normal threshold default is 0.5- Parameters:
normalThreshold- the desired threshold (default=0.5)
-
getEdgeColor
public com.jme3.math.ColorRGBA getEdgeColor()returns the edge color- Returns:
- the pre-existing instance
-
setEdgeColor
public void setEdgeColor(com.jme3.math.ColorRGBA edgeColor) Sets the edge color, default is black- Parameters:
edgeColor- the desired color (alias created, default=(0,0,0,1))
-
write
- Specified by:
writein interfacecom.jme3.export.Savable- Overrides:
writein classcom.jme3.post.Filter- Throws:
IOException
-
read
- Specified by:
readin interfacecom.jme3.export.Savable- Overrides:
readin classcom.jme3.post.Filter- Throws:
IOException
-