無題
ふにゃさんの軽量化を進めつつ計量化で問題が起きていないかチェックしていたら、バグっぽいものに遭遇しました。
私自身が作ったステージではないのでもしかしたらそういうステージだったのかもしれませんが、バナナを全部取っていないのにステージクリア扱いになってしまったのです。
とりあえず原因として思い当たる節があるのでちょっと検証用のステージを作っています。
ふにゃさんの軽量化を進めつつ計量化で問題が起きていないかチェックしていたら、バグっぽいものに遭遇しました。
私自身が作ったステージではないのでもしかしたらそういうステージだったのかもしれませんが、バナナを全部取っていないのにステージクリア扱いになってしまったのです。
とりあえず原因として思い当たる節があるのでちょっと検証用のステージを作っています。
早速VB2008でIf文とSelect文による分岐の比較をしようと65536分岐させてみたのですが、なんだか動かなくなりました。
1個の分岐なら10万回繰り返しても平気だったんですが、不思議なものですね。
もしかしたら予期せず無限ループができてしまったとか、最適化なしにしたからものすごく非効率的なコードができてしまったとか、そのあたりでしょうか。
最適化ありにしたら必要以上にコードが削られる気がするんですよね…。
なにやら久々にうちのサイトがプログラミング系の掲示板から参照されておりました。
私のサイトでもまだ役に立つことがあるんですかね。
最近は何か独創的っぽいことを考えてもどうせ誰かが先にやってるんだろうなって気分になってやる気をなくしておりました。
確かに私は今はアンパンマンばっかり見ておりますがアンパンマン関連でもプログラムは作っているわけですし、アンパンマンのデータとか自作のゲームとか以外でもまだ発信できる何かがあるはずだと思いました。
ロクヨンが起動しなくなりました…。
爆ボンのフルパワー動画にカード0枚プレイの現状もくっつけようかと思ったのですができるかどうか…。
せっかくなのでNeoMuplもうちょっと改良することにしました。
前からMIDIが聞こえないということがよくあったので、それに対してある程度の対策を取ろうと思いまして。
うまく再生されない理由としては以下の2つが考えられます。
1.以前の不適切な演奏状態を引き継いでしまう(一部の音が消える)
2.すぐに演奏開始されず一部のMIDIメッセージが無視される
これらを解消するため、MIDIリセットを入れたり、準備時間の後再生開始する方法を作ることにしています。
NeoMuplの起動時に例外が起きることがある問題を対策していました。
例外をキャッチしたらメッセージを表示して問題のクラスを何もしないクラスに差し替えるだけですが、ちょっとは不安感が払拭されるものと思います。
でもこの問題自体不定期に起こるので、このバージョンの公開はしばらく先になると思われます。
ボンバーマンの絵を描いてました。
手足が丸くて短い爆ボン仕様なー。
ふにゃさんのほうは無駄なコードを省いて軽量化&表面化しにくいバグの追放作業。
地味な作業ではありますが地味に実行ファイルが小さくなっていたりまずい実装を見つけたりしております。