CANNON CAT

それとなく、現実逃避でフリーソフトで面白いゲーム まとめページをみていたらCANNON CATというゲームを見つけた。

操作感、テンポ、見た目 いずれもいい感じでおもしろい。 オススメ。
ふぁいなるがクリアできてないけど…。

3D表示な2Dゲームだが最新とは言えないノートPCでも問題なく動作。

作者のブログを見る感じ、おそらく SDL + OpenGL を使って組んである。

近頃は2Dゲームであっても3Dゲーム的に組んだ方が
派手な演出ができるわ、ハードウェアアクセラレーションの恩恵で軽快だわで
何かと良さそうだと思っていたんだけど
このゲームみて、ノートでやってみて、あぁ、やっぱり、やらなくちゃなぁ…
という思いを強くした。

暇があれば、SDL + OpenGL なゲームを組んでいきたい。
その際の参考になるページへのリンクなんかもはっていく。

そして、また、カテゴリ分け微妙…。
Develop | - | trackbacks (0)

Visual Studio Express

Visual Studio(VS) の一部無償提供が始まったそうだ。

Visual Studio .NET 2003 が theSpoke とか言うのでやたら安く買えたあたりからこの展開は読めなくもなかったが…。

VS 2005のExpress Editionは事実上,無償提供へ:IT Pro

日本語版が出たら、いちお、忘れずにダウンロードしないとなぁ。

あんまし乗り換える気も無いけど。

マイクロソフトがLinux等に驚異を感じているって事なんだろうかなぁ。

あー…記事のカテゴリ分けが微妙だ。
PC | - | trackbacks (0)

Visual Studio .NET 2003 でアセンブラ

ついでにもう少しJPEGデコードを高速化。

MPEG-2 VIDEO VFAPI Plug-In のIDCTには
MMXを使って高速化したバージョンも含まれていたので
それも使ってみることにした。

拡張子.asmのファイルはどうコンパイルするのか知らなかったが

プログラマの隠れ里 内の Assemble Programming
でやり方を理解することができた。

ここにあるように、Visual Studio .NET 2003 の場合は
プロジェクトに.asmファイルを加えて
そのファイルのプロパティページのカスタムビルドステップの全般内で

コマンドライン:
ml /c /coff /Cx /nologo /Fo$(OutDir)\ /Fl$(InputName) /Zi $(InputPath)
 (Release時は Zi フラグをはずす)

出力ファイル:
$(OutDir)\$(InputName).obj

とするだけでOK。


結果、さらに処理時間が90%ぐらいに。

エンコード・デコードの高速化は本質ではないのでここら辺で。
Research | - | trackbacks (0)

Visual Studio .NET 用プロファイラ

地味にJPEGデコードを高速化。

やはり、プロファイルをとると効率的に高速化できる。

プロファイラは DevPartner Profiler Community Edition を使わせてもらっている。

Visual Studio .NET 2003 にはプロファイラがついていないので
この存在は非常にありがたい(VC6にはあったのに…)。

処理が重いと分かったビット単位での読み込み等を高速化。

処理時間が90%ぐらいに。
Research | - | trackbacks (0)

JPEG プログラミング

Live Video Streaming にあたって
画像をJPEG圧縮して送るようにしたいということで
JPEGプログラミング。

ただのJPEGであれば既存のライブラリを使えばいいのだが
DCTの結果を他の目的で流用したり
フレーム中の任意のブロックのみエンコードしたり
といったことがしたいので
ライブラリそのままとは行かない。

いい本があったので参考に組んでみる。

JPEG 概念からC++での実装まで 第2版

丁寧な解説と分かりやすいソース。
おかげでエンコード・デコードの流れを理解できた。

しかし、プログラムの方は、ちゃんと動作はするものの
処理時間がかかりすぎて使い物にならなかった。

プロファイルを取ってみればDCT・IDCTが相当重いようだった。

そこで他をあたることにした。

JPEGのエンコード・デコードライブラリとしては
IJG(Independent JPEG Group) のライブラリが有名らしい。

Independent JPEG Group

DCT・IDCTの部分を見れば、なにやら期待できそうな感じだ。
しかしながら、マクロや独自の型が多用されていて
部分的に使うのは難しく感じた。

渋っていたところ、いい物を見つけた。

ファイヤー和田研 内の システムアーキテクチャ論 2004/06/05 実習2

IJGのライブラリからエンコード部分のみ器用に抜き出したソース。

早速試すと、エンコードの処理時間が 1/10 ぐらいに(劇的だな…)。

残るはデコード部分だが、これに関しては

MPEG-2 VIDEO VFAPI Plug-In

のIDCTの部分のソースコードが非常に参考になった。
波長が合うということなのか、読みやすく感じたし
モジュール化がされていて部分的に抜き出し易くなっていた。

ついでに色空間の変換にテーブルを使うことにした。

Software Library の YCbCr→RGB変換Cソース(ver0.01)(02.7.12 bug fixed)

その他参考になりそうなページとしては

Software Laboratory Alpha

があった。

・SIMD Enhanced JPEG Plug-in Ver.0.17
・アセンブリ言語版 DCT ルーチン for IJG JPEG Software

を公開している。


今頃JPEGかよ…という感もあるけど、バリバリ現役の画像形式だし。
大体、JPEG 2000 は?
大分経つけど普及してないよなぁ。
ストレージ容量や回線速度の増えっぷりからして出番ないんじゃない?
名前変えたら? JPEG XP にでもしたら?
Research | - | trackbacks (0)

マンガ読むなら464.jp

割と有名なのかも知れないが
漫画を無料で立ち読みできるサイトを見つけた。

まんが・コミックの464.jp

「哲也 ―雀聖と呼ばれた男―」の最後らへんが気になってたので立ち読み。

哲也の感想はどーでもいいので控えるとして
ビューアーが若干使いにくいよなぁと思う。
多分Flashを組み合わせれば軽快で使い勝手のいい物ができるんじゃなかろうか。

それから、いま、処理が割と重い気がするけど有料化したら改善されるんだろうか。
有料化したら客が減るから軽くなるという事だろうか。
(うちの回線が細いというのもあるのかなぁ)

あー、なんか、その理屈、ラグナロクオンラインを思い出すな。

で、その結果はというと…お察し下さい(いや、知らないんだけど)。
PC | - | trackbacks (0)