11/*
2- * Copyright (c) 2009-2024 jMonkeyEngine
2+ * Copyright (c) 2009-2025 jMonkeyEngine
33 * All rights reserved.
44 *
55 * Redistribution and use in source and binary forms, with or without
5151import java .io .IOException ;
5252
5353/**
54- *
5554 * Generic abstract filter that holds common implementations for the different
5655 * shadow filters
5756 *
@@ -63,9 +62,9 @@ public abstract class AbstractShadowFilter<T extends AbstractShadowRenderer> ext
6362 protected ViewPort viewPort ;
6463
6564 /**
66- * used for serialization
65+ * For serialization only. Do not use.
6766 */
68- protected AbstractShadowFilter (){
67+ protected AbstractShadowFilter () {
6968 }
7069
7170 /**
@@ -79,11 +78,8 @@ protected AbstractShadowFilter(){
7978 @ SuppressWarnings ("all" )
8079 protected AbstractShadowFilter (AssetManager manager , int shadowMapSize , T shadowRenderer ) {
8180 super ("Post Shadow" );
82- material = new Material (manager , "Common/MatDefs/Shadow/PostShadowFilter.j3md" );
8381 this .shadowRenderer = shadowRenderer ;
84- this .shadowRenderer .setPostShadowMaterial (material );
85-
86- //this is legacy setting for shadows with backface shadows
82+ // this is legacy setting for shadows with backface shadows
8783 this .shadowRenderer .setRenderBackFacesShadows (true );
8884 }
8985
@@ -100,6 +96,7 @@ protected boolean isRequiresDepthTexture() {
10096 public Material getShadowMaterial () {
10197 return material ;
10298 }
99+
103100 Vector4f tmpv = new Vector4f ();
104101
105102 @ Override
@@ -113,31 +110,33 @@ protected void preFrame(float tpf) {
113110 @ Override
114111 protected void postQueue (RenderQueue queue ) {
115112 shadowRenderer .postQueue (queue );
116- if (shadowRenderer .skipPostPass ){
117- // removing the shadow map so that the post pass is skipped
118- material .setTexture ("ShadowMap0" , null );
119- }
113+ if (shadowRenderer .skipPostPass ) {
114+ // removing the shadow map so that the post pass is skipped
115+ material .setTexture ("ShadowMap0" , null );
116+ }
120117 }
121118
122119 @ Override
123120 protected void postFrame (RenderManager renderManager , ViewPort viewPort , FrameBuffer prevFilterBuffer , FrameBuffer sceneBuffer ) {
124- if (!shadowRenderer .skipPostPass ){
121+ if (!shadowRenderer .skipPostPass ) {
125122 shadowRenderer .setPostShadowParams ();
126123 }
127124 }
128125
129126 @ Override
130127 protected void initFilter (AssetManager manager , RenderManager renderManager , ViewPort vp , int w , int h ) {
131128 shadowRenderer .needsfallBackMaterial = true ;
129+ material = new Material (manager , "Common/MatDefs/Shadow/PostShadowFilter.j3md" );
130+ shadowRenderer .setPostShadowMaterial (material );
132131 shadowRenderer .initialize (renderManager , vp );
133132 this .viewPort = vp ;
134133 }
135-
136- /**
134+
135+ /**
137136 * How far the shadows are rendered in the view
138137 *
139- * @see #setShadowZExtend(float zFar)
140138 * @return shadowZExtend
139+ * @see #setShadowZExtend(float zFar)
141140 */
142141 public float getShadowZExtend () {
143142 return shadowRenderer .getShadowZExtend ();
0 commit comments