From 1acd324d02a180f4b2d91699020752a1bd9422fc Mon Sep 17 00:00:00 2001 From: "roo..om" Date: Fri, 2 Sep 2011 19:14:21 +0000 Subject: [PATCH] Audio tests: Used non-deprecated constructor, replaced "AudioApp" class by SimpleApplication git-svn-id: https://jmonkeyengine.googlecode.com/svn/trunk@8149 75d07b2b-3a1a-0410-a2c5-0572b91ccdca --- engine/src/test/jme3test/audio/AudioApp.java | 84 ------------- .../src/test/jme3test/audio/TestAmbient.java | 114 ++++++++---------- .../src/test/jme3test/audio/TestDoppler.java | 21 +--- .../jme3test/audio/TestMusicStreaming.java | 13 +- engine/src/test/jme3test/audio/TestOgg.java | 11 +- .../src/test/jme3test/audio/TestReverb.java | 113 +++++++++-------- engine/src/test/jme3test/audio/TestWav.java | 90 ++++++-------- 7 files changed, 161 insertions(+), 285 deletions(-) delete mode 100644 engine/src/test/jme3test/audio/AudioApp.java diff --git a/engine/src/test/jme3test/audio/AudioApp.java b/engine/src/test/jme3test/audio/AudioApp.java deleted file mode 100644 index 54e146e04..000000000 --- a/engine/src/test/jme3test/audio/AudioApp.java +++ /dev/null @@ -1,84 +0,0 @@ -/* - * Copyright (c) 2009-2010 jMonkeyEngine - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'jMonkeyEngine' nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -package jme3test.audio; - -import com.jme3.audio.AudioRenderer; -import com.jme3.asset.AssetManager; -import com.jme3.asset.DesktopAssetManager; -import com.jme3.audio.AudioContext; -import com.jme3.audio.Listener; -import com.jme3.system.AppSettings; -import com.jme3.system.JmeSystem; - -public class AudioApp { - - private static final float UPDATE_RATE = 0.01f; - - protected AssetManager assetManager; - protected Listener listener; - protected AudioRenderer audioRenderer; - - public AudioApp(){ - AppSettings settings = new AppSettings(true); - settings.setRenderer(null); // force dummy renderer (?) - settings.setAudioRenderer(AppSettings.LWJGL_OPENAL); - audioRenderer = JmeSystem.newAudioRenderer(settings); - audioRenderer.initialize(); - assetManager = new DesktopAssetManager(true); - - listener = new Listener(); - audioRenderer.setListener(listener); - } - - public void initAudioApp(){ - AudioContext.setAudioRenderer(audioRenderer); - } - - public void updateAudioApp(float tpf){ - } - - public void start(){ - initAudioApp(); - - while (true){ - updateAudioApp(UPDATE_RATE); - audioRenderer.update(UPDATE_RATE); - - try{ - Thread.sleep((int) (UPDATE_RATE * 1000f)); - }catch (InterruptedException ex){ - ex.printStackTrace(); - } - } - } -} diff --git a/engine/src/test/jme3test/audio/TestAmbient.java b/engine/src/test/jme3test/audio/TestAmbient.java index e0bc143a1..a8bf01189 100644 --- a/engine/src/test/jme3test/audio/TestAmbient.java +++ b/engine/src/test/jme3test/audio/TestAmbient.java @@ -1,87 +1,69 @@ /* - * Copyright (c) 2009-2010 jMonkeyEngine - * All rights reserved. + * Copyright (c) 2009-2010 jMonkeyEngine All rights reserved. * * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. + * modification, are permitted provided that the following conditions are met: + * * * Redistributions of source code must retain the above copyright notice, + * this list of conditions and the following disclaimer. * * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. * * * Neither the name of 'jMonkeyEngine' nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. + * may be used to endorse or promote products derived from this software + * without specific prior written permission. * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE + * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS + * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN + * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. */ - package jme3test.audio; +import com.jme3.app.SimpleApplication; import com.jme3.audio.AudioNode; -//import com.jme3.audio.PointAudioSource; -import com.jme3.math.FastMath; +import com.jme3.audio.Environment; import com.jme3.math.Vector3f; -public class TestAmbient extends AudioApp { - - private AudioNode river, nature, waves; -// private PointAudioSource waves; - private float time = 0; - private float nextTime = 1; - - public static void main(String[] args){ - TestAmbient test = new TestAmbient(); - test.start(); - } - - @Override - public void initAudioApp(){ - waves = new AudioNode(assetManager, "Sound/Environment/Ocean Waves.ogg", false); - waves.setPositional(true); +public class TestAmbient extends SimpleApplication { - nature = new AudioNode(assetManager, "Sound/Environment/Nature.ogg", true); -// river = new AudioSource(manager, "sounds/river.ogg"); + private AudioNode nature, waves; -// float[] eax = new float[] -// {15, 38.0f, 0.300f, -1000, -3300, 0, 1.49f, 0.54f, 1.00f, -2560, 0.162f, 0.00f,0.00f,0.00f, -229, 0.088f, 0.00f,0.00f,0.00f, 0.125f, 1.000f, 0.250f, 0.000f, -5.0f, 5000.0f, 250.0f, 0.00f, 0x3f } -// ; -// -// Environment env = new Environment(eax); -// ar.setEnvironment(env); + public static void main(String[] args) { + TestAmbient test = new TestAmbient(); + test.start(); + } - waves.setLocalTranslation(new Vector3f(4, -1, 30)); - waves.setMaxDistance(5); - waves.setRefDistance(1); - - nature.setVolume(3); - audioRenderer.playSourceInstance(waves); - audioRenderer.playSource(nature); - } + @Override + public void simpleInitApp() { + float[] eax = new float[]{15, 38.0f, 0.300f, -1000, -3300, 0, + 1.49f, 0.54f, 1.00f, -2560, 0.162f, 0.00f, 0.00f, + 0.00f, -229, 0.088f, 0.00f, 0.00f, 0.00f, 0.125f, 1.000f, + 0.250f, 0.000f, -5.0f, 5000.0f, 250.0f, 0.00f, 0x3f}; + Environment env = new Environment(eax); + audioRenderer.setEnvironment(env); - @Override - public void updateAudioApp(float tpf){ - time += tpf; + waves = new AudioNode(assetManager, "Sound/Environment/Ocean Waves.ogg", false); + waves.setPositional(true); + waves.setLocalTranslation(new Vector3f(4, -1, 30)); + waves.setMaxDistance(5); + waves.setRefDistance(1); - if (time > nextTime){ - - time = 0; - nextTime = FastMath.nextRandomFloat() * 2 + 0.5f; - } - } + nature = new AudioNode(assetManager, "Sound/Environment/River.ogg", true); + nature.setVolume(3); + audioRenderer.playSourceInstance(waves); + audioRenderer.playSource(nature); + } + @Override + public void simpleUpdate(float tpf) { + } } diff --git a/engine/src/test/jme3test/audio/TestDoppler.java b/engine/src/test/jme3test/audio/TestDoppler.java index 9ee7b33ec..30903ed68 100644 --- a/engine/src/test/jme3test/audio/TestDoppler.java +++ b/engine/src/test/jme3test/audio/TestDoppler.java @@ -32,12 +32,10 @@ package jme3test.audio; -import com.jme3.asset.plugins.FileLocator; +import com.jme3.app.SimpleApplication; import com.jme3.audio.AudioNode; import com.jme3.audio.Environment; -import com.jme3.audio.LowPassFilter; import com.jme3.math.FastMath; -import com.jme3.math.Quaternion; import com.jme3.math.Vector3f; import org.lwjgl.openal.AL10; import org.lwjgl.openal.AL11; @@ -45,31 +43,23 @@ import org.lwjgl.openal.AL11; /** * Test Doppler Effect */ -public class TestDoppler extends AudioApp { +public class TestDoppler extends SimpleApplication { private AudioNode ufo; private float x = 20, z = 0; - private float rate = -0.05f; private float xDist = 20; private float zDist = 5; - private float angle = FastMath.TWO_PI; - private LowPassFilter filter = new LowPassFilter(1, 1); - public static void main(String[] args){ TestDoppler test = new TestDoppler(); test.start(); } @Override - public void initAudioApp(){ - Quaternion q = new Quaternion(); - q.lookAt(new Vector3f(0, 0, -1f), Vector3f.UNIT_Y); - listener.setRotation(q); - + public void simpleInitApp(){ audioRenderer.setEnvironment(Environment.Dungeon); AL10.alDistanceModel(AL11.AL_EXPONENT_DISTANCE); @@ -83,7 +73,7 @@ public class TestDoppler extends AudioApp { } @Override - public void updateAudioApp(float tpf){ + public void simpleUpdate(float tpf){ //float x = (float) (Math.cos(angle) * xDist); float dx = (float) Math.sin(angle) * xDist; @@ -107,7 +97,8 @@ public class TestDoppler extends AudioApp { ufo.setLocalTranslation(x, 0, z); ufo.updateGeometricState(); - System.out.println("LOC: " + (int)x +", " + (int)z + ", VEL: " + (int)dx + ", " + (int)dz); + System.out.println("LOC: " + (int)x +", " + (int)z + + ", VEL: " + (int)dx + ", " + (int)dz); } } diff --git a/engine/src/test/jme3test/audio/TestMusicStreaming.java b/engine/src/test/jme3test/audio/TestMusicStreaming.java index f294e060a..dde4394c3 100644 --- a/engine/src/test/jme3test/audio/TestMusicStreaming.java +++ b/engine/src/test/jme3test/audio/TestMusicStreaming.java @@ -32,10 +32,11 @@ package jme3test.audio; +import com.jme3.app.SimpleApplication; import com.jme3.asset.plugins.UrlLocator; import com.jme3.audio.AudioNode; -public class TestMusicStreaming extends AudioApp { +public class TestMusicStreaming extends SimpleApplication { public static void main(String[] args){ TestMusicStreaming test = new TestMusicStreaming(); @@ -43,13 +44,13 @@ public class TestMusicStreaming extends AudioApp { } @Override - public void updateAudioApp(float tpf){ - } - - @Override - public void initAudioApp(){ + public void simpleInitApp(){ assetManager.registerLocator("http://www.vorbis.com/music/", UrlLocator.class); AudioNode src = new AudioNode(assetManager, "Lumme-Badloop.ogg", true); audioRenderer.playSource(src); } + + @Override + public void simpleUpdate(float tpf){} + } \ No newline at end of file diff --git a/engine/src/test/jme3test/audio/TestOgg.java b/engine/src/test/jme3test/audio/TestOgg.java index b6482838f..64ab7a4bc 100644 --- a/engine/src/test/jme3test/audio/TestOgg.java +++ b/engine/src/test/jme3test/audio/TestOgg.java @@ -32,10 +32,11 @@ package jme3test.audio; +import com.jme3.app.SimpleApplication; import com.jme3.audio.AudioNode; import com.jme3.audio.LowPassFilter; -public class TestOgg extends AudioApp { +public class TestOgg extends SimpleApplication { private AudioNode src; @@ -45,19 +46,19 @@ public class TestOgg extends AudioApp { } @Override - public void initAudioApp(){ + public void simpleInitApp(){ System.out.println("Playing without filter"); - src = new AudioNode(audioRenderer, assetManager, "Sound/Effects/Foot steps.ogg", true); + src = new AudioNode(assetManager, "Sound/Effects/Foot steps.ogg", true); audioRenderer.playSource(src); } @Override - public void updateAudioApp(float tpf){ + public void simpleUpdate(float tpf){ if (src.getStatus() != AudioNode.Status.Playing){ audioRenderer.deleteAudioData(src.getAudioData()); System.out.println("Playing with low pass filter"); - src = new AudioNode(audioRenderer, assetManager, "Sound/Effects/Foot steps.ogg", true); + src = new AudioNode(assetManager, "Sound/Effects/Foot steps.ogg", true); src.setDryFilter(new LowPassFilter(1f, .1f)); src.setVolume(3); audioRenderer.playSource(src); diff --git a/engine/src/test/jme3test/audio/TestReverb.java b/engine/src/test/jme3test/audio/TestReverb.java index f94768368..56b6045f6 100644 --- a/engine/src/test/jme3test/audio/TestReverb.java +++ b/engine/src/test/jme3test/audio/TestReverb.java @@ -1,84 +1,79 @@ /* - * Copyright (c) 2009-2010 jMonkeyEngine - * All rights reserved. + * Copyright (c) 2009-2010 jMonkeyEngine All rights reserved. * * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. + * modification, are permitted provided that the following conditions are met: + * * * Redistributions of source code must retain the above copyright notice, + * this list of conditions and the following disclaimer. * * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. * * * Neither the name of 'jMonkeyEngine' nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. + * may be used to endorse or promote products derived from this software + * without specific prior written permission. * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE + * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS + * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN + * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. */ - package jme3test.audio; +import com.jme3.app.SimpleApplication; import com.jme3.audio.AudioNode; import com.jme3.audio.Environment; -//import com.jme3.audio.PointAudioSource; import com.jme3.math.FastMath; import com.jme3.math.Vector3f; -public class TestReverb extends AudioApp { - - private AudioNode src; - private float time = 0; - private float nextTime = 1; +public class TestReverb extends SimpleApplication { - public static void main(String[] args){ - TestReverb test = new TestReverb(); - test.start(); - } + private AudioNode src; + private float time = 0; + private float nextTime = 1; - @Override - public void initAudioApp(){ - src = new AudioNode(audioRenderer, assetManager, "Sound/Effects/Bang.wav"); + public static void main(String[] args) { + TestReverb test = new TestReverb(); + test.start(); + } - float[] eax = new float[] - {15, 38.0f, 0.300f, -1000, -3300, 0, 1.49f, 0.54f, 1.00f, -2560, 0.162f, 0.00f,0.00f,0.00f, -229, 0.088f, 0.00f,0.00f,0.00f, 0.125f, 1.000f, 0.250f, 0.000f, -5.0f, 5000.0f, 250.0f, 0.00f, 0x3f } - ; + @Override + public void simpleInitApp() { + src = new AudioNode(assetManager, "Sound/Effects/Bang.wav"); -// ar.setEnvironment(new Environment(eax)); - Environment env = Environment.Cavern; - audioRenderer.setEnvironment(env); - } + float[] eax = new float[]{15, 38.0f, 0.300f, -1000, -3300, 0, + 1.49f, 0.54f, 1.00f, -2560, 0.162f, 0.00f, 0.00f, 0.00f, + -229, 0.088f, 0.00f, 0.00f, 0.00f, 0.125f, 1.000f, 0.250f, + 0.000f, -5.0f, 5000.0f, 250.0f, 0.00f, 0x3f}; + audioRenderer.setEnvironment(new Environment(eax)); + Environment env = Environment.Cavern; + audioRenderer.setEnvironment(env); + } - @Override - public void updateAudioApp(float tpf){ - time += tpf; + @Override + public void simpleUpdate(float tpf) { + time += tpf; - if (time > nextTime){ - Vector3f v = new Vector3f(); - v.setX(FastMath.nextRandomFloat()); - v.setY(FastMath.nextRandomFloat()); - v.setZ(FastMath.nextRandomFloat()); - v.multLocal(40, 2, 40); - v.subtractLocal(20, 1, 20); + if (time > nextTime) { + Vector3f v = new Vector3f(); + v.setX(FastMath.nextRandomFloat()); + v.setY(FastMath.nextRandomFloat()); + v.setZ(FastMath.nextRandomFloat()); + v.multLocal(40, 2, 40); + v.subtractLocal(20, 1, 20); - src.setLocalTranslation(v); - audioRenderer.playSourceInstance(src); - time = 0; - nextTime = FastMath.nextRandomFloat() * 2 + 0.5f; - } + src.setLocalTranslation(v); + audioRenderer.playSourceInstance(src); + time = 0; + nextTime = FastMath.nextRandomFloat() * 2 + 0.5f; } - + } } diff --git a/engine/src/test/jme3test/audio/TestWav.java b/engine/src/test/jme3test/audio/TestWav.java index c6db6d05e..63bb52212 100644 --- a/engine/src/test/jme3test/audio/TestWav.java +++ b/engine/src/test/jme3test/audio/TestWav.java @@ -1,70 +1,60 @@ /* - * Copyright (c) 2009-2010 jMonkeyEngine - * All rights reserved. + * Copyright (c) 2009-2010 jMonkeyEngine All rights reserved. * * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. + * modification, are permitted provided that the following conditions are met: + * * + * * Redistributions of source code must retain the above copyright notice, + * this list of conditions and the following disclaimer. * * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. * * * Neither the name of 'jMonkeyEngine' nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. + * may be used to endorse or promote products derived from this software + * without specific prior written permission. * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE + * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS + * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN + * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. */ - package jme3test.audio; +import com.jme3.app.SimpleApplication; import com.jme3.audio.AudioNode; -public class TestWav extends AudioApp { - - private float time = 0; - private AudioNode src; +public class TestWav extends SimpleApplication { - public static void main(String[] args){ - TestWav test = new TestWav(); - test.start(); - } + private float time = 0; + private AudioNode src; - public static void sleep(float time){ - try{ - Thread.sleep((long) (time * 1000)); - }catch (InterruptedException ex){ - } - } + public static void main(String[] args) { + TestWav test = new TestWav(); + test.start(); + } - @Override - public void updateAudioApp(float tpf){ - time += tpf; - if (time > .1f){ - audioRenderer.playSourceInstance(src); - time = 0; - } - + @Override + public void simpleUpdate(float tpf) { + time += tpf; + if (time > 1f) { + audioRenderer.playSourceInstance(src); + time = 0; } - @Override - public void initAudioApp(){ - src = new AudioNode(audioRenderer, assetManager, "Sound/Effects/Gun.wav", false); - src.setLooping(false); - } + } + @Override + public void simpleInitApp() { + src = new AudioNode(assetManager, "Sound/Effects/Gun.wav", false); + src.setLooping(false); + } }