git-svn-id: https://jmonkeyengine.googlecode.com/svn/trunk@8149 75d07b2b-3a1a-0410-a2c5-0572b91ccdca3.0
parent
d613ed7c84
commit
1acd324d02
@ -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(); |
|
||||||
} |
|
||||||
} |
|
||||||
} |
|
||||||
} |
|
@ -1,87 +1,69 @@ |
|||||||
/* |
/* |
||||||
* Copyright (c) 2009-2010 jMonkeyEngine |
* Copyright (c) 2009-2010 jMonkeyEngine All rights reserved. |
||||||
* All rights reserved. |
|
||||||
* |
* |
||||||
* Redistribution and use in source and binary forms, with or without |
* Redistribution and use in source and binary forms, with or without |
||||||
* modification, are permitted provided that the following conditions are |
* modification, are permitted provided that the following conditions are met: |
||||||
* met: |
* * * Redistributions of source code must retain the above copyright notice, |
||||||
* |
* this list of conditions and the following disclaimer. |
||||||
* * 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 |
* * Redistributions in binary form must reproduce the above copyright |
||||||
* notice, this list of conditions and the following disclaimer in the |
* notice, this list of conditions and the following disclaimer in the |
||||||
* documentation and/or other materials provided with the distribution. |
* documentation and/or other materials provided with the distribution. |
||||||
* |
* |
||||||
* * Neither the name of 'jMonkeyEngine' nor the names of its contributors |
* * Neither the name of 'jMonkeyEngine' nor the names of its contributors |
||||||
* may be used to endorse or promote products derived from this software |
* may be used to endorse or promote products derived from this software |
||||||
* without specific prior written permission. |
* without specific prior written permission. |
||||||
* |
* |
||||||
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS |
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" |
||||||
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED |
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE |
||||||
* TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR |
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE |
||||||
* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR |
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE |
||||||
* CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, |
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR |
||||||
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, |
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF |
||||||
* PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR |
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS |
||||||
* PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF |
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN |
||||||
* LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING |
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) |
||||||
* NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS |
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE |
||||||
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
* POSSIBILITY OF SUCH DAMAGE. |
||||||
*/ |
*/ |
||||||
|
|
||||||
package jme3test.audio; |
package jme3test.audio; |
||||||
|
|
||||||
|
import com.jme3.app.SimpleApplication; |
||||||
import com.jme3.audio.AudioNode; |
import com.jme3.audio.AudioNode; |
||||||
//import com.jme3.audio.PointAudioSource;
|
import com.jme3.audio.Environment; |
||||||
import com.jme3.math.FastMath; |
|
||||||
import com.jme3.math.Vector3f; |
import com.jme3.math.Vector3f; |
||||||
|
|
||||||
public class TestAmbient extends AudioApp { |
public class TestAmbient extends SimpleApplication { |
||||||
|
|
||||||
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); |
|
||||||
|
|
||||||
nature = new AudioNode(assetManager, "Sound/Environment/Nature.ogg", true); |
private AudioNode nature, waves; |
||||||
// river = new AudioSource(manager, "sounds/river.ogg");
|
|
||||||
|
|
||||||
// float[] eax = new float[]
|
public static void main(String[] args) { |
||||||
// {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 }
|
TestAmbient test = new TestAmbient(); |
||||||
// ;
|
test.start(); |
||||||
//
|
} |
||||||
// Environment env = new Environment(eax);
|
|
||||||
// ar.setEnvironment(env);
|
|
||||||
|
|
||||||
waves.setLocalTranslation(new Vector3f(4, -1, 30)); |
@Override |
||||||
waves.setMaxDistance(5); |
public void simpleInitApp() { |
||||||
waves.setRefDistance(1); |
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, |
||||||
nature.setVolume(3); |
0.00f, -229, 0.088f, 0.00f, 0.00f, 0.00f, 0.125f, 1.000f, |
||||||
audioRenderer.playSourceInstance(waves); |
0.250f, 0.000f, -5.0f, 5000.0f, 250.0f, 0.00f, 0x3f}; |
||||||
audioRenderer.playSource(nature); |
Environment env = new Environment(eax); |
||||||
} |
audioRenderer.setEnvironment(env); |
||||||
|
|
||||||
@Override |
waves = new AudioNode(assetManager, "Sound/Environment/Ocean Waves.ogg", false); |
||||||
public void updateAudioApp(float tpf){ |
waves.setPositional(true); |
||||||
time += tpf; |
waves.setLocalTranslation(new Vector3f(4, -1, 30)); |
||||||
|
waves.setMaxDistance(5); |
||||||
|
waves.setRefDistance(1); |
||||||
|
|
||||||
if (time > nextTime){ |
nature = new AudioNode(assetManager, "Sound/Environment/River.ogg", true); |
||||||
|
nature.setVolume(3); |
||||||
time = 0; |
audioRenderer.playSourceInstance(waves); |
||||||
nextTime = FastMath.nextRandomFloat() * 2 + 0.5f; |
audioRenderer.playSource(nature); |
||||||
} |
} |
||||||
} |
|
||||||
|
|
||||||
|
@Override |
||||||
|
public void simpleUpdate(float tpf) { |
||||||
|
} |
||||||
} |
} |
||||||
|
@ -1,84 +1,79 @@ |
|||||||
/* |
/* |
||||||
* Copyright (c) 2009-2010 jMonkeyEngine |
* Copyright (c) 2009-2010 jMonkeyEngine All rights reserved. |
||||||
* All rights reserved. |
|
||||||
* |
* |
||||||
* Redistribution and use in source and binary forms, with or without |
* Redistribution and use in source and binary forms, with or without |
||||||
* modification, are permitted provided that the following conditions are |
* modification, are permitted provided that the following conditions are met: |
||||||
* met: |
* * * Redistributions of source code must retain the above copyright notice, |
||||||
* |
* this list of conditions and the following disclaimer. |
||||||
* * 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 |
* * Redistributions in binary form must reproduce the above copyright |
||||||
* notice, this list of conditions and the following disclaimer in the |
* notice, this list of conditions and the following disclaimer in the |
||||||
* documentation and/or other materials provided with the distribution. |
* documentation and/or other materials provided with the distribution. |
||||||
* |
* |
||||||
* * Neither the name of 'jMonkeyEngine' nor the names of its contributors |
* * Neither the name of 'jMonkeyEngine' nor the names of its contributors |
||||||
* may be used to endorse or promote products derived from this software |
* may be used to endorse or promote products derived from this software |
||||||
* without specific prior written permission. |
* without specific prior written permission. |
||||||
* |
* |
||||||
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS |
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" |
||||||
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED |
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE |
||||||
* TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR |
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE |
||||||
* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR |
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE |
||||||
* CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, |
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR |
||||||
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, |
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF |
||||||
* PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR |
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS |
||||||
* PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF |
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN |
||||||
* LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING |
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) |
||||||
* NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS |
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE |
||||||
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
* POSSIBILITY OF SUCH DAMAGE. |
||||||
*/ |
*/ |
||||||
|
|
||||||
package jme3test.audio; |
package jme3test.audio; |
||||||
|
|
||||||
|
import com.jme3.app.SimpleApplication; |
||||||
import com.jme3.audio.AudioNode; |
import com.jme3.audio.AudioNode; |
||||||
import com.jme3.audio.Environment; |
import com.jme3.audio.Environment; |
||||||
//import com.jme3.audio.PointAudioSource;
|
|
||||||
import com.jme3.math.FastMath; |
import com.jme3.math.FastMath; |
||||||
import com.jme3.math.Vector3f; |
import com.jme3.math.Vector3f; |
||||||
|
|
||||||
public class TestReverb extends AudioApp { |
public class TestReverb extends SimpleApplication { |
||||||
|
|
||||||
private AudioNode src; |
|
||||||
private float time = 0; |
|
||||||
private float nextTime = 1; |
|
||||||
|
|
||||||
public static void main(String[] args){ |
private AudioNode src; |
||||||
TestReverb test = new TestReverb(); |
private float time = 0; |
||||||
test.start(); |
private float nextTime = 1; |
||||||
} |
|
||||||
|
|
||||||
@Override |
public static void main(String[] args) { |
||||||
public void initAudioApp(){ |
TestReverb test = new TestReverb(); |
||||||
src = new AudioNode(audioRenderer, assetManager, "Sound/Effects/Bang.wav"); |
test.start(); |
||||||
|
} |
||||||
|
|
||||||
float[] eax = new float[] |
@Override |
||||||
{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 } |
public void simpleInitApp() { |
||||||
; |
src = new AudioNode(assetManager, "Sound/Effects/Bang.wav"); |
||||||
|
|
||||||
// ar.setEnvironment(new Environment(eax));
|
float[] eax = new float[]{15, 38.0f, 0.300f, -1000, -3300, 0, |
||||||
Environment env = Environment.Cavern; |
1.49f, 0.54f, 1.00f, -2560, 0.162f, 0.00f, 0.00f, 0.00f, |
||||||
audioRenderer.setEnvironment(env); |
-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 |
@Override |
||||||
public void updateAudioApp(float tpf){ |
public void simpleUpdate(float tpf) { |
||||||
time += tpf; |
time += tpf; |
||||||
|
|
||||||
if (time > nextTime){ |
if (time > nextTime) { |
||||||
Vector3f v = new Vector3f(); |
Vector3f v = new Vector3f(); |
||||||
v.setX(FastMath.nextRandomFloat()); |
v.setX(FastMath.nextRandomFloat()); |
||||||
v.setY(FastMath.nextRandomFloat()); |
v.setY(FastMath.nextRandomFloat()); |
||||||
v.setZ(FastMath.nextRandomFloat()); |
v.setZ(FastMath.nextRandomFloat()); |
||||||
v.multLocal(40, 2, 40); |
v.multLocal(40, 2, 40); |
||||||
v.subtractLocal(20, 1, 20); |
v.subtractLocal(20, 1, 20); |
||||||
|
|
||||||
src.setLocalTranslation(v); |
src.setLocalTranslation(v); |
||||||
audioRenderer.playSourceInstance(src); |
audioRenderer.playSourceInstance(src); |
||||||
time = 0; |
time = 0; |
||||||
nextTime = FastMath.nextRandomFloat() * 2 + 0.5f; |
nextTime = FastMath.nextRandomFloat() * 2 + 0.5f; |
||||||
} |
|
||||||
} |
} |
||||||
|
} |
||||||
} |
} |
||||||
|
@ -1,70 +1,60 @@ |
|||||||
/* |
/* |
||||||
* Copyright (c) 2009-2010 jMonkeyEngine |
* Copyright (c) 2009-2010 jMonkeyEngine All rights reserved. |
||||||
* All rights reserved. |
|
||||||
* |
* |
||||||
* Redistribution and use in source and binary forms, with or without |
* Redistribution and use in source and binary forms, with or without |
||||||
* modification, are permitted provided that the following conditions are |
* modification, are permitted provided that the following conditions are met: |
||||||
* met: |
* * |
||||||
* |
* * Redistributions of source code must retain the above copyright notice, |
||||||
* * Redistributions of source code must retain the above copyright |
* this list of conditions and the following disclaimer. |
||||||
* notice, this list of conditions and the following disclaimer. |
|
||||||
* |
* |
||||||
* * Redistributions in binary form must reproduce the above copyright |
* * Redistributions in binary form must reproduce the above copyright |
||||||
* notice, this list of conditions and the following disclaimer in the |
* notice, this list of conditions and the following disclaimer in the |
||||||
* documentation and/or other materials provided with the distribution. |
* documentation and/or other materials provided with the distribution. |
||||||
* |
* |
||||||
* * Neither the name of 'jMonkeyEngine' nor the names of its contributors |
* * Neither the name of 'jMonkeyEngine' nor the names of its contributors |
||||||
* may be used to endorse or promote products derived from this software |
* may be used to endorse or promote products derived from this software |
||||||
* without specific prior written permission. |
* without specific prior written permission. |
||||||
* |
* |
||||||
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS |
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" |
||||||
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED |
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE |
||||||
* TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR |
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE |
||||||
* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR |
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE |
||||||
* CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, |
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR |
||||||
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, |
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF |
||||||
* PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR |
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS |
||||||
* PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF |
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN |
||||||
* LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING |
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) |
||||||
* NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS |
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE |
||||||
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
* POSSIBILITY OF SUCH DAMAGE. |
||||||
*/ |
*/ |
||||||
|
|
||||||
package jme3test.audio; |
package jme3test.audio; |
||||||
|
|
||||||
|
import com.jme3.app.SimpleApplication; |
||||||
import com.jme3.audio.AudioNode; |
import com.jme3.audio.AudioNode; |
||||||
|
|
||||||
public class TestWav extends AudioApp { |
public class TestWav extends SimpleApplication { |
||||||
|
|
||||||
private float time = 0; |
|
||||||
private AudioNode src; |
|
||||||
|
|
||||||
public static void main(String[] args){ |
private float time = 0; |
||||||
TestWav test = new TestWav(); |
private AudioNode src; |
||||||
test.start(); |
|
||||||
} |
|
||||||
|
|
||||||
public static void sleep(float time){ |
public static void main(String[] args) { |
||||||
try{ |
TestWav test = new TestWav(); |
||||||
Thread.sleep((long) (time * 1000)); |
test.start(); |
||||||
}catch (InterruptedException ex){ |
} |
||||||
} |
|
||||||
} |
|
||||||
|
|
||||||
@Override |
@Override |
||||||
public void updateAudioApp(float tpf){ |
public void simpleUpdate(float tpf) { |
||||||
time += tpf; |
time += tpf; |
||||||
if (time > .1f){ |
if (time > 1f) { |
||||||
audioRenderer.playSourceInstance(src); |
audioRenderer.playSourceInstance(src); |
||||||
time = 0; |
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); |
||||||
|
} |
||||||
} |
} |
||||||
|
Loading…
Reference in new issue