Skip to content

Commit 59ddb68

Browse files
committed
test keeper hand shadows
1 parent 9a4a863 commit 59ddb68

File tree

1 file changed

+26
-0
lines changed

1 file changed

+26
-0
lines changed

src/toniarts/openkeeper/view/KeeperHandState.java

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,10 +28,14 @@
2828
import com.jme3.math.Quaternion;
2929
import com.jme3.math.Vector2f;
3030
import com.jme3.math.Vector3f;
31+
import com.jme3.post.FilterPostProcessor;
3132
import com.jme3.renderer.Camera;
33+
import com.jme3.renderer.queue.RenderQueue.ShadowMode;
3234
import com.jme3.scene.Node;
3335
import com.jme3.scene.Spatial;
3436
import com.jme3.scene.Spatial.CullHint;
37+
import com.jme3.shadow.SpotLightShadowFilter;
38+
import com.jme3.shadow.SpotLightShadowRenderer;
3539
import com.jme3.texture.Texture;
3640
import com.jme3.texture.Texture2D;
3741
import com.jme3.ui.Picture;
@@ -148,6 +152,28 @@ public void initialize(final AppStateManager stateManager, final Application app
148152
keeperLight.setName("Keeper Hand");
149153
this.app.getRootNode().addLight(keeperLight);
150154

155+
var viewPort = this.app.getViewPort();
156+
157+
final int SHADOWMAP_SIZE = 512;
158+
159+
if (false) {
160+
} else if (true) {
161+
var sr = new SpotLightShadowRenderer(assetManager, SHADOWMAP_SIZE);
162+
sr.setLight(keeperLight);
163+
viewPort.addProcessor(sr);
164+
} else {
165+
var fpp = new FilterPostProcessor(assetManager);
166+
var plsf = new SpotLightShadowFilter(assetManager, SHADOWMAP_SIZE) /*{
167+
{
168+
shadowRenderer.displayDebug();
169+
}
170+
}*/;
171+
plsf.setLight(keeperLight);
172+
plsf.setEnabled(true);
173+
fpp.addFilter(plsf);
174+
viewPort.addProcessor(fpp);
175+
}
176+
this.app.getRootNode().setShadowMode(ShadowMode.CastAndReceive);
151177
// Start loading stuff (maybe we should do this earlier...)
152178
inHandLoader.start();
153179
}

0 commit comments

Comments
 (0)