2011-07-05 4 views
0

Numbers라는 이벤트가 있습니다. Fmod Designer에서는 listenerAngle에 따라 이벤트가 다른 숫자로 재생됩니다. 이 이벤트를 3D 공간에 배치 할 때 다른 소리를들을 수 있기를 원합니다. 이것은 내가 지금 가지고있는 코드입니다. 그것은 단지 내 애플 리케이션에서 숫자 중 하나를 재생합니다. 내가 놓친 게 있니?fmod 이벤트 사운드를 3D로 재생

FMOD_RESULT   result  = FMOD_OK; 
    FMOD_VECTOR   listenerpos; 
    FMOD_VECTOR   forward   = { 0.0f, 0.0f, 1.0f }; 
    FMOD_VECTOR   up    = { 0.0f, 1.0f, 0.0f }; 
    FMOD_VECTOR   vel    = { 0.0f, 0.0f, 0.0f }; 

    result = group->getEvent("Numbers", FMOD_EVENT_DEFAULT, &event); 
     ERRCHECK(result); 

    listenerpos.x = 0.436243; 
    listenerpos.y = -0.43643; 
    listenerpos.z = -6; 

    result = eventSystem->set3DListenerAttributes(0, &listenerpos, &vel, &forward, &up); 
    ERRCHECK(result); 

도움말에 감사드립니다. 감사!

답변

0

몇 줄을 추가하여 작동 시켰습니다. 3D 세계에서 이벤트를 개최해야했습니다.

FMOD_RESULT result = FMOD_OK; 
FMOD_VECTOR listenerpos = { 0.0f, 0.0f, 1.0f }; 
FMOD_VECTOR eventpos  = { 0.0f, 0.0f, 1.0f }; 
float DISTANCEFACTOR   = 2.0f; 

result = group->getEvent("Numbers", FMOD_EVENT_DEFAULT, &event); 
ERRCHECK(result); 

listenerpos.x = 0; 
listenerpos.y = 0; 
listenerpos.z = 0;  

result = eventSystem->set3DListenerAttributes(0, &listenerpos,NULL,NULL,NULL); 
ERRCHECK(result); 

eventpos.x = xPos; // Object's x position on iPhone I move around 
eventpos.z = yPos; 


result = event->set3DAttributes(&eventpos2,&vel); 
ERRCHECK(result); 

result = eventSystem->update(); 
ERRCHECK(result); 

result = ballEvent->start(); 
ERRCHECK(result); 
0

"숫자"이벤트가 2D입니까? 3D인지 확인하고 확인할 수 있습니까?

+0

사운드는 3D이지만이 라인을 추가해야만 작동합니다 : eventpos.x = xPos; eventpos.z = yPos; result = event-> set3DAttributes (& eventpos2, &vel); ERRCHECK (결과); –