anchor.diff:  :keywords: sound, documentation, beginner, intro
   
   
  -This tutorial explains how to add 3D sound to a game, and how to make sounds play together with events, such as clicking. You learn how to use an Audio Listener and Audio Nodes. You also make use of an Action Listener and a MouseButtonTrigger from the previous <<jme3/beginner/hello_input_system#,Hello Input>> tutorial to make a mouse click trigger a gun shot sound.
  -
  -
  -[TIP]
  -====
  -To use the example assets in a new jMonkeyEngine SDK project, right-click your project, select “Properties, go to “Libraries, press “Add Library and add the “jme3-test-data library.
  -====
  -
  -
  +This tutorial explains how to add 3D sound to a game, and how to make sounds play together with events, such as clicking. You learn how to use an Audio Listener and Audio Nodes. You also make use of an Action Listener and a MouseButtonTrigger from the previous xref:beginner/hello_input_system.adoc[Hello Input] tutorial to make a mouse click trigger a gun shot sound.
  +
  +include::partial$add-testdata-tip.adoc[]
   
   == Sample Code
   
  
positive.code: 
  [TIP]
  ====
  JME's Audio implementation also supports more advanced effects such as reverberation and Doppler effect. Use these “pro features to make audio sound different depending on whether it's in the hallway, in a cave, outdoors, or in a carpeted room. Find out more about environmental effects from the sample code included in the jme3test directory and from the advanced <<jme3/advanced/audio#,Audio>> docs.
  ====
  
  Want some fire and explosions to go with your sounds? Read on to learn more about <<jme3/beginner/hello_effects#,effects>>.
  
  '''
  
  See also:
  
  *   <<jme3/advanced/audio#,Audio>>
  
negative.code: 
  *  In a game with moving enemies you may want to make the gun shot or footsteps positional sounds. In these cases you must move the AudioNode to the location of the enemy before `playInstance()`ing it. This way a player with stereo speakers hears from which direction the enemy is coming.
  *  Similarly, you may have game levels where you want one background sound to play globally. In this case, you would make the AudioNode neither positional nor directional (set both to false).
  *  If you want sound to be "`absorbed`" by the walls and only broadcast in one direction, you would make this AudioNode directional. This tutorial does not discuss directional sounds, you can read about xref:ROOT:jme3/advanced/audio.adoc[Advanced Audio] here.
  
  In short, you must choose in every situation whether it makes sense for a sound to be global, directional, or positional.
  
  