LinuxでもSE(効果音)が出るようになった
Linuxでも効果音が出るようになった
line回りのタイミングを変えたら成功。
そのかわり、発生が遅い。Windowsでは問題ないけど、Linuxだと0.3秒くらい遅い。
これVM(VirtualBox)使ってるからかもしれない。ホストOSでゲストOSのサウンドをミキシングする必要があるからバッファとしてそれくらいは必要になるのだと思うことにして無視することにする。
この辺のタイミングはLinuxもってる人に確認してもらうしかないなぁ。
Macは音声未対応ということにしておくしかないか
あとはMacでの音声が出ない件だが、JavaSoundは1.3のころからある古のAPI。SunのVM以外まともに動かないとするとほかにも違うところはたくさんあるかもしれない。となると、Webアプリにおいても運用環境がx86のGNU/LinuxでSunのVMだとしたら、Unix系であるMacOS X上で開発するより同じSunのVMでWindows上で開発するほうが親和性は高い可能性がある。実際今回のライブラリはLinuxのほうがWindowsと互換性が高いわけで。
一部の小さい再生時間のOggVorbisがデコードできない
短い再生時間(1秒以内とか)のOggVorbisのファイルのデコードに失敗するのは使用しているライブラリであるVorbisSPIのバグのため、自分のほうでは修正は不可能っぽい。効果音はShinGL3と同様にOggは非対応にしたほうがよいかな。とりあえず非推奨ということにしておこう。
1.03リリース
というわけで1.0.3を公開。
http://shin.cside.com/product/shingl4/index.htm
サンプルプログラムはリソースファイルとして画像やサウンドのファイルをjarの中に埋め込んだ。おかげでサンプル自体は実行可能jarファイルのみに。NetBeansならばソースフォルダに適当に放り込むだけ。javaファイルならばコンパイルされてjarの中に入りますが、それ以外はリソースとしてそのままディレクトリ構成を持って配置されます。今回からはサンプルプログラムのsrcフォルダにリソースファイルがあるはず。ShinGL4Sample.jarファイルをzipで解凍してソースの攻勢と見比べるとどのようになっているかがわかると思う。
あと、OSが32bitなのか64bitなのか判別する方法がわからなかったので、バッチを分けることにした。WSHでさくっとわかる方法はあるのだろうか。あるならそれでやりたいところではあるが。
一番期待していなかったLinuxでもゲームがそのまま動くってのは面白いね。