private void initSoftParticles(ViewPort vp, boolean enabledSP) { if (depthTexture != null) { for (Spatial scene : vp.getScenes()) { makeSoftParticleEmitter(scene, enabledSP && enabled); } } }
private void makeSoftParticleEmitter(Spatial scene, boolean enabled) { if (scene instanceof Node) { Node n = (Node) scene; for (Spatial child : n.getChildren()) { makeSoftParticleEmitter(child, enabled); } } if (scene instanceof ParticleEmitter) { ParticleEmitter emitter = (ParticleEmitter) scene; if (enabled) { enabledSoftParticles = enabled; emitter.getMaterial().selectTechnique("SoftParticles", renderManager); if( processor.getNumSamples()>1){ emitter.getMaterial().setInt("NumSamplesDepth", processor.getNumSamples()); } emitter.getMaterial().setTexture("DepthTexture", processor.getDepthTexture()); emitter.setQueueBucket(RenderQueue.Bucket.Translucent); logger.log(Level.FINE, "Made particle Emitter {0} soft.", emitter.getName()); } else { emitter.getMaterial().clearParam("DepthTexture"); emitter.getMaterial().selectTechnique("Default", renderManager); // emitter.setQueueBucket(RenderQueue.Bucket.Transparent); logger.log(Level.FINE, "Particle Emitter {0} is not soft anymore.", emitter.getName()); } } } }
private void initSoftParticles(ViewPort vp, boolean enabledSP) { if (depthTexture != null) { for (Spatial scene : vp.getScenes()) { makeSoftParticleEmitter(scene, enabledSP && enabled); } } }
private void initSoftParticles(ViewPort vp, boolean enabledSP) { if (depthTexture != null) { for (Spatial scene : vp.getScenes()) { makeSoftParticleEmitter(scene, enabledSP && enabled); } } }
private void initSoftParticles(ViewPort vp, boolean enabledSP) { if (depthTexture != null) { for (Spatial scene : vp.getScenes()) { makeSoftParticleEmitter(scene, enabledSP && enabled); } } }
private void makeSoftParticleEmitter(Spatial scene, boolean enabled) { if (scene instanceof Node) { Node n = (Node) scene; for (Spatial child : n.getChildren()) { makeSoftParticleEmitter(child, enabled); } } if (scene instanceof ParticleEmitter) { ParticleEmitter emitter = (ParticleEmitter) scene; if (enabled) { enabledSoftParticles = enabled; emitter.getMaterial().selectTechnique("SoftParticles", renderManager); if( processor.getNumSamples()>1){ emitter.getMaterial().setInt("NumSamplesDepth", processor.getNumSamples()); } emitter.getMaterial().setTexture("DepthTexture", processor.getDepthTexture()); emitter.setQueueBucket(RenderQueue.Bucket.Translucent); logger.log(Level.FINE, "Made particle Emitter {0} soft.", emitter.getName()); } else { emitter.getMaterial().clearParam("DepthTexture"); emitter.getMaterial().selectTechnique("Default", renderManager); // emitter.setQueueBucket(RenderQueue.Bucket.Transparent); logger.log(Level.FINE, "Particle Emitter {0} is not soft anymore.", emitter.getName()); } } } }
Node n = (Node) scene; for (Spatial child : n.getChildren()) { makeSoftParticleEmitter(child, enabled);
Node n = (Node) scene; for (Spatial child : n.getChildren()) { makeSoftParticleEmitter(child, enabled);