@Override public void simpleUpdate(float tpf) { super.simpleUpdate(tpf); // box.updateGeometricState(); time += tpf; waterHeight = (float) Math.cos(((time * 0.6f) % FastMath.TWO_PI)) * 1.5f; water.setWaterHeight(initialWaterHeight + waterHeight); if (water.isUnderWater() && !uw) { waves.setDryFilter(new LowPassFilter(0.5f, 0.1f)); uw = true; } if (!water.isUnderWater() && uw) { uw = false; //waves.setReverbEnabled(false); waves.setDryFilter(new LowPassFilter(1, 1f)); //waves.setDryFilter(new LowPassFilter(1,1f)); } } }
@Override public void simpleUpdate(float tpf){ if (audioSource.getStatus() != AudioSource.Status.Playing){ audioRenderer.deleteAudioData(audioSource.getAudioData()); System.out.println("Playing with low pass filter"); audioSource = new AudioNode(assetManager, "Sound/Effects/Foot steps.ogg", DataType.Buffer); audioSource.setDryFilter(new LowPassFilter(1f, .1f)); audioSource.setVolume(3); audioSource.play(); } }
waves.setReverbEnabled(true); if (uw) { waves.setDryFilter(new LowPassFilter(0.5f, 0.1f)); } else { waves.setDryFilter(aboveWaterAudioFilter);