メインメニューを開く

差分

MonoGameでBGMを再生する

1,110 バイト追加, 2016年3月30日 (水) 09:23
編集の要約なし
ただしSoundEffectクラスを使う方法ではMonoGame Pipelineで生成されるxnbファイルがアホみたいに巨大になる。約3MBのmp3ファイルが約30MBのxnbファイルになるくらい。MonoGame PipelineでQualityプロパティをBestからLowに変えてもファイルサイズに変化はない。
====回避策:音質を落としたwavを使う====
ファイルがデカイ理由はMonoGame Pipelineにmp3を食わせると最高音質でwavに変換しているためのようだ。
事前に音質を落としたwavファイルをMonoGame Pipelineに食わせると良いようだ。
 
===問題点:ARM64でクラッシュする===
MonoGame 3.3および3.4かつ[[Android]]かつ[[ARM64]]でSoundEffectクラスを使おうとするとクラッシュする。
 
====回避策2:MonoGame 3.5以降を使う====
この問題はMonoGame 3.5で修正されている。
 
====回避策2:ARM v7aを使う====
MonoGame 3.5にアップデートするとこの問題は治るが、今度は[[3DCG]]の[[レンダリング]]周りで従来と異なる挙動になるなど不用意にアップデートできるものではなさそうだ。
 
そのような場合はMonoGame 3.3などの古いバージョンを使い続け、そのうえでプロジェクトのプロパティから[[ARM64]]のチェックをはずして[[ARM v7a]]向けにビルドすることで回避できる。そもそも[[Android]]で[[ARM64]]を使うメリットなど何一つないと思われる上に、簡易的な[[ベンチマーク]]でサクッと測った限りでは速度的な差もない。
現状ではARM64だと[[LLVM]]での最適化も効かないので本当に何のメリットもないと思う。
==関連項目==
匿名利用者