出張。
出張。
出張。
出張。
出張。
休日出勤。そして明日から出張。へぐ
帰りは雪まじりの雨。
この日記、2002年に入ったのに2001年表示になっていたとの御指摘をいただいた
ので修正しました(^^; 今まで全く気づいていなかったのがヘコリ。
テーブル化の続き。0x7c系列の書き換えがやっと終了。ふぅ。あと1/3くらい?
日付け越え。
テーブル化の続き。何気に気づいたのですが、0x7c系列の命令でフルデコードを
行うと、LD/STのアドレスアップデートON/OFFや、o付き/無し命令などが、全て
別関数になるため、ほんの少しだけムダなフラグ判定が減るかも。
日付け越え。
テーブル化の続き。
日付け越え。
命令デコードのテーブル化続き。あぁ、やっぱ結構面倒臭いや。
PPCの命令コードって、所どころ「なんでこの命令とこの命令が同じ組?」みたい
なコードに配置されている所があって、そのせいでテーブルが小さくできない
感じがします。例えば先頭 0x4c系列の命令は、何故かCR操作系とブランチと
キャッシュの同期命令がひとまとまりのグループになっているし、
整数LDは先頭0bxxx0、整数STは先頭0bxxx1となっているかと思いきや、
lmw,stmwはコードの余った所に押し込まれている感じになっています。
大抵の場合、空いているコードに無理やり割り当ててしまうと、結局全部の
bitを見てデコードしなくてはならない為、あまり美しくならないのですよね。
それとも、良く見ると数bitで命令判断できる並びになっているのかしら?
日付け越え。
なにげにppcsimの命令デコードのテーブル化を始めてみたりして。
日付け越え前に帰着。
なにげにppcsimのグラフィックデバイス周りのソースを先日行った
Cygwin/ppcsim共用ソースに書き換え。しょーもない事にはまりましたが、
描画スレッドなど、グラフィックデバイス関連ルーチンがそこら中に
ちらかっていたのが整理されてイイ感じ。
そして、ppcsim on ppcsim.exeをグラフィックデバイスありでPPCコンパイル。
流石に2048*480*4byteのVRAMを持つとプロセスメモリが足りなくなります(^^;
そんな感じで再びLinux on ppcsim が始めたくなってきたのこころ。
昼過ぎ起き。出社予定でしたが力尽き気味。
先日に続き、Cygwin/XFree86上で動作する予定ものをコンパイル。
ImageMagicはOKそうでした。ただし、猛烈に遅いです(^^; 続いてGIMP。
最新と思われる1.3.2を試してみたのですが、glib/gtk+に1.3.xを要求
されて惨敗。1.2.xを試してみましたが、一応バイナリはできたものの、
速攻でSegfault。ゲフ。なんかイマイチ。
あぁ、力尽き気味での休みの活動は、イマイチうまくいかないなぁっ
て感じ。
昼過ぎ起き。ダメダメ。
XFree86のスクリーンショットを見ていると、色々コンパイルできそうな
感じだったので、以前ダウンロードしてソースだけ見てほったらかし
にしていてたmozillaをコンパイルしてみることにしました。configure
を実行したところ、glibおよびgtk+ライブラリが無いということで、
1.3.xを拾ってコンパイルしてみたところ、これがうまくゆかず。
pkgconfigが無いとかlibiconvが無いとか、libiconvが何故かコンパイル
できないとか。結局libiconvはバイナリを使用し、glib/gtk+は1.2.xを
使用する事でどうにか先に進めたもよう。libIDLも入れてやっとこ
configureが終りました。しかしいざmakeを始めてみると、shの文法
エラーが出たり色々。OS_TARGET,OS_ARCH,OS_RELEASEに含まれる'('が
うまくない模様。make OS_TARGET=CYGWIN OS_ARCH=CYGWIN OS_RELEASE=1.3.6
とか少し縮めてコンパイル。でもnsprpub/以下のコンパイルでつっかえて
ダメ。ぐふっ。諦め。
Xlibを使う他のアプリとして、MegaPOVを make xmegapov してみましたが、
これも予定ではレンダリング経過を表示するウインドが開く様になるハズ
ですが、それが開かず。謎。
今日は惨敗気味。
何気に久しぶりに「これマジ」を観ました。月旅行は実は嘘だった?と
いうやつだったのですが、全く違う場所といわれている映像が重ねてみると
落ちている石の配置が全く同じだったり、影の方向が変とか、重力の
弱い月の地上を歩いている映像を二倍速すると、地球の地上を普通に
歩いている映像に見えるとか、結構面白かったかも。そういえば、
ずっと前にこの番組に似た感じの番組で、月から最後に離脱する探査船の
映像というのがありました。月の表面からその探査船を追いかける
ようにカメラをパンしている映像だったのですが、あまりに上手く
その船を狙っていたのがちょっと不思議で、映像を一体誰が撮った
のか?また、自動にしてもそのフィルムをどうやって回収したのか謎。
とかいうのをやってたのを思い出しました。電波で映像を送ったと
考えれば説明はできますが、真相のほどは定かではありません。
それにしても、今日寒過ぎるって。
日付越え。遅過ぎて力尽き気味。
ふと何気にXFree86 for Cygwinをダウンロードしてみました。
落とすだけで終り。
日付越え。
彩の新版がリリースされました。タブレットの認識はOKでした(^^)。
12.5%問題もちょっと触った所では問題無いようです。ただ、0.8.0
で作成したデータを読み込むと赤○白×で落っこちちゃいました(^^;
因みに、0.8.0自身でもロードできない模様。他、読みこむとキャンバス
も出てこず、レイヤーの一枚も無いデータとして読みこまれるファイルも
ありました。つまりデータとして壊れてしまっている様です。
まぁ、良いですが。
何気にシューティングデモを動かしていて、どうもつっかかるので、
ふとHDDのアクセスランプを見てみたところ、つっかかり時に点灯
していました。つまりスワップしながら動作しているようです。
もしやこれか!という予感。
日付越え。
PPCシミュ用デモであるところのgdemosとpolyをシューティングデモの
ソースを元にCygwinとppcsimとの共通ソース化を図ってみました。
シューティングデモの方でも、良く考えると入れ場所を変えた方が
良いものが出て来たり色々。そんな感じでなんとか書き換え終了。
日付越え。
最近話題に上っていた、「ロスレスでデータを1/100にする技術」の話
ですが、胡散臭い感じがしていたのですが、どうやら本当に胡散臭い
ようですね。偉い数学者の名前を勝手に使ったとかなんとか。
それにしても一体なんの為にそんなことをする必要があったのでしょうか?
本当ならば偉い人の名前を借りなくとも良い気がするのですが......
他、特に何もできず。
今日もお休み。健康な体での連休は凄く久しぶりかも(^^;
掃除したり洗濯したりしながらシューティングデモをppcsimで動作する
様に書き換え。グラフィック部分をCygwinとppcsimとで切りかえられる
様に機種依存部分を一箇所に集める様に修正してみました。結果、
インターフェースとして見える部分はグラフィック領域の先頭アドレス
だけとなりました(^_^)。このライブラリを使用すれば、ppcsimのPPC
クロスでもグラフィックデバイスが使えそうな予感ですが それは
それとして。で、ppcsimでも動くけどやっぱ遅いわ。終了。
何気にチャンネルを回していると、テレビ東京で大塚康生氏の出ている
特別番組をやってました。以前の日記で時々紹介した「作画汗まみれ」
の著者である、いわゆるアニメーションの偉い人です。氏の小さい頃に
描いたと言われる機関車のスケッチだとかが紹介されていたのですが、
「汗まみれ」の写真では小さ過ぎて判りませんでしたが、寄りの映像
で見ると、これが恐ろしく細かいところまで描かれており、それでいて
ちゃんとパースが取れているのに、まぢでびっくりしました。
その後も「汗まみれ」の方で紹介されていたアニメ映像写真が実際に
動いているところが見られたり、実際に大塚氏がルパン三世の
石川五右衛門を使ってアニメーションの作例を示したりと大サービス
でした。特に五右衛門を使った作例では「描く」というより、鉛筆の
先から「絵が出てくる」ような感じに思わず「すげー」とTVに話し
かけてみたり(^^;。
番組最後の方でアニメ学校の生徒作品の中でも特に上手かった人が
いたというナレーションで、エバンゲリオンでおなじみな所の
貞本義之氏が出ていました。因みに、その作例という奴が人が歩い
たり走ったりしているところなのですが、明らかに違うって感じで
した。大塚氏は「汗まみれ」でも書いてありましたが、最近は下手な
動く絵よりも上手い止まった絵の方に力が入れられている事をあまり
良く思っていないようで、その事を貞本氏に何故か?と聞いていま
した。貞本氏の回答は「(意思とは別に)そういう(止め絵を描く様に)
要求があるから」という事でした。確かに貞本氏の描くイラストは
とても魅力的なのですが、オネアミスの翼とかの動かし方を見てると
やっぱ、アニメの方も是非って思ってしまうのは私だけでしょうか?
それにしても、大塚氏はもう70歳を越えようかという年齢にも関わらず、
あのパワーっちゅうのはどこから溢れてくるのだろうと思いました。
そんな感じでダラダラとCGなど描いてみたり。
512×512でセーブしたら今までより縦幅が8ピクセルほど短く表示され
ていました。そんな感じなので、下の方に隙間が入っています。
拡大表示で作業してから縮小表示で元に戻すとき、思わず
キーを押し過ぎてバグに引っかかりそうになり、結構スリリングでした
(ぉい
gprofについて少し調べてみたのですが、PPCでのプロファイリングは
まだサポートされていない模様。なんで?
今日は久々の休み。なのに起きたら17:30。何もせずに終ってしまい
ましたよ!
しかた無いので本屋とゲーセンに。「斑鳩」のうまい人がやってたのを
しばし鑑賞。ラストに近い面だったのですが、後ろから見ていても
全く避けられるような感じがしないのが凄いです。やはり狭い所を
巧みにすり抜ける必要があるというのは最近のシューティングゲームでは
珍しい感じがします。で、ラスボスでエンディング。すげー。
その後で先日のリベンジ(^^;
やっぱりダメ。今回はどちらかの色になるだけ固定するようにした
のですが、頭の中で「今白だから黒を避ける」という文字列を理解
しながらやっていると、だんだん早い切り替えを要求されると最初
の「今白」の段階で白の敵弾が目に入ると思わず避けてしまいます(^^;
白黒白黒白黒白黒白黒白黒白黒白黒白黒白黒白黒ズガーン! もうっ!
訳わかんないよ!
近所のパソコン屋でメモリの入荷状況を時々観察しているのですが、
全然入る気配がありません。それより、100MHz仕様のDIMM自体が
既に中古でなければ買えないような感じがするのは気のせいでしょうか?
Auge.さん所の
情報より、例の「既定問題」の解決方法がっ! 参考に直してみたら
OKでした(^o^)。試しにRCSを使ってみたらちゃんとcheck inできましたよ。
そんな感じで一部のソースをCVS管理してみることにしました。
そうこうしているとKOJIさんからお電話。例のタブレットドライバでの
未定義デバイス問題の調査のため、タブレットコマンドを叩いて
返ってくる文字列を伝えたり。これで我が家のAtrPadもちゃんと認識
されそうです。そんな感じで来週が少し楽しみ。
シューティングデモのソースだけですが、プロ遊の下に置いてみました。
ご参考まで。次はppcsimで動作させてみる予定です。
朝割と早く起きて休出。
日付越え前に帰着。
何気にだんだん遅くなってきている気のするシューティングデモですが、
ネックの個所を探す為にプロファイリングを行ってみました。X68kの時は
gcc -p でコンパイルし、profライブラリをリンクすれば良いという感じ
でしたが、Cygwinでは(というかGNUツール一般では) gcc -pg で
コンパイル&リンクし、gprofというダンプ表示ツールを使用すれば良い
ようです。で、プロファイルを取った結果、結局グラフィック描画
関数(VRAMに見たてた大量のメモリアクセス)にかかる時間が99.8%を
占めているという事でした。あまりに占める割合が大きいため、
その他の関数の占める割合が有効桁数を割っているため、ほとんど0.0%に
なっています。これではあまりなので、描画ルーチンをすっとばすと、
二番目はpngファイルロード関数。三番目は敵弾の移動関数。
因みに、スプライト描画前のクリアを入れただけでも、グラフィック描画
関数が全体の97%以上を占めてしまいます。全くもってチューニングの
しがいがありません(^^; やっぱフルソフト描画は厳しいですなぁという
感じの結果でした。
ところで、このプロファイリングユーティリティってなんか便利。
PPCシミュレータでも使う事ができるのかしら?
日付越え。
シューティングデモをちょっこりいじって死亡。何気にだんだん
遅くなってきているのは気のせい?
日付越え。
眠くて死亡。
日付越え。
シューティングデモ。しょぼ〜いボスを入れてみました。
でも爆発とか普通の敵と同じ小さい奴なので、ハデなパターンを
追加してみたくなってきたのこころ。
日付越え。
シューティングデモをほんの少しいじる。ボスとか入れてみたく
なってきたのこころ。
日付越え。
飯食って風呂入ったら今日は終り(T_T)
なんか今日もダメダメ。寝て過ごす。
シューティングデモをちょこっといじったり、彩をちょこっといじったり。
先日、最縮小表示状態で更に縮小ボタンを押すと赤○白×で落っこちて
いたのですが、今日試すと大丈夫でした。再現がむずいバグなのかしら?
でも、出せるようなモノが描けず。
身の無い一日でした。
出社予定でしたが体調優れず。しばらく寝て過すごし。
何気にWebで 「爆発」「素材」をキーに検索。すると、
このようなページに
行きつきました。パーティクルのシミュレートを行うソフトウェアで、
爆発パターンやその他色々な素材を自動生成できるようです。
LapislazuliというのとCOSMOSの二つがあり、どちらもパーティクル
シミュレーションを行えるようですが、とりあえず旧版と思われる
COSMOSってのを使ってみました。
操作性などの点で結構クセがあるものの良い感じにパターンが生成
できます。最新版ではαデータを吐き出すことができる事ができる
ようですが、このαデータはレンダリングしたRGBデータに適用する
事は事実上できないので、Laymanにαデータ抽出コマンドを追加
してみたり。そしてシューティングデモに組み込んでみました。
因みに元のレンダリング画像は128×128ピクセルでレンダリング
されているため、Laymanのzoomコマンドを使って縮小しています。
何故αデータがそのまま適用できないかといいますと、HSVの Vを
αとして変換した場合、元の色からVを抜いたものを合成元ピクセル
のRGBとしなくてはなりません。もしこの考慮が抜けると、
例えばRGB=(0,0,0)の背景にVの低いピクセルはα合成した場合、
そのピクセルは意図したものより更にVの低い描画になってしまい
ます。この誤りはPOV-Rayのα付きレンダリングの時にも見られます。
結果として描画オブジェクトのエッジの色に背景色が混ざって
しまっている為、α値を使っても綺麗に合成描画を行うことが
できません。
因みに、Photoshop5以降には、このようなエッジに混ざった背景色の
除去を行う専用のツールがあるようです。
つーか、今日は寒過ぎ。
普通に仕事始め出社。そして日付け越え。
寒くて死亡。すぐに寝る。
今日はお休み。昼過ぎまで爆睡(汗;
起きてgsl-1.0などをコンパイル。でもmake checkでエラー。
エラーと言っても結果が変という訳でなく、テスト用実行ファイルが
コンパイルエラーで生成できないというもの。うーむ。
シューティングデモいじり。結局、考え違いをソースだけで
見つけられず、デバッガの助けを借りてやっとOKに。
修行が足りません。
調子に乗って敵弾を出しまくってみました。スコア表示の部分は
現在表示されている敵弾の数を示しています。2500個程度
ですが、既に60fpsでは回っていない予感(^^;
そういやポカリスエットのCM。噂によると本当に宇宙に上がって
撮った映像という事らしいのですが、まるでCGみたいです(^^;
つーか、あの程度のものならCGで十分な感じがしなくもありません。
これとは全く逆ですが、昔、ハリソンフォードとその他の役者とが、
全く別の場所で撮影された映像をCG合成により、まるで一緒にいるかの
ように見せたビールのCMがありましたが、
でも、CGでやるよりハリソンフォードを呼んだ方が安いんじゃ?
という話があったのを思い出してしまいました。
今日も朝からお仕事。
帰着。飯食って風呂入って電子てまみを書いたら今日は終り。そんな感じ。
あけましておめでとうございます。本年もよろしくお願い致します。
なんて定型文章も適当なところで休日出勤ですよ。
日が暮れる頃に帰ってきたのですが、気分が優れずTVを観ながらゴロゴロ
したり。電波と雷波の合体新年番組をみていたのですが、改めて言うのも
なんですが、この番組に出てくる人達って、「うっそー」って思うような
キャラを持っている人が不思議なくらいに多い様に思いました。
tsp使用のシューティングデモ(ゲームではないのです)で、敵弾の処理を
するのに、OSなんかでいう所のプロセスリストのようなアクティブキャラ
だけを繋いだリストを使って処理しようとしたところ、バグ埋め込みまくり
でちっとも動かず。
明日も早いので早々に寝てしまいました。