「NeoMupl」に関する日記(12)

<前 次>

明日更新します

「NeoMupl」で、リストの整列機能をつけました。
「MusicPlayer2,3」のように追加時に同時に整列させることはできません。
また、この作業にはかなりの時間がかかるので、作業の進行状況が見えるようになっています。
さらに、追加もそれなりに時間がかかるので同じく進行状況を表示するようにしました。
あと、起動時と終了時にも結構時間がかかるので、メッセージを表示するようにしています。
と、このようにいろいろと追加したので、アップしておきました。

「質問・答掲示板」を消しました。

げっ、今日もやってない!!

「どみのベース」でmidiStreamのことが書かれていたので、検索でサンプルを探してきてダウンロードしてみました。
「NeoMupl」に使えれば、と思ったのです。
それはC++用のサンプルで、簡単なFormat0の再生だけをサポートしているものでした。
…ムリです。
「NeoMupl」で使うからには、Format1も、欲を言えばFormat2もサポートしたいのですが、Format0だけでも複雑すぎて私には解りません!
ましてやさらに複雑なFormat1やFormat2なんて…
いっそのこと先にDirectXを実装してみるか?

それでも平均点の2.7倍なんて…!

Perlがある程度使えそうな気がしたので、調子に乗ってG氏の掲示板を私にも使えるようにしようとしたんですが、さすがにだめでした。
こうなれば、不本意ながらも、使わせてくれるよう頼むか…?

「NeoMupl」、集中して作るとか言っときながら全然進みませんね…
秀丸フリー制度を使いたいので早く何か役に立つフリーソフトを作りたいんですが。

登校時、駅の自動改札機を通ろうとしたら、間違えて食堂のプリペイドカードを入れてしまいました。
入れた瞬間に気が付いたので出口にぶつかるという事態は免れられましたが、その瞬間までずっとそれが定期券だと信じ込んでいたことに驚きます。

「情報リテラシー」で、先生がいつまでたっても来ず、1時間半が無駄になりました。
私はそれ以外でも一日に平気で3時間ぐらい無駄にするのであんまり文句は言えませんが…

電気回路の試験が返ってきました。
案の定直流回路以外は全滅…(T-T
あとは単位を間違えやすい問題で単位を使い分けられていたことに2点つけられていただけ…
根本的に勘違いをしていたのが原因でした。
しかし、今回のことで大分理解が進んだような気がするので、本試験では同じミスは繰り返しません!

密かにあるページを大幅に軽くしました。

Perlの練習中

PerlのCGIを改造していました。
ここはCGI禁止なのに何故……?
深いことは気にしないでください。
Perlのことも、わかったとはいえないものの、感覚はつかんだ感じです。
1から作ることは無理にしてもある程度は改造できるようになりましたし。
でも今はレンタルサーバーにアップロードしてからテストしているのでサーバーに負担をかけてしまっているのが難点です。

「NeoMupl」をほんのわずかだけ変えました。
ほぼ何も変わっていないのでアップしていません。

ららららら~♪

とても辛い大根を食べました。
久しぶりに大根らしい大根に出会った感じです。
ニコチャン星にやってきたコマッタチャンもこれなら満足でしょう(謎

「NeoMupl」のDLLで、ファイルタイプを識別する部分を作りました。
今のところMIDIのみ判別できます。
とりあえずアップしておきました。

「注意事項」を更新しました。
これからホームページを作ろうという人以外には大して意味がありませんが。

とりあえず「ピクミン」で、三千匹ピクミンを目指してがんばっています。
全30日のうちの11日で1500匹になったからもしかしたら四千匹も夢じゃないかも・・・
その代わりオリマーは死にます。

降格規制銃

「NeoMupl」のファイルをアップしました。
何日か前の分なのですが。

昨日消えてしまったドット絵を描き直していました。
作っていて気が付いたんですが、どうも16色じゃ全然足りなかったようです。
昨日16色で頑張っていたのは一体…
今はなかなかいい感じに進んでいます。

今日は情報リテラシーが休講でした。

電気回路で試験がありました。
複素数をバリバリ使っていたのですが、なんとなく使い方を間違えていそうな気がするので、直流回路以外全滅かもしれません(もしかして直流回路も?)。

たくさんやった気が

とりあえずどこかを更新しました。
多分見つけられません。
見つけられたら報告してください。

真面目に受けているのにどうしても眠くなってしまう講義が少なくありません。
今日の熱・統計力学はその最たる例ですが、今日眠らないようには先生が言うよりも先に内容を理解するぐらいの気合で受けてみました。
するといつも来ていた激しい眠気がまったく来ないじゃありませんか。
そうです。そうだったのです!
今まで眠くなっていたのは、睡眠不足のせいでもなく、疲れていたからでもなく、ましてや講義がつまらなかったという理由でもなかったのです。
私に真面目さが足りなかっただけだったのです!
あっ、一応眠くて聞けなかった部分は後で復習していますよ。

「NeoMupl」で、リストのインポートに対応しました。
似たようなことをやっているのに微妙に違ったりしているのでなんだかとても進んだような気がします。
ただし、今回はこちらはアップしておりませんので。

オリマーいないほうが強いじゃん

「NeoMupl」のDLLで、MCIでの演奏終了後の処理を作りました。
ループ再生にも対応しています。
MIDIに限ってはループ開始位置の設定を使えるようにしようと思います。
MIDI以外でしないのはDirectXとループ位置の単位を揃えることが難しいからです。

「ピクミン」をクリアしました。
でも・・・・でも、こんなのってないよ、あんまりですよ。
160匹のピクミンを犠牲にして、やっとのことで手に入れたのが、へそくり金庫!
よりにもよってへそくり金庫!
今まで出会ったこともない強敵と戦って得られたのがカネ…
悲しすぎますよ…
オリマーはベテラン宇宙飛行士なんだから収入だって相当あるはずです。
へそくりの分ぐらい働いて稼げよ…

気分を変えて、エンディングの話でも。
最後のパーツは全色のピクミンを同じ数ずつ使って運びました。
そしてエンディングでは、今まで一番気になっていたこと、オリマーが来る前のピクミンの生活がどうだったのかがわかりました。

マルチスレッドで

「NeoMupl」のDLLでスレッド使用するようにしました。
一番手近にあるサンプルとしてyaneSDK2ndを見ながら作ってみました。
あとコールバック関数なんかもつかえると便利かな~とも思っています。

傘を持って帰ろうかと思っていたらまたなくなっていました。

M.S.BをSMASHするD.K.

「スマブラDX」で「ノーダメージクリア」のほかのボーナスは全部出しました。
「ハンマーを捨てる」や「ダメージ床でミス」のためにドンキーコングに体を張ってもらいました。

「ピクミン」でとんでもないボスに出会いました。
中ボスのいそうな場所に行って、ボス戦らしいBGMになって、どんな中ボスが待ち構えているかと注意深く入ってみると何もいない、パーツさえないので不審に思っていると、いきなり上から謎の機械とも生物ともつかぬものが降ってきて、ピクミンをプチプチプチプチ…
そして何と普通ではありえない60匹の死亡!
中ボスと言うよりは大ボスとでもいうべき強さでした(そのエリアの最後のパーツだったのもあるでしょうが)。
ピクミンから見たらオリマーってどんな生物なんだろう…

「ゼルダの伝説-時のオカリナGC」で炎の神殿をクリアしました。
訳あってゴロンの服なして進めていたのですが、裏というのもあってかなりの難易度でした。
特に高温から逃げられないボス戦では、高温による時間制限、溶岩によるダメージ、さらに久しぶりというのまで重なって、相当の苦戦を強いられました。
セーブデータに異常を起こす可能性の高い裏技を使っていたので、案の定やばいことになっていました。
ゴロンの服が入手不可能となってしまったのです。

「ゼルダの伝説-風のタクト」で2週目のデータをはじめからやり直すことにしました。
理由はゴーマの写真を撮り忘れたこと。
ガノン城で撮ったものでもOKというのをいまさら知ってももはや後の祭り…
まあ、いろいろと不満点も会ったのでよしということにしてしまいます。

「NeoMupl」のDLLを少し変えました。
使っているクラスの関数を純粋仮想関数にすることによって、実際に音楽を再生するクラスの基底クラスとし、DirectXのない環境ではMCIによる再生など、ある程度柔軟性を持たせるつもりでいます。

いろいろやった気が

「NeoMupl」の起動を早くしました。
スクロールバーの位置を合わせるために先にウィンドウを表示していたのですが、後でうまく調整するようにしたのです。
再生モードが選べるようになりました。
リストの設定ダイアログ作成しました。
機能が0ですが。
情報バーにデータを反映するようにしました。
データに情報バーの内容を反映するようにしました。
なんかいっぱいしたように見えますねぇ~。
再生機能がつかなければこれらはみんなゴミ同然です。

3限目が休講でした。
しかしいくらなんでもその連絡が前日っていうのは…
昨日は特に早く帰っていたので掲示板に載る前に帰ってしまっていたのです。
それでなくとも1週間単位でしか行動できないのに…

またまたまたアップしました(しつこい

便利なタグの使い方を見つけました。
<td>タグにnowrapをつけるとその部分は改行されなくなります。
早速トップページに使ってみましたがアップロードはしていないので効果は現れていません。

「NeoMupl」に一番肝心な「再生」メニューをつけました。
そして早速「BGMモード」メニューを使えるようにしました。
とはいっても再生そのものはまだまだできないのでチェックマークがついたり消えたりとかそのくらいですが。

ツタヤに300円も(も!?)かけて入会したんだからとことん使わないと損だ!
ということで、「交響組曲『ドラゴンクエストVI』幻の大地」を借りました(ゲームばっかりだなあ)。
ゲームのイメージを崩さずにここまでできるとは・・・・(感激)
ただ、戦闘がちょっと・・・・
「勇気ある戦い」は途中で勝手に暴走しているような感じになりますし、「魔物出現」は「魔王出現」と間違えられてるし、しかも前半と後半のつなげ方がいくらなんでも強引だし、「魔王との対決」は後半部がなんだか地味だし・・・・
ところで、カルベローナがなかったのは気のせい?
・・・・あっ、ありました。
あまりにさりげなく入っていたので気付きませんでした。

ひでまるゥ~ッ!

「NeoMupl」の再生DLLのstdafx.hにいろいろ付け加えました。
とはいってもほとんどyaneSDK2ndからのコピペですが。

高性能テキストエディタ「秀丸」をダウンロードしてみました。
シェアウェアだったので今まで敬遠していたのですが、学校にインストールしてあったのを見て、フリーソフトウェア作者だと無料らしいのを知り、ダウンロードしました。
無料で使用するためには登録が必要なのですが、そこでフリーソフトの名前がいるそうなので、「NeoMupl」にすることにしたので、完成まで登録はできなさそうです(今できているのを登録してもよかったのですが)。

またまたアップしました

「NeoMupl」で、終了時のウィンドウのサイズをセーブするようにしました。

学校の情報リテラシーの授業の空き時間に作っていた15パズルが完成しました。
これで代数の先生が言っていたことが実験できそうです。
15パズルは「ゼルダの伝説-風のタクト」でかなり鍛えられたので結構自信があります。

またアップしました

「NeoMupl」の情報バーを作りました。
各項目の設定を変更するためのコントロールの配置を行いました。
実際に設定を変更することはできません。

またまた「DataBox」の内容を引っ張り出してきます。
今回は、とことん恵まれない男"プアソン"です。

名前:
プアソン
英語名:
Poorson
登場作品:
Bomber丸World
説明:
フィールド上で対戦相手を捜し求める戦闘家。
しかし、あまりに弱いため、戦うたびに負けて所持金を失う。
そのため、金を稼ぐために誰とでも戦おうとするが、相手を選ばずに戦うため、またすぐ負ける。
悪循環のため、出会うたびに貧乏になってゆく哀れなキャラクターである。

ついには一文無しになってしまい、妻子にも失望されてしまう。
そこで主人公たちが金をやって助けてやるわけだが、その大切な金を武器屋を名乗るものに騙され、再び一文無しに戻ってしまう。
続けて娘が行方不明になり、苦労が続く。

名前は「poor(貧乏)」と「損」からきたともいわれる。

身長161cm。

「手を抜いたでしょ。実力で勝たなきゃ意味ないんです!」

いや、想像しないで

「NeoMupl」の再生用DLLを作り始めました。
こちらのほうの予定としては、

  • DirectSoundを使う
  • DirectMusicを使う
  • 圧縮Waveの再生
  • ストリーム再生の実装
  • DirectSoundが使えなければMCIを使う
てなもんです。

これに使うDirectSound/MusicのサンプルとしてyaneSDK2ndを見てみたんですが、まずコンパイルが通るかどうか確かめなければと思い、「Bomber丸World」にyaneMIDIOutputを入れて確かめてみました。
そこで、「そういえばBGMって32個で足りるのかな」と思い、使うことが決定しているBGMをいくつか列挙してみました。
ついでに曲のタイトルも考えながら。
タイトルは基本的に内容そのまんまの名前ではなくある程度アレンジしています。
その中でも最も凄すぎる名前は、「吐瀉物と排泄物」、あるダンジョンのボス音楽です。
いいんです、ボスはもっと凄いんですから。

弟が挙動不審のため警察に連行されました。
しかも身元を証明できずややこしいことになっていました。
ってかスーパーのカゴにCD入れて外歩いてたら誰でも怪しむよ、普通!

fffj

「NeoMupl」で、情報バーの大きさを変えるメニューを作りました。
実際に大きさは変わりませんが、どれを選んだかは記録されます。
これで記録項目"ShowInfoBar"は無意味になりましたが、レジストリに関する設定を変えると消えてくれます。

Javaの開発環境をダウンロードしてきました。
とりあえずネット上に転がっていたサンプルをいくつか見てみて、大体の雰囲気をつかんだ感じです。
具体的にどうコーディングするかはもうちょっと研究が必要そうです。

MP3とかWMAとか

そろそろサイトの更新期限が近づいています(自分で決めた期限ですが)。
明日明後日で更新しなければならないのですが、ネタが思いつきません。

「NeoMupl」のことですが、ここまできて根本的な問題を忘れていたことに気付きました。
音楽再生をどうするかをまだ考えていなかったのです。
前みたいにVBMP3とかMCIとかいろいろ使ってもいいんですが、できることならそのへんも自分で作りたいのです。
となれば、その構想が出来上がるまでまた開発が中断されそう…
いやいや、そんなことはありませんよ。
最悪の場合、MIDIだけをサポートすればソフトとしては出来上がるんですから。
つまり、あとは圧縮Waveをどう扱うかになるわけです

Javaについての本をもう少し詳しく読んで見ました。
ほうほう、javacを使ってコンパイルするのか。
ハイ、終わり!

ブレイザー!

「NeoMupl」でリストのロード・セーブを実装しました。
ソースをよく見ると設定クラスが使いまわされていたりします。
実はセーブを作るとき、とんでもない失敗をやらかしてしまいました。
ロードの部分をコピーしてきてそれを編集してセーブとしたんですが、そのとき、データを初期化する命令を削除し忘れていたのです。
結果、まったく内容のないファイルが生成されるという事態になってしまいました。

今日は暑かった

「NeoMupl」の設定のロード・セーブを実装しました。
レジストリによる記録とINIファイルによる記録の好きなほうで設定の保存ができます。
レジストリに記録すればINIファイルが、INIファイルで保存すればレジストリが削除されます。
それと、設定入出力クラスが、ファイルにデータがないときにエラーを起こすバグを修正しました。

「エボリューション」っていう映画を観たんですが、あれはある意味で凄いですね。
地球外生命体がどんどん進化していって巨大化するというストーリーなのですが、実はこの映画、シャンプーのCMだったのです!
ええ、2時間かけてシャンプーのCM!地球外生命体を持ち出してのCM!軍隊まで動員させてシャンプーのCM!!!
観る前から変な映画だろうとは予想していたものの、これは凄すぎます!

<前 次>