2017-04-11 22 views
1

我在處理中爲我的遊戲導入音頻時遇到了一些問題。我正在使用處理聲音庫,但我無法設法成功加載音頻文件。在處理中導入聲音的問題

int scl = 20; 
PImage playerPupper; 
SoundFile inGameMusic; 
SoundFile mainTitleMusic; 
PFont titleFont; 
PFont bodyFont; 
int currentScene; 


void setup(){ 
    fullScreen(); 
    player = new Player(new PVector(scl*2, height/2), new PVector(scl*2, scl*2)); 
    frameRate(24); 
    inGameMusic = new SoundFile(this, "SoundAssets/Music/Dogstorm.mp3"); 
    mainTitleMusic = new SoundFile(this, "BloodyTears.mp3"); 
    titleFont = createFont("Fonts/PixelByzantine.ttf", 64); 
    bodyFont = createFont("Fonts/HelvetiPixel.ttf", 32); 
    currentScene = 1; 
} 

我並沒有與字體的問題,但每次我運行程序,試圖在音效檔對象執行任何方法使其崩潰。如果我只是實例化它們並沒有對它們運行的​​任何方法,程序運行,但是當我關閉它,我得到在控制檯以下消息:

Error: Soundfile doesn't exist. Pleae check path 
ERROR: /node/free: Node id -1 out of range 
ERROR: /node/free: Node id -1 out of range 

我已經嘗試過把他們從自己的文件夾,並將它們放在與處理文件相同的位置,但它似乎不起作用,不知道問題可能是什麼?

目錄結構:

Directory structure

+1

您正在爲兩個聲音文件使用兩個不同的路徑。你可以發佈你的目錄結構的截圖嗎?您是否正在使用Processing IDE來運行它? –

+1

是的,不同的目錄是因爲我想測試是否將音頻放在與處理文件相同的位置,但它似乎沒有任何區別。我使用Visual Studio編輯代碼和Processing IDE來運行它。我在帖子底部發布了圖片鏈接(「目錄結構」),因爲我沒有足夠的積分來嵌入它。 :c –

+1

而不是自己放置文件,請嘗試通過處理編輯器添加文件。我的猜測是,它期望它們在'data'子目錄中。 –

回答

1

就像我在我的評論說,在處理編輯器正在尋找data子目錄中的文件。由於您自己放置它們,因此您沒有將它們放在data子目錄中,因此Processing無法找到它們。

要解決此問題,您可能需要手動將文件移動到一個data子目錄,或通過加工編輯器,將替您添加。

通常我會說使用兩個不同的編輯器來編輯相同的代碼是個壞主意。他們每個人都會有不同的規則和期望,所以最好堅持一個。