123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140 |
- <!DOCTYPE html>
- <html lang="en">
- <head>
- <meta charset="utf-8" />
- <base href="../../../" />
- <script src="page.js"></script>
- <link type="text/css" rel="stylesheet" href="page.css" />
- </head>
- <body>
- [page:Object3D] → [page:Audio] →
- <h1>[name]</h1>
- <p class="desc">
- Create a positional audio object.<br /><br />
- This uses the
- [link:https://developer.mozilla.org/en-US/docs/Web/API/Web_Audio_API Web Audio API].
- </p>
- <h2>Code Example</h2>
- <code>
- // create an AudioListener and add it to the camera
- const listener = new THREE.AudioListener();
- camera.add( listener );
- // create the PositionalAudio object (passing in the listener)
- const sound = new THREE.PositionalAudio( listener );
- // load a sound and set it as the PositionalAudio object's buffer
- const audioLoader = new THREE.AudioLoader();
- audioLoader.load( 'sounds/song.ogg', function( buffer ) {
- sound.setBuffer( buffer );
- sound.setRefDistance( 20 );
- sound.play();
- });
- // create an object for the sound to play from
- const sphere = new THREE.SphereGeometry( 20, 32, 16 );
- const material = new THREE.MeshPhongMaterial( { color: 0xff2200 } );
- const mesh = new THREE.Mesh( sphere, material );
- scene.add( mesh );
- // finally add the sound to the mesh
- mesh.add( sound );
- </code>
- <h2>Examples</h2>
- <p>
- [example:webaudio_orientation webaudio / orientation ]<br />
- [example:webaudio_sandbox webaudio / sandbox ]<br />
- [example:webaudio_timing webaudio / timing ]
- </p>
- <h2>Constructor</h2>
- <h3>[name]( [param:AudioListener listener] )</h3>
- <p>listener — (required) [page:AudioListener AudioListener] instance.</p>
- <h2>Properties</h2>
- <p>See the [page:Audio Audio] class for inherited properties.</p>
- <h3>[property:PannerNode panner]</h3>
- <p>
- The PositionalAudio's
- [link:https://developer.mozilla.org/en-US/docs/Web/API/PannerNode PannerNode].
- </p>
- <h2>Methods</h2>
- <p>See the [page:Audio Audio] class for inherited methods.</p>
- <h3>[method:PannerNode getOutput]()</h3>
- <p>Returns the [page:PositionalAudio.panner panner].</p>
- <h3>[method:Float getRefDistance]()</h3>
- <p>
- Returns the value of
- [link:https://developer.mozilla.org/en-US/docs/Web/API/PannerNode/refDistance panner.refDistance].
- </p>
- <h3>[method:this setRefDistance]( [param:Float value] )</h3>
- <p>
- Sets the value of
- [link:https://developer.mozilla.org/en-US/docs/Web/API/PannerNode/refDistance panner.refDistance].
- </p>
- <h3>[method:Float getRolloffFactor]()</h3>
- <p>
- Returns the value of
- [link:https://developer.mozilla.org/en-US/docs/Web/API/PannerNode/rolloffFactor panner.rolloffFactor].
- </p>
- <h3>[method:this setRolloffFactor]( [param:Float value] )</h3>
- <p>
- Sets the value of
- [link:https://developer.mozilla.org/en-US/docs/Web/API/PannerNode/rolloffFactor panner.rolloffFactor].
- </p>
- <h3>[method:String getDistanceModel]()</h3>
- <p>
- Returns the value of
- [link:https://developer.mozilla.org/en-US/docs/Web/API/PannerNode/distanceModel panner.distanceModel].
- </p>
- <h3>[method:this setDistanceModel]( [param:String value] )</h3>
- <p>
- Sets the value of
- [link:https://developer.mozilla.org/en-US/docs/Web/API/PannerNode/distanceModel panner.distanceModel].
- </p>
- <h3>[method:Float getMaxDistance]()</h3>
- <p>
- Returns the value of
- [link:https://developer.mozilla.org/en-US/docs/Web/API/PannerNode/maxDistance panner.maxDistance].
- </p>
- <h3>[method:this setMaxDistance]( [param:Float value] )</h3>
- <p>
- Sets the value of
- [link:https://developer.mozilla.org/en-US/docs/Web/API/PannerNode/maxDistance panner.maxDistance].
- </p>
- <h3>[method:this setDirectionalCone]( [param:Float coneInnerAngle], [param:Float coneOuterAngle], [param:Float coneOuterGain] )
- </h3>
- <p>
- This method can be used in order to transform an omnidirectional sound
- into a [link:https://developer.mozilla.org/en-US/docs/Web/API/PannerNode directional sound].
- </p>
- <h2>Source</h2>
- <p>
- [link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
- </p>
- </body>
- </html>
|