Difference between revisions of "Korman:Sounds"

m (Controlling a Sound With Responders)
m (Controlling a Sound With Responders)
Line 94: Line 94:
 
[[file:KorSounds04.jpg]]
 
[[file:KorSounds04.jpg]]
  
With that done, let's switch over to the '''Node Editor''' window.
+
With that done, let's switch over to the '''Node Editor''' window.  Check [[Korman:Logic_Nodes#Setting_Up|here]] for how to set things up properly for your node tree.
  
 
[[file:KorNodeMenuBar01.jpg]]
 
[[file:KorNodeMenuBar01.jpg]]

Revision as of 20:06, 28 June 2016

Disambig gray.png

This is a tutorial page.Versions available: PyPRP; 3ds Max; Korman.
 KorNodeMessage02.jpg

This tutorial will show you how to add sounds into an Age with Korman.

Getting Started

Korman eliminates a lot of the busy work that previously went into adding a sound. You no longer have to have the sound file in the same folder as the blend file, and you no longer need to convert the sound into WAV format first. You can directly link to a sound already located in URU's SFX folder with no extra fuss.

If it's easier, you can still copy the sound into the blend's directory, as it will make it easier to locate when you choose the sound file later. Just make sure the same sound file is also located in the installation of URU to which you are exporting or the sound won't play.

Empty Object Emitter

To start, you will need to add an empty. For 3D sounds, you want to locate the empty around where the sound is centralized (Empty objects for the other types of sounds can be located anywhere in the Age). For this example, let's look at a Nexus pedestal:

KorSounds01.jpg

As you can see, the empty is located in the middle of the turning gear and the sound will be centralized there. Again, location of the empty is only essential for 3D sounds.

Sound Modifier

With the empty selected, go to the Properties window and select the Physics panel.

KorStart03.jpg

Click on Add Modifier and select Sound Emitter. Click on the + at the right of the new panel that appears.

Your window should look like this:

KorSounds03.jpg

Now we need to select a sound. Click on the folder icon on the right side of the first field. Navigate to the folder that contains the sound file you would like to use and select it.

NOTE: It may take a few moments to load URU's SFX folder due to the large amount of sound files

In this example, we'll use the Nexus pedestal's default xNxusPodium_Loop.ogg sound file.

KorSounds02.jpg

Now for the various options.

The first two fields determine which type of sound will be played and which channel on which it will play (left or right)

  • NPC: Stands for "Non-Player Character". Used for dialogue such as Yeesha's Bahro Cave speeches.
  • GUI: Used for a GUI dialog interface, such as the Great Zero scopes.
  • Music: Sets the sound as an Age's background music. You can set this to a Soft Volume if you'd like the music regulated to a specific area, such as the Kadish Gallery in Ae'gura.
  • Ambience: Used for an Age's background noise, such as wind and random sounds. Can be heard all around the Age or set to Soft Volumes for specific areas.
  • 3D: The most common sound emitter. Will fade in and out based on the values you determine below and how far or close the avatar is in-game.

Next to that, you can choose the Channels, left and right, on which the sound will play (both selected is usually the default).

  • Playback
    • Auto Start: This will play the sound automatically when the player enters the Age.
    • Incidental: For low-priority sounds where the game may forgo playback. For random noise sounds.
    • Loop: Causes the sound to repeat indefinitely until it's stopped by a responder.
  • Cone Effect
    • Inner Angle:
    • Outer Angle:
    • Volume:
  • Fade In
    • Exponential:
    • Logarithmic:
    • Linear:
  • Fade Out:
  • Volume Falloff
    • Begin (for 3D sounds): This is the distance from the empty where the sound reaches full volume. The "louder" you want the sound to seem, the larger this number. 5 is usually a good number for regular sounds.
    • End (for 3D sounds): At this distance, the sound is completely inaudible. Once again, the louder the sound, the larger this number will be, but you'll always want it bigger than your Begin number.
    • Max Volume (for all sounds): The volume at which the sound will be at its loudest in-game compared to the actual sound file. For instance, if you set this for 50%, then the sounds maximum volume in-game will only be 50% of the actual sound file's volume.
NOTE: The Begin and End values only affect 3D sounds. However, all types of sounds can have their Max Volume adjusted.
  • Soft Region: Choosing a Soft Volume in this field will regulate a sound to the settings of that soft volume. For example, a simple soft volume will cause the sound to only be heard within it. An inverted soft volume will cause the sound to be heard everywhere except within the soft volume.

See the soft volumes tutorial for more information on the various types of Soft Volumes and how to set one up.

Controlling a Sound With Responders

KorNodeMessage02.jpg

So you have a sound emitter with modifier, but how do you control it? If your sound is not Auto Play, you won't be able to hear it without triggering it.

For that, we use a node logic tree with a sound node (see link for node's functions) to control the emitter. We'll make a simple node tree to cause a sound to play with a clickable.

First, add any object for the clickable with a large region surrounding it.

Then we'll set up an empty to play the xYeeshaPageGlow.ogg sound in the middle of the clickable.

KorSounds04.jpg

With that done, let's switch over to the Node Editor window. Check here for how to set things up properly for your node tree.

KorNodeMenuBar01.jpg

Be sure the menu bar for the Node Editor is set like the one above. Let's set up a responder to turn the sound on when we click the button.

KorSounds05.jpg

This will cause the sound to play once and stop each time you use the clickable.

Now how about we make it so that the sound plays on a loop until clicked again. For that, it's a simple matter of adding another state to the existing node tree.

KorSounds06.jpg

As you can see, the default state has the sound off. For that state, we set the sound to loop when it starts so it will play continuously.

Clicking the button again will trigger the second state, which will shut off the sound.

This achieves the same effect as the music box on Relto and would be useful to control music in an Age.

Remember, when your node tree is complete that you need to apply it to any object.

Note that the same effect can be achieved with a region sensor instead of a clickable.