AudioAsset
Ease
FastString
FontAsset
NineSlice
PackedSprite
PackedSpriteID
RB
   HardwareSettings
   IRetroBlitGame
RBAsset
Rect2i
ShaderAsset
SoundReference
SpriteGrid
SpriteSheetAsset
TMXMapAsset
   TMXLayer
   TMXLayerLoadState
   TMXObject
   TMXObjectGroup
   TMXProperties
Vector2i

RB.MusicCrossFadeSet

Method  -  Static

public static void MusicCrossFadeSet(float fadeDuration, float overlap, Ease.Func fadeOutFunc = Ease.Func.QuadOut, Ease.Func fadeInFunc = Ease.Func.QuadOut)

Parameters

fadeDuration float Fade duration in seconds, default 1s
overlap float Overlap from -1.0 to 1.0, default 0
fadeOutFunc Ease.Func Easing function to use while fading out, default Ease.QuadOut
fadeInFunc Ease.Func Easing function to use while fading in, default Ease.QuadOut

Returns

Nothing.

Description

Set music crossfade duration and overlap.

With overlap of 0.0 the previous music will completely fade out before new music starts fading in.

With overlap of 1.0 the previous and new music will fade at the same time.

With overlap of -1.0 the previous music will fade out completely, a moment a silence will follow, and then the new music will start fading in.

Example

void PlayMusic(AudioAsset newMusic) {
    float fadeDuration = 1.0f;
    float fadeOverlap = 0.5f;
    Ease.Func fadeOutFunc = Ease.Func.QuadOut;
    Ease.Func fadeInFunc = Ease.Func.QuadOut;
    RB.MusicCrossFadeSet(fadeDuration, fadeOverlap, fadeOutFunc, FadeInFunc);

    RB.MusicPlay(newMusic);
}

See Also

RB.MusicPlay
RB.MusicStop
RB.MusicVolumeSet
RB.MusicPitchSet
RB.MusicVolumeGet
RB.MusicPitchGet
RB.MusicIsPlaying
AudioAsset