2007/4/13

“とれたて”とfoxTexture  電波ゆんゆん
てった氏が
とれたてVRMの技術的な仕組みに注目している今日この頃

SKY & ICE / 残念 より
と書いておられたので、サラッと説明してみるテスト。何のことはない。ただの劣化版RSSリーダーみたいなモンなんだけど。

*     *     *

とりあえず、話題を“ネットVRM界隈ホットエントリ”に絞りますが。元ネタになっているのは、言うまでもなくはてなブックマークですね。てった氏の言う「ブックマーク3つでホットエントリーになる仕組み」は、はてなブックマークの機能であって、“とれたてVRM”の機能ではありません。

さて、現時点で[VRM]タグがつけらたホットエントリはここで知ることが出来ます。言うなれば、コレがとれたての“生”状態です。ただ、好みにもよると思いますが、この状態だと面白みに欠けるので、ちょっと料理してやります。

http://b.hatena.ne.jp/t/vrm?mode=rss&sort=hot&threshold=3

上記URLから、最新15コの[VRM]タグ付きホットエントリをXMLで得ることが出来ます。XMLなので、XMLパーサーを使うと、楽チンに如何様にも料理できます。とれたてでやっていることは、箇条書きにすると以下のような感じになります。

・とれたての“ホットエントリ”も、XHTMLになっていて、XMLパーサーで読めるようになってます。
・はてなのXMLのlink要素(=ブックマークされたURL)を取り出し、とれたてのXMLのa要素(掲載済みURL)に含まれるかを調べます。
・とれたて側に同じURLがなかったら、一時ファイルにこれを書き加えます。これがとれたてのホットエントリに掲載される瞬間です。
・この時、同時にNewマーク、その日の日付、ブックマークページへのリンクを書き加えます。
・はてなのXMLのlink要素を読みつくすまでこれを繰り返します。この時点で一時ファイルには、「とれたてには未掲載で、はてな側に掲載されていたもの」だけがあることになります。
・次に、とれたてのXHTMLを上から順に読んで、一時ファイルに書き加えていきます。これを、はてなのXMLから得た新着数ととれたてのXHTMLから得た数の合計が一定数(現在は20)になるまで繰り返します。
・この時点で、一時ファイルには、上の方に新たにホットエントリになったもの、下の方に以前からホットエントリだったもの、が書かれていることになり、その総数だけが以前と同じになります。見た目的には下方向にスライドしたような感じ。
・一時ファイルをとれたてのXHTMLと差し替えます。これで完了。

と、こんな感じ。はてな側XMLの掲載順序を単純に反映していないのは、はてなブックマークのホットエントリページは、そのソート(並び順)が、ホットエントリ化した日付ではなく、そのURLが最初に誰かにブックマークされた日付に因るからです。上記のロジックを回しているので、とれたてのソートは、ホットエントリ化した順番に並び替えられます。エントリ毎の日付も、最初にブックマークされた日付ではなく、ホットエントリ化した日付(厳密には、とれたてがそれに気づいた日付)になります。

察しの良い人は、これが非常に大雑把なロジックであることに気がつくかも知れません。アレはどうすんだ、とか、コレはどーなるんだよ、とか。いや、いいんですよ別に。目的は、違った雰囲気の中ではてなブックマークのホットエントリを読むことになるのであって、その情報を正確に引き出すことではないので。と、エクスキューズ。

その他の機能(タグ取り合戦とか、殿堂とか)も、だいたい同工異曲です。自分的に気に入っているのは“最近のネットVRM界隈では…”です。要するに、直近の[VRM]タグが付けられたブックマークを片っ端から調べて(といっても、2つのRSSにアクセスすれば事足りるんですが)そこに3回だったか4回だったか以上登場するタグを抽出してるだけ。でも、意外にその瞬間のネットVRM界隈の流行をちゃんと反映してるでしょ?

*     *     *

以上は余談で、ここからが本題です。

同じようなことを“foxTexure”とやらでやってみたらどうです?ってのがボクからの提案。fox氏車両テクスチャー公開ページは、ソースを見る限り結構綺麗な整形式で書かれているので、ちょっと手を加えてやれば、機械的に読めると思うワケ。

で、てった氏からfox氏にお願いして、ついでにそれぞれの画像に関して、それが貼り付けられるべきベース上の“座標”を書き加えておいてもらえばいい。つまり、XMLのスキームを決めて、fox氏にそれに従ってもらう。すると、foxTextureから動的に参照できるよね。もちろん、これを使う毎にアクセスするようにしちゃうと、fox氏の使ってるWebサーバーに予期せぬ負荷をかけるかも知れないから、基本はローカルにキャッシュして、ユーザーが〔最新の情報に更新〕をトリガすると、fox氏のWebを調べにいって、差分をキャッシュに取得するようにしてやる。

KSMaster氏がはてブコメントで遠回しに指摘していたけれども、思うにfoxTextureの想定されるユーザーは、自分で車両テクスチャーを自作しないけれども方向幕の変更はやってみたい、というVRMユーザーなワケで。だとしたら、過剰気味ながらもこのくらいの面倒は見て上げないと、実際には使ってもらえないんじゃないか、とか思うのね。

過剰な面倒の分だけ、てった氏もfox氏も手間を背負い込むことになるんだけれども、これで利用者が増えれば、てった氏は鼻が高いだろうし、ユーザーが増えればfox氏のところに自作テクスチャーを提供しようとする人も増えて、良いフィードバックが回るんじゃないか、と思うんだけども。

公開された0.8.0.5を見ると、既に座標データ等はXML形式で管理されているので、てった氏にはその技術力があると思うのね。で、fox氏にもこういうWeb運営のノウハウがある、と。だったらケコーンしちゃえ、ってお話。これぞまさにfoxTexture。いや、いっそのこと、foxTextureTetterに改名するとか。

と、無責任に煽っておくのでご両所におかれてはご検討あれかし。別にやらなくても文句は言わないので。
0

コメントを書く

この記事にはコメントを投稿できません




teacup.ブログ “AutoPage”
AutoPage最新お知らせ