/** * Adjust the repartition of the different shadow maps in the shadow extend * usually goes from 0.0 to 1.0 a low value give a more linear repartition * resulting in a constant quality in the shadow over the extends, but near * shadows could look very jagged a high value give a more logarithmic * repartition resulting in a high quality for near shadows, but the quality * quickly decrease over the extend. the default value is set to 0.65f * (theoretic optimal value). * * @param lambda the lambda value. */ public void setLambda(float lambda) { shadowRenderer.setLambda(lambda); }
dlsr.setLambda(dlsr.getLambda() + 0.01f); dlsf.setLambda(dlsr.getLambda() + 0.01f); System.out.println("Lambda : " + dlsr.getLambda()); } else if (name.equals("lambdaDown") && keyPressed) { dlsr.setLambda(dlsr.getLambda() - 0.01f); dlsf.setLambda(dlsr.getLambda() - 0.01f); System.out.println("Lambda : " + dlsr.getLambda());
dlsr.setLambda(0.55f); dlsr.setShadowIntensity(0.8f); dlsr.setEdgeFilteringMode(EdgeFilteringMode.Nearest);
dlsr.setLambda(0.55f); dlsr.setShadowIntensity(0.6f); dlsr.setEdgeFilteringMode(EdgeFilteringMode.Bilinear);
pssmRenderer.setLambda(0.55f); pssmRenderer.setShadowIntensity(0.55f); pssmRenderer.setShadowCompareMode(com.jme3.shadow.CompareMode.Software);
/** * Adjust the repartition of the different shadow maps in the shadow extend * usually goes from 0.0 to 1.0 a low value give a more linear repartition * resulting in a constant quality in the shadow over the extends, but near * shadows could look very jagged a high value give a more logarithmic * repartition resulting in a high quality for near shadows, but the quality * quickly decrease over the extend. the default value is set to 0.65f * (theoretic optimal value). * * @param lambda the lambda value. */ public void setLambda(float lambda) { shadowRenderer.setLambda(lambda); }
dlsRenderer.setLambda(0.55f); dlsRenderer.setShadowIntensity(0.8f); dlsRenderer.setShadowCompareMode(CompareMode.Software);
private void setupShadows(ViewPort viewPort) { DirectionalLightShadowRenderer dlsr = new DirectionalLightShadowRenderer(assetManager, 4096, 2); dlsr.setLight(primaryLight); dlsr.setLambda(0.8f); dlsr.setShadowIntensity(0.2f); dlsr.setEdgeFilteringMode(EdgeFilteringMode.PCF4); viewPort.addProcessor(dlsr); }
private void setupShadows(ViewPort viewPort) { DirectionalLightShadowRenderer dlsr = new DirectionalLightShadowRenderer(assetManager, 4096, 2); dlsr.setLight(primaryLight); dlsr.setLambda(0.8f); dlsr.setShadowIntensity(0.2f); dlsr.setEdgeFilteringMode(EdgeFilteringMode.PCF4); viewPort.addProcessor(dlsr); }
private void setupLighting() { // To make shadows, sun dl = new DirectionalLight(); dl.setDirection(lightDir); dl.setColor(ColorRGBA.White); rootNode.addLight(dl); // Add ambient light AmbientLight al = new AmbientLight(); al.setColor(ColorRGBA.White.multLocal(0.4f)); rootNode.addLight(al); /* Drop shadows */ final int SHADOWMAP_SIZE = 1024; DirectionalLightShadowRenderer dlsr = new DirectionalLightShadowRenderer(getAssetManager(), SHADOWMAP_SIZE, 3); dlsr.setLight(dl); dlsr.setLambda(0.55f); dlsr.setShadowIntensity(0.6f); dlsr.setEdgeFilteringMode(EdgeFilteringMode.PCF8); getViewPort().addProcessor(dlsr); }