未找到Fmod常量(Fmod_HARDWARE)
Fmod constans (FMOD_HARDWARE) not found
我在Ubuntu中使用FMOD在游戏中播放声音。
我有下一个
#include "SoundEngine.h"
bool SoundEngine::initSystem()
{
System_Create(&system);// create an instance of the game engine
system->init(32, FMOD_INIT_NORMAL, 0);// initialise the game engine with 32 channels
//load sounds
system->createSound("Media/NoMoreMagic.ogg", FMOD_HARDWARE, 0, &sound1);
sound1->setMode(FMOD_LOOP_OFF); /* drumloop.wav has embedded loop points which automatically makes looping turn on, */
/* so turn it off here. We could have also just put FMOD_LOOP_OFF in the above CreateSound call. */
system->playSound(FMOD_CHANNEL_FREE, sound1, false, 0);
return true;
}
SoundEngine.h是:
#ifndef SOUNDENGINE_H_
#define SOUNDENGINE_H_
#include "FMOD/inc/fmod.hpp" //fmod c++ header
#pragma comment( lib, "fmodex_vc.lib" ) // fmod library
using namespace FMOD;
class SoundEngine{
public:
bool initSystem(void);
private:
//FMod Stuff
System *system; //handle to FMOD engine
Sound *sound1, *sound2; //sound that will be loaded and played
};
#endif /* SOUNDENGINE_H_ */
问题是找不到FMOD_HARDWARE或FMOD_CHANNEL_FREE。
有人知道他们在哪里吗?
EDIT:另一件事是,pragma注释抛出一个警告,告知忽略pragma。也许问题与语用有关?如何修复杂注?
我相信FMOD_HARDWARE来自较旧的FMOD Ex API。你在用FMOD 5吗?在我对System::createSound的调用中,我使用FMOD_DEFAULT或FMOD_CREATESAMPLE(后者将加载整个声音并在内存中解压缩,以加快播放速度),这似乎很好地使用了硬件。对于您的playSound通话,请尝试
FMOD::Channel *channel;
system->playSound(sound1, NULL, false, &channel);
相关文章:
- Fmod 函数清楚地输出一个预期的双精度值,但 if(fmod == 预期的双精度值)的计算结果不是 true
- Using google-vr from the fmod c++ api
- 如何使用 FMOD 和 C++ 显示当前音乐位置
- 我的游戏引擎的 FMOD 音频
- android.hardware.Camera 无法每隔 2 次打开一次
- 双打的 fmod 问题
- 我如何检查 - 并使用 fmod(浮点数)获取余数
- 当构造函数为私有时,我如何动态创建fmod ::声音
- 如何将"fmod()"替换为整数"mod()"函数
- 了解 std::fmod 和 std::余数
- CMake march hardware
- 没有匹配函数调用 FMOD::Studio::System::setListenerAttributes()
- 在FMOD Studio C 中保存FFT频谱
- 无法检测到FMOD中的体积
- FMOD EX内存分配问题
- FMOD对象指针
- FMOD::系统*系统;它做什么
- fmod()没有给出预期的答案
- Fmod Stream用于工作
- fmod 返回不一致的值