ひびろぐ ver.2

Google検索したときの見た目を考慮してブログ名を変更してみた。馬鹿かと阿呆かと。

Archive for 6月, 2007


画像ギャラリーcgiとsed

1つ前のエントリを作るときに、せっかくだから画像ギャラリーcgiを導入してみた。いずれはこの手のソフトで満足のいくものを作りたいという欲望があるんだけど、とりあえず出来合いででっち上げ。

使ったのはpyxy-galleryというモノ。(galleryをIE6で開いたらブラウザが逝ったという話があるので注意。IE7とFF2で普通に見られますが。)php+ajaxという、ナウなヤングにバカウケの代物です。なんか2.0とかいう最新版もbeta公開されているんだけど、2.0b+lightbox2で躓いたため1.2+lightbox1.5を導入。サムネイル画像の生成は動的くさい。いっそのこと勝手にサムネイルを保存されたほうが幸せな気がする。

あと、流石にオリジナル写真はでかすぎるので、画像の一括サイズ変換をするためImageMagic(convert)を利用。そのついでにsedの使い方をちょっとだけ覚えてみた。FreeBSDの標準sedはGNUsedじゃないので正規表現「¥+」でこけた。gsedを入れて幸せになった。はじめからperlでやればよかった。


画像管理ソフトは自分の納得のいくものが作りたいけどちょっと時間が足らん。

っつーか、このギャラリー設置のために結局二時間くらい消費してしまったので、その他のやりたかった作業ができていません。

 う ぼ あ。

CUDA実験用に新しいPCを導入したので写真をUP

こんなん

DELLのPrecision490。NシリーズというOSなしの怪しいモデル。

どうやらBTXっぽい。なんとかっこいい構造。

ちなみにGPUはQuadroFX4600。ちゃんとGeForce8世代。

写真原本は流石にでかいので25%に縮小してみた。


CUDAがRHEL4対応だったので、とりあえずCentOS5を投げ込んでみた。まだ設定終わってません。

続きは明日がんばろう。

未踏ソフトウェア - イベント案内 | ESPer2007

未踏ソフトウェア - イベント案内 | ESPer2007

とりあえず参加申し込みしといた。

授業料免除申請

7戦7連勝。

ImpressかPowerPointをハックさせろ

ネタプログラムがしたいのに、資料がナサスギて何もできねえ。


くそったれーーーーーーーー!

関数型・手続き型

Functioal Programming IAT

あなたの関数型指数は -0.260845691175105 です。正が関数型、負が手続き型です。


最後に「関数型と手続き型どっちが好きか」っていう質問が出るんだけど、アレでどんだけ持っていかれるんだろうね。

あと、最初ルールを勘違いしてミスしまくった。わかりにくい。

オートマトンと格闘ゲームのコマンド入力

元ネタ?はところてんの日記

昔格闘ゲームもどきを作っていたときにEBA先輩に教えてもらった話なんだけど、(非決定性有限)オートマトンが格闘ゲームのコマンド認識に使えるというお話です。


とりあえず、オートマトンについてはWikipediaでググレ。要するに、「現在の状態」を持っていて、「外から入力を受ける」ことができて、「状態と入力によって新しい状態への遷移や出力を行う」、って感じかな。

有名な「波動拳コマンド」(下・斜め前下・前。右を向いているならば下・右下・右。236。)のオートマトン(の状態遷移図)はこんな感じ↓

オートマトンと格闘ゲームのコマンド入力:波動拳簡易バージョンこんな。


ただし、これはもっとも単純化した例です。もしこれを1フレームごとに処理したとすれば、誰も波動拳を撃つことはできないでしょう。

何故ならば、「下と右が同時に押されている」状態から「右とパンチが押されている状態」へ1フレームで遷移しなくてはならないわけですが、60FPSのゲームであればそれを0.16秒できっちりやらなくてはならないわけです。おそらくほとんどの場合に状態Bから開始へ戻ってしまうことになるでしょう。

というわけで、実際にはもっと細かく制御する必要があります。例えばこんな感じに↓

オートマトンと格闘ゲームのコマンド入力:波動拳詳細バージョン詳細。

適当に書いたのでこれでも穴がありそうだけど、かなりマシになりました。

何気に状態が1つ増えていて、最後の右とパンチが同時じゃなくてもOKになりました。サムスピだかKOFだかなんだか忘れたけど、「少し歩いてからボタンを押しても技が出る」なんてシステムがありましたが、これで再現できますね。1秒は長いかも知れんけど。

さて、実際の格ゲーでは更に複雑化します。スト2じゃなくて竜虎の拳だったら気力ゲージがないと技が撃てないーーいや、威力が下がるだけだっけ?ーーし、キャラが空中にいるかどうかで技が変わるかもしれませんし、実は同じ十字キー入力をもう一回繰り返すと超必殺技かもしれません。

モノによっては受理の後に判定を入れることで変化を与えられますが、オートマトンそのものの数を増やして優先順位をつけるのが妥当な対策でしょうか。私は「真空波動拳の判定は波動拳の先にやっておき、発動したら波動拳のオートマトンは初期化する」みたいなことをやった記憶があります。


ついでに言ってしまうと、格ゲーであればコマンド入力だけではなくてキャラクターの状態遷移にも応用できます。っていうか、思いっきり状態遷移と言ってるわけで、状態遷移図を書けば幸せになれるよ!

オートマトンと格闘ゲームのコマンド入力:キャラクター全体全体。

ジャンプとか入れてないのにこの汚さというのはちょっとよろしくないけど、まあこんなもんです。



非決定性の意味がない件。

実際には決定性有限オートマトンがたくさんあって、イベントに反応して遷移開始しているわけです。んで並列に処理しまくった上で、あるタイミングで他のオートマトンを一斉に初期化するとかいうある意味キモイ?イベントが起きるわけだ。例えば波動拳が受理されたら真空波動拳が破棄されたみたいな。協調処理とするオートマトンみたいな?なんか微妙にエージェントっぽいな。

実験機が退院した

先日入院したM/Bが退院しました。

っつーか木曜の夜に帰宅したら不在表があったので土曜の午前中に指定。


無事直ったようです。普通に起動できます。なんと素晴らしい。

勢い余ってFedora7をぶち込んだけど、まったく持って使い道がない。


さて、この実験機どうしようかなあ。

驚くほど才能がない件

FMトランスミッタをACアダプタ化しようと思って、安定した電圧が確保できる回路を組んだ。

ちなみに使ったFMトランスミッタはこれ。単4乾電池2本。ガチで3V近く消費するのか、充電電池ではうまく動きません。


FMトランスミッタACアダプタ化こんなん。

結果としては、駄目だったっぽい。驚くほど電子工作の才能がありません。むしろ無いのは知識だけどな!

いや、電圧は確かに安定して取れてるんだ。でも全部無駄。FMトランスミッタ側の改造が失敗しているのかなあ……?

物は試しということで別のFMトランスミッタも入手してあるんだけど、こっちは4.5V 120mAのアダプタ対応って最初から書いてある。そんな微妙なものは持っていないが、今回作ったヤツが流用できそう。端子が合わないけど。


ところで、6Vを3Vにしたら結構熱が出た。放熱板がないと死にそうな予感。4.5Vでどうなるかは計算がわからんのでさっぱり。

はじめてのJava

perlとPHPに慣れ親しみすぎて何もかもが面毒瀬ええええええええええええええええええええええええええええええええええええええええええええええええええええええええええええええええええええええええええええええええええええええええええええええええええええええええええ絵えええええええええええええええええええええええええええええええええええええ