Listener

From Unify Community Wiki
(Difference between revisions)
Jump to: navigation, search
(JavaScript - Listener.js)
(JavaScript - Listener.js)
Line 16: Line 16:
  
 
var volume : float = 1;
 
var volume : float = 1;
 +
 +
// determines whether "RefreshVolume" will run in Update(),
 +
// or must be called manually
 +
var performanceMode = false;
  
 
private var loudnessExponent = Mathf.Log(Mathf.Sqrt(10), 2);
 
private var loudnessExponent = Mathf.Log(Mathf.Sqrt(10), 2);
Line 26: Line 30:
  
 
function Update ()
 
function Update ()
{RefreshVolume ();}</javascript>
+
{if (performanceMode == false)
 +
            RefreshVolume ();}</javascript>

Revision as of 18:26, 23 April 2009

Author: Jessy

Description

This is a script that replaces the Volume property of the Audio Listener. I feel that its behaves more intuitively than that of the Audio Listener itself. See the page for my Audio script for extensive details.  :-D

Instructions

The Volume parameter performs the task that the similarly-named parameter of an Audio Listener was intended to perform.

Performance Mode makes the code execute faster, but the effects of Volume are not automatically updated every frame. You can call the RefreshVolume() function, to make changes only when necessary, from external code.

JavaScript - Listener.js

<javascript>@script RequireComponent(AudioListener)

var volume : float = 1;

// determines whether "RefreshVolume" will run in Update(), // or must be called manually var performanceMode = false;

private var loudnessExponent = Mathf.Log(Mathf.Sqrt(10), 2);

function RefreshVolume () {audioListener.volume = Mathf.Pow(volume, loudnessExponent);}

function Start () {RefreshVolume ();}

function Update () {if (performanceMode == false)

            RefreshVolume ();}</javascript>
Personal tools
Namespaces

Variants
Actions
Navigation
Extras
Toolbox