上一篇主題 :: 下一篇主題 |
發表人 |
內容 |
satanupup 喜歡上這裡的冒險者
註冊時間: 2007-05-29 文章: 80
68.10 果凍幣
|
發表於: 2007-6-26, PM 9:17 星期二 文章主題: 怎麼在C++裡加音樂 |
|
|
怎麼加
背景音樂
等...程式
有範例我比較看的懂
satanupup 在 2007-6-27, PM 1:33 星期三 作了第 1 次修改 |
|
回頂端 |
|
|
yag Site Admin
註冊時間: 2007-05-02 文章: 689
2704.11 果凍幣
|
發表於: 2007-6-27, AM 1:18 星期三 文章主題: Re: 怎麼在C++裡加音樂 |
|
|
背景?是指什麼?覆蓋整個顯示區域的圖片?那就跟貼圖沒什麼兩樣,貼滿整個畫面就好。以2D來說,先貼的圖會被後貼的圖覆蓋,所以背景只要最先貼就對了。以3D來說,你發表過的那個遊戲中有用過佈告欄(BillBoard)技術,背景也用類似方式處理就對了,就是讓背景那張圖隨著鏡頭轉動而更改其座標,使其永遠面對鏡頭就ok。
音樂的話,標準C++中沒支援(也沒支援貼圖),如果是Win32 API的話,先在專案中加入winmm.lib,然後使用PlaySound()函式即可。
代碼: | // 第一個參數可以是音效檔案名稱或內定的聲音別名或程式資源
// 第二個參數只有當第一個參數是程式資源時才可以用
// 第三個參數指定第一個參數是檔案名以及非同步播放
// 非同步能讓音效檔案開始播放時立即回到程式繼續執行後續動作而不會等待音效播放完畢
PlaySound( "yoursound.wav" , NULL, SND_FILENAME | SND_ASYNC ); |
如果不會在IDE環境中加入winmm.lib的話,也可以在程式碼開頭處打上:
代碼: | #pragma comment(lib,"winmm.lib") |
|
|
回頂端 |
|
|
lsk 喜歡上這裡的冒險者
註冊時間: 2007-06-20 文章: 93
20.59 果凍幣
|
發表於: 2007-6-27, AM 1:59 星期三 文章主題: |
|
|
如果只是要固定不動的背景
就算是3d也一樣只要最先畫一張2d的圖就好囉
在rendering的世界裡最先畫的就等於會在最後面
所以在大一點的程式裡我們會把所有要畫的東西(背景、物品、角色、介面)分層
把某一層的東西全畫完之後再畫下一層
這樣就可以確保畫出來的順序
比如說:人物一定在介面的後面,背景也一定在人物的後面...
所以只要2d背景在每一個frame開始時第一個被畫就ok啦
3D更常用的是一個很大的盒子把整個世界包起來
然後在盒子的內面貼上背景圖(因為我們是站在盒子裡)
好處是這樣當你的視野變換的時候
你的背景也會跟著動
還有一種更高級的是
背景天空用一個像巨蛋的屋頂的東西蓋著(我們叫他skydome或skybox)
也就是一個圓弧的多面体
這樣的天空會有弧度 更逼真~ |
|
回頂端 |
|
|
satanupup 喜歡上這裡的冒險者
註冊時間: 2007-05-29 文章: 80
68.10 果凍幣
|
發表於: 2007-6-27, PM 1:18 星期三 文章主題: Re: 怎麼在C++裡加音樂 |
|
|
YAG你可以給我你的MSN嗎 |
|
回頂端 |
|
|
yag Site Admin
註冊時間: 2007-05-02 文章: 689
2704.11 果凍幣
|
發表於: 2007-6-27, PM 3:42 星期三 文章主題: Re: 怎麼在C++裡加音樂 |
|
|
satanupup 寫到: | YAG你可以給我你的MSN嗎 |
嗯?難不成你想要追我嗎?(羞)
呵呵,我不搞gay的喔
你要PO這篇還不如直接把你的MSN丟到我私人訊息中比較快
我看到就可以加你了,省得我再回一次信
我把MSN丟你私人訊息囉 |
|
回頂端 |
|
|
snowmhiau 常駐此論壇的衛士
註冊時間: 2007-06-09 文章: 116 來自: KEELONG 692.99 果凍幣
|
發表於: 2007-6-28, AM 10:24 星期四 文章主題: Re: 怎麼在C++裡加音樂 |
|
|
yag 寫到: | satanupup 寫到: | YAG你可以給我你的MSN嗎 |
嗯?難不成你想要追我嗎?(羞)
呵呵,我不搞gay的喔
|
噗噗 板大還真受歡迎阿@@"
來亂滴。。。。。
乖乖的 看我的 JAVA 去ˊˋ" |
|
回頂端 |
|
|
satanupup 喜歡上這裡的冒險者
註冊時間: 2007-05-29 文章: 80
68.10 果凍幣
|
|
回頂端 |
|
|
|