【问题标题】:Play fmod event sounds in 3D以 3D 形式播放 fmod 事件声音
【发布时间】:2011-07-05 16:12:54
【问题描述】:

我有一个名为 Numbers 的活动。在 Fmod Designer 中,事件根据 listenerAngle 播放不同的数字。当我将此事件放置在 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);

非常感谢您的帮助!谢谢!

【问题讨论】:

    标签: iphone fmod


    【解决方案1】:

    也许您的“数字”事件是 2D 的?你能检查并确保它是 3D 的吗?

    【讨论】:

    • 声音是 3D 的,但我必须添加这些行,现在它可以工作了:eventpos.x = xPos; eventpos.z = yPos;结果 = 事件->set3DAttributes(&eventpos2,&vel); ERRCHECK(结果);
    【解决方案2】:

    我添加了一些行并让它工作。我必须将事件放置在 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);
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多