fmodex 3d问题

时间:2012-10-05 08:56:22

标签: 3d distance

我最近尝试在我的OpenGL程序中使用fmodex 3D声音库,但我遇到了一些问题..我在我的3D世界中放了一个扬声器,但声音不会衰减,无论怎么样光源和相机之间的距离很远。 我还有这种感觉,当我移动相机时,声音在我的2个扬声器之间切换(左右),我不知道这是否有意义!

这里有一些代码:

SoundManager.h

FMOD_SYSTEM *system;
std::vector<Sound*> sounds;
FMOD_VECTOR listenerp;
FMOD_VECTOR velocityp;
FMOD_VECTOR forwardp;
FMOD_VECTOR upp;


//initialisation
FMOD_System_Create(&system);
FMOD_System_Init(system, 32, FMOD_INIT_3D_RIGHTHANDED, NULL);


//update
FMOD_System_Set3DListenerAttributes(system,0, &listenerp, 0, &forwardp, &upp);
FMOD_System_Update(system);




Sound.h
FMOD_SOUND *son;
FMOD_SYSTEM* system;
FMOD_CHANNEL * channel;
FMOD_VECTOR position;
FMOD_VECTOR velocity;

//creating sound
FMOD_RESULT resultat = FMOD_System_CreateSound(system, "data/sounds/forest.wav",     FMOD_3D, 0, &son);

 //playing sound
    FMOD_System_PlaySound(system, FMOD_CHANNEL_FREE, son, true, &channel);
    FMOD_Channel_Set3DAttributes(channel,&position, 0);
    FMOD_Channel_SetPaused(channel,false);

我正在更新相机的位置和每帧的来源。如果有人有想法我会非常感激!! :)

0 个答案:

没有答案