Audio: Make cheap OpenAL pitch shifting a config option
This commit is contained in:
parent
47d96bd21e
commit
ac35d4214e
|
@ -82,6 +82,8 @@ mkxp reads configuration data from the file "mkxp.conf" contained in the current
|
||||||
| defScreenH | int | 480 | Height the game window starts in |
|
| defScreenH | int | 480 | Height the game window starts in |
|
||||||
| fixedFramerate | int | 0 | FPS will be fixed to this amount. Ignored if 0. |
|
| fixedFramerate | int | 0 | FPS will be fixed to this amount. Ignored if 0. |
|
||||||
| solidFonts | bool | false | Don't use alpha blending for fonts |
|
| solidFonts | bool | false | Don't use alpha blending for fonts |
|
||||||
|
| fastSoundPitch | bool | true | Use cheap OpenAL pitch shifting for sounds (SE) |
|
||||||
|
| fastMusicPitch | bool | false | Use cheap OpenAL pitch shifting for music (BGM/BGS/ME) |
|
||||||
| gameFolder | string | "." | mkxp will look for all game related files here |
|
| gameFolder | string | "." | mkxp will look for all game related files here |
|
||||||
| allowSymlinks | bool | false | Allow symlinks to be followed in the game folder. |
|
| allowSymlinks | bool | false | Allow symlinks to be followed in the game folder. |
|
||||||
| customScript | string | "" | Execute a raw ruby script file instead of an RPG Maker game. |
|
| customScript | string | "" | Execute a raw ruby script file instead of an RPG Maker game. |
|
||||||
|
|
|
@ -26,6 +26,7 @@
|
||||||
#include "intrulist.h"
|
#include "intrulist.h"
|
||||||
#include "filesystem.h"
|
#include "filesystem.h"
|
||||||
#include "exception.h"
|
#include "exception.h"
|
||||||
|
#include "config.h"
|
||||||
#include "al-util.h"
|
#include "al-util.h"
|
||||||
|
|
||||||
#include <QByteArray>
|
#include <QByteArray>
|
||||||
|
@ -300,7 +301,8 @@ struct SoundEmitter
|
||||||
AL::Source::setVolume(src, _volume);
|
AL::Source::setVolume(src, _volume);
|
||||||
|
|
||||||
#ifndef RUBBERBAND
|
#ifndef RUBBERBAND
|
||||||
AL::Source::setPitch(src, clamp<int>(pitch, 50, 150) / 100.f);
|
if (shState->config().fastSoundPitch)
|
||||||
|
AL::Source::setPitch(src, clamp<int>(pitch, 50, 150) / 100.f);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
AL::Source::play(src);
|
AL::Source::play(src);
|
||||||
|
@ -761,7 +763,8 @@ private:
|
||||||
needsRewind = false;
|
needsRewind = false;
|
||||||
|
|
||||||
#ifndef RUBBERBAND
|
#ifndef RUBBERBAND
|
||||||
AL::Source::setPitch(alSrc, pitch);
|
if (shState->config().fastMusicPitch)
|
||||||
|
AL::Source::setPitch(alSrc, pitch);
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -39,6 +39,8 @@ Config::Config()
|
||||||
defScreenH(480),
|
defScreenH(480),
|
||||||
fixedFramerate(0),
|
fixedFramerate(0),
|
||||||
solidFonts(false),
|
solidFonts(false),
|
||||||
|
fastSoundPitch(true),
|
||||||
|
fastMusicPitch(false),
|
||||||
gameFolder("."),
|
gameFolder("."),
|
||||||
allowSymlinks(false)
|
allowSymlinks(false)
|
||||||
{}
|
{}
|
||||||
|
@ -59,6 +61,8 @@ void Config::read()
|
||||||
READ_VAL(defScreenH, Int);
|
READ_VAL(defScreenH, Int);
|
||||||
READ_VAL(fixedFramerate, Int);
|
READ_VAL(fixedFramerate, Int);
|
||||||
READ_VAL(solidFonts, Bool);
|
READ_VAL(solidFonts, Bool);
|
||||||
|
READ_VAL(fastSoundPitch, Bool);
|
||||||
|
READ_VAL(fastMusicPitch, Bool);
|
||||||
READ_VAL(gameFolder, ByteArray);
|
READ_VAL(gameFolder, ByteArray);
|
||||||
READ_VAL(allowSymlinks, Bool);
|
READ_VAL(allowSymlinks, Bool);
|
||||||
READ_VAL(customScript, ByteArray);
|
READ_VAL(customScript, ByteArray);
|
||||||
|
|
|
@ -44,6 +44,9 @@ struct Config
|
||||||
|
|
||||||
bool solidFonts;
|
bool solidFonts;
|
||||||
|
|
||||||
|
bool fastSoundPitch;
|
||||||
|
bool fastMusicPitch;
|
||||||
|
|
||||||
QByteArray gameFolder;
|
QByteArray gameFolder;
|
||||||
bool allowSymlinks;
|
bool allowSymlinks;
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue