DXライブラリでBGMが流れません

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
アバター
ptolemy
記事: 258
登録日時: 10年前

DXライブラリでBGMが流れません

#1

投稿記事 by ptolemy » 10年前

DXライブラリでBGMが流せません。

フラグを使って流すとノイズが入り、流れません。

それは、ジャンプ音などを流しているからなのでしょうか?

なぜ流せないのかが分からないです。

コード:

int sound1,sound2;

sotnd1=LoadSoundMem("BGM/サウンド.wav");
sound2=LoadSoundMem("効果音/ジャンプ.ogg");

if(flag==1){
PlaySoundMem(sound1,DX_PLAYTYPE_LOOP);
}

if(Jを押したら){
PlaySoundMem(sound2,DX_PLAYTYPE_BACK);
}
のような感じです。

説明が下手でわかりずらいですが宜しくお願いします。
最後に編集したユーザー ptolemy on 2013年12月16日(月) 00:27 [ 編集 1 回目 ]

アバター
みけCAT
記事: 6734
登録日時: 13年前
住所: 千葉県
連絡を取る:

Re: DXライブラリでBGMが流れません

#2

投稿記事 by みけCAT » 10年前

if文の中で代入を行い、常に真になっているため、おそらく毎フレーム最初から再生しているのでしょう。
複雑な問題?マシンの性能を上げてOpenMPで殴ればいい!(死亡フラグ)

アバター
ptolemy
記事: 258
登録日時: 10年前

Re: DXライブラリでBGMが流れません

#3

投稿記事 by ptolemy » 10年前

すみません。
「=」は、ミスでした。

パソコンの方のプログラムの方は、「==」にしっかりなっていました。

いったい何が原因なんでしょうか?

アバター
みけCAT
記事: 6734
登録日時: 13年前
住所: 千葉県
連絡を取る:

Re: DXライブラリでBGMが流れません

#4

投稿記事 by みけCAT » 10年前

・変数名のスペルミスで、関係ないハンドルを指定していませんか?
・音声ファイルは壊れていませんか?
 ・Log.txtにエラーは出ていませんか?
 ・VLCメディアプレイヤーやAudacityなど、他のソフトでは正常に再生できますか?
・flagが立ちっぱなしのせいで、毎フレーム再生されているということはありませんか?
複雑な問題?マシンの性能を上げてOpenMPで殴ればいい!(死亡フラグ)

Rittai_3D
記事: 525
登録日時: 11年前

Re: DXライブラリでBGMが流れません

#5

投稿記事 by Rittai_3D » 10年前

コード:

if( flag == 1 ) {
    if( CheckSoundMem( sound1 ) == 0 ) {
        PlaySoundMem( sound1, DX_PLAYTYPE_BACK ) ;
    }
}
として見てください。解説は不要だと思いますので、省略します。

恐らく、みけCATさんのおっしゃる通り、毎フレーム再生されるためだと思います。

これでダメなら
みけCAT さんが書きました:・変数名のスペルミスで、関係ないハンドルを指定していませんか?
・音声ファイルは壊れていませんか?
 ・Log.txtにエラーは出ていませんか?
 ・VLCメディアプレイヤーやAudacityなど、他のソフトでは正常に再生できますか?
だと思います。
初心者です

アバター
ptolemy
記事: 258
登録日時: 10年前

Re: DXライブラリでBGMが流れません

#6

投稿記事 by ptolemy » 10年前

3D 3Dさん、ミケCATさんありがとうございました。

フラグが立ちっぱなし立ったみたいです。

本当にありがとうございました。

閉鎖

“C言語何でも質問掲示板” へ戻る