2011-06-27 50 views
2

有沒有辦法讓fmod播放基於聲音名稱的聲音?我可以通過使用此代碼迴路出來的聲音名稱:如何在iPhone上將聲音名稱傳遞給Fmod

for (int subsoundindex = 0; subsoundindex < numsubsounds; subsoundindex++) 
    { 
      FMOD::Sound *subsound = NULL; 
      char   name[256] = {0}; 

      result = fsb->getSubSound(subsoundindex, &subsound); 
      ERRCHECK(result); 

      result = subsound->getName(name, 256); 
      ERRCHECK(result); 

     NSLog(@"SOUND NAME %s.", name); 
    } 

但玩它,我想知道在哪裏可以在這樣的代碼注入的聲音名稱:

result = fsb->getSubSound(row, &subsound); 

    ERRCHECK(result);   

    result = system->playSound(FMOD_CHANNEL_FREE, subsound, false, &channel); 
    ERRCHECK(result); 

回答

1

這是不可能的要通過名稱獲得FSB子類,必須始終使用索引。然而,有幾個選項可供選擇。

  1. 您可以創建名稱列表,然後查找名來索引(這可能會比掃描每個subsound更快。

  2. 你可以使用一個包括報頭,FSBankLib可以產生從進入FSB的名稱生成的頭文件,您可以將其用作宏的索引到子領域

  3. 您可以使用FMOD設計器,而不是聲音,使用事件,這些可以通過查找名稱

相關問題