なんか具合悪くなって一日中寝てたり。
攻殻観たり。ぴひゅー、相変わらずの高密度っぷりです。
昼過ぎ起床。
来週分の暮らしの資金をリロードして本屋に行ったりCD屋に行ったり。
攻殻2ndGIGとかファミ通WaveDVDとか出張中に読む本とか。
先週出張中に「ザ・ゴール」という本を読んでみました。
TANE的に普段は一切興味の無いビジネス書の棚(この本の事を知らなければ
恐らく一生寄る事のないコーナー)に置かれている本です。
以前、社内教育で知り合った方にその存在を教えていただき、
なんとなく興味が湧いていたので時々書棚をチェックしていたのですが、
なかなか見つからず、先週やっと見つけたという訳です。この本、
その出版の経緯が面白くて、著者であるエリヤフ・ゴールドラット氏は
元々生産管理を行なうソフトウェアを売っていたのですが、なかなか
売上げが伸びないという事で、それを打開する一つのアイデアとして、
小説形式で著者が考えた生産管理手法((即ちソフトウェアで行なっている事)を
解説し、ソフトの有効性を広め様としたのが、きっかけとなっているそうです。
いくらセールスの為とは言え、そんな道楽めいた事でソフトの売上に繋がる
とも思えないのですが、大方の予想を大幅に覆すベストセラーになりました。
所が、一つの問題があり、この本で行なっている手法をそのまま実行に移せば、
実際にソフトを使うよりも大幅に安くて短期間で、改善効果が得られるという事が
広がり、結局ソフトの売上は減ってしまったという事です。
で、実際に読んでみた所、激ハマりでした(^^;。極めて当たり前と
言われればそんな気もするのですが、スループットやボトルネックという
用語が出てくる所、そしてボトルネックに全体が引きずられるという点などは、
生産管理に限らず、コンピュータの内部構造の改善や、ソフトウェアのパフォー
マンス改善にも通じる所があり、非常に興味深く読む事ができました。
そういや
以前、道路の渋滞の話を聞いた事がありましたが、それとも
置き換えが可能(というかそのまんま)かも。
所でこの本、初版は1984年という事で随分前に出版されたものなのですが、
日本語訳の初版は2001年の出版となっています。全米でベストセラーとなった
話題の本であれば、日本でも話題にならないハズは無いと思うのですが、
なんでも「日本人は、部分最適の改善にかけては世界で超一級だ。
その日本人に『ザ・ゴール』に書いたような全体最適化の手法を教えて
しまったら、貿易摩擦が再燃して世界経済が大混乱に陥る」と著者
本人が本気で思っていたらしく(^^;、著者本人が許可しなかったらしいです。
そんな感じで、ページ数があるのでとっつきは非常に悪いかも知れませんが、
お時間があるようでしたら是非。
そんな感じで明日から出張です。
出張。帰着。ふぅ。
Apacheの再コンパイルをこねくり回すも、結局うまく起動できず。
で、一つ前のバージョンを入れようと、ダウンロードを試みたの
ですが、何故かそれも見当たらず。しかたないので、自分ディスク
の中の昔のディレクトリを漁ると見つかったので入れてみる事に
しました。でも、setupプログラムでうまく入れられず、結局
手でバイナリを上書きしてみたり。で、これならエラー窓を出さずに
起動できてみたり。ちぇっ。そんな感じ。
CGIからPostgreSQLをアクセスしてみたり。でも何故かInternalServerError
でうまく表示できず。うまく表示できるCGIスクリプトとうまく
表示できないスクリプトがあって、その違いが判らず。
で、よくよく見てみると、
print "Content-type: text/html;charset=Shift_JIS\n\n";
出張。
出張。
出張。
出張。
出張。
殆ど夕方に起床(汗;
先日の変更について、ChangeLogを確認してみました。すると、
2004-03-06 Christopher Faylor <cgf@redhat.com> * fork.cc (fork_parent): Save parent pid in a temporary variable since child could conceivably exit before function returns, rendering the child's shared memory area invalid.
昼過ぎ起床。
Cygwinプロセス消滅問題(勝手にそう名づけました(^^;)の方を調べて
みたり。高い頻度で再現するのは cygwinのスナップショット
のビルド中のconfigure実行なのですが、決まった位置で必ずエラーする
のではないのが厄介です。なので、自前プログラムで再現させる事を
試してみました。でも、一度も再現せず。
そういや、fork()の性能問題回避の為、パッチを使用していますが、
本来WIN32API一発で済む事を、何度も分割実行するという対応を
行なっています。このとき、本当ならば一つの処理の間に割り込み
などで別の処理が入る事は無いハズにも関わらず、分割実行する
事でそのようなタイミングが生まれてしまい、何かしらの原因で
その穴を触ってしまうのではないのか?(要約するとアトミックで
なくてはならない処理を、アトミックで無い様にした時に発生する穴)
と思い、パッチを外してみたのですが、結果は変わらず。ぐったり。
どうやら、apacheの再コンパイル時のconfigure実行でもプロセス
消滅が発生するみたい。
configure実行で起こり易いところを見ると、shも少し関係が
あるのかもと思い、shをbashで置き換えてみたり。でもやっぱり
同じような所でプロセス消滅が発生している模様。という事は、
shellの実行によるというよりは、やはりプロセスの生成や消滅など
を行なう事が原因のような予感。
fork()性能テストプログラムをメッセージなどを変えながら何度
か実行していたら、何度が再現してみたり。この時、以下のような
点に気づいてみたり。まず、再現に使用したプログラムのコア部分
は以下の通り。FORK_COUNTは128で定義しています。
for( i=0 ; i<FORK_COUNT ; i++ ){ pid=fork() ; if( pid==0 ){ fprintf(stderr,"Leave fork() child %d\n",i) ; exit(0) ; }else if( pid>0 ){ wait(0) ; continue ; }else{ fprintf(stderr,"fork faild\n") ; break ; } }
: Leave fork() child 30 Leave fork() child 31 Leave fork() child 32 Leave fork() child 32 test>
fprintf(stderr,"Leave fork() child %d pid=%d ppid=%d\n",i,getpid(),getppid()) ;
Leave fork() child 118 pid=1084043 ppid=1116743 #親プロセスは1116743 Leave fork() child 119 pid=1209343 ppid=1116743 #親プロセスは1116743 Leave fork() child 120 pid=1941355 ppid=1116743 #親プロセスは1116743 Leave fork() child 121 pid=1198759 ppid=1116743 #親プロセスは1116743 Leave fork() child 122 pid=1116743 ppid=1813339 #何故か1116743に対してfork()の戻り値が0に! Leave fork() child 122 pid=1954379 ppid=1116743 #親プロセスは1116743 test>
if( forked_pid != forked->pid ){ api_fatal ("Illegal PID _pid=%d, ->pid=%d", forked_pid, forked->pid); } return forked_pid;
checking for limits.h... yes checking for stdlib.h... yes checking for malloc.h... C:\CYGWIN\BIN\SH.EXE (1531967): *** Illegal PID _pid=0, ->pid=1520295 make: *** [configure-libiberty] Error 1 cygwin-snapshot-20040520-1>
出張。帰着。ふぅ。
httpdの怪しげなところを当たりを付けて、CYGWIN.DLLを
コンパイルオプション-gで再コンパイルしてみたり。ところが
ソース表示と実際に止まっている部分との対応がイマイチ正しく
付いていないような気が.....。自前のプログラムで同様の
事をやると大丈夫そうなので、何やら基本的な部分が正しくない
ような予感がしてみたり。
そんな訳で、apacheの再コンパイルをしてみる事にしたのですが、
Cygwinでパッケージされたapacheのディレクトリ構成にはどうやっても
ならず。しかたないので、/tmpにインストールしてみたのですが、
それだとユーザー名がよろしく無いような旨のエラーメッセージが
出て起動できず。むぅ。
出張。
出張。
出張。
出張。
昼過ぎ起床。
CGIからのDBアクセスも実験したいと思い、httpdを起動して
みた所、何故か赤○白×の窓が開いたり。一応ローカルサーバーと
しての反応は見せるものの、ブラウザからアクセスがいく度に
赤○白×窓が開いて、なにやら怪しげな事になってました。
cygwin.dllの影響があるのかと思い、
スナップショットのアップデートを試してみたのですが、
解決せず。それよりも、最新のスナップショットを使用すると、
Cygwin自身のビルドがconfigureエラーでできない為、そちらの
方が問題なのですが。真面目に調べないとダメかなぁ.....
という訳で少し調べてみる事にしました。現象としては、
cygwinのビルドを行なった時、一発目のconfigure実行終了の後、
makeを実行するとlibibertyのconfigureが実行される事になりますが、
このlibibertyのconfigure実行中の不特定位置で configureのshプロセスが、
何事も無かったかの様に途中で終了してしまい、その後の
makeでMakefileが無いのでビルドに失敗する....という
感じの様です。現象が決まった位置で発生しない事と、
エラーしないでプロセスが無くなってしまう様なので、
トリガも無ければ、おかしな状態にあってもプロセス終了で
状況証拠も消えてしまうという点がやっかいです。
そんな訳で、fork()テストのプログラムを使って、fork()を
何度も繰り返してみた所、二度ほど親プロセスが途中で終了して
しまう現象が再現したのですが、それっきり。むぅ。
httpdの方はgdbで追っかけてみた所、segfaultで死ぬ模様。
cygwin1.dllのthread.cc:verifyable_object_isvalid()
周辺が怪しそうな予感。
夕方頃起床。寝過ぎ。
本屋に。PostgreSQLの参考書とperl DBIの教科書を探してみたり。
先日のテストスクリプトをいじって、へっぽこの日記をDB化するスクリプト
を作ってみたり、SQLの検索機能を使ってキーワード検索し、文字列を含む
日付けの日記を整形出力するスクリプトを書いてみたり。でも、
日記程度の量であれば、文字列検索しても一瞬で終ってしまうので、
grep検索と比べてもその差が殆ど判らなかったりして(^^;
後、思ったのは、select文とかで使う 演算や検索式の指定の仕方が
イマイチ判りにくく感じました。自然言語を意識していると思われる
部分がある為、例えば大なり小なりは「>,<」とかを使うのですが、
ANDやORは「AND,OR」という様にアルファベット表記だったりする
ようです。なもんですから、whereのような句と式の区切りがよく判らない為、
例を見ても、どこからどこまでが検索式を示しているのか
判りにくい様に感じました。まぁ、慣れの問題でしょうけど。
何気にrowを追加しては削除してというのを繰り返すリグレッションテスト
っぽい事を行なっていたら、いきなりDBとのコネクションが切れたり(^^;
不安定というのは、こういう事を指しているのかしら?
出張。帰着。ふぅ。
PostgreSQLをperlからアクセスする方法を調べてみたり。
どうやら、DBIやDBDといったDBアクセスモジュールをインストール
する必要があるようで、ダウンロード&makeしてみたり。
make中、なにやらDLLを生成する様なのですが、DLL生成のコマンドが
うまくないようで、エラーで停止してDLLが生成できず。
手動でDLLを生成するべくWebで手順を調べてみたら、最近はcygwin上でも
gccで直接DLLを生成できる様になっているらしく、
調べた手順を参考にDLLを生成してみたり。以下DBDの
makeで行なわれるハズのPg.dllの生成を手動で行なった例。
gcc -shared -o Pg.dll Pg.o dbdimp.o quote.o types.o -o Pg.dll \ /usr/lib/perl5/5.8.2/cygwin-thread-multi-64int/CORE/libperl.dll.a \ -Wl,--out-implib=libPg.a
% ./test.pl | w3m -T text/html -dump Content-type: text/html データベース接続テスト ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ┌───┬───────┐ │ NAME │ E-MAIL │ ├───┼───────┤ │tane │aa@bb.cc.dd.ee│ ├───┼───────┤ │tane2 │ff@gg │ ├───┼───────┤ │hoge │hoge@gefu │ └───┴───────┘
日付け越え。
思うところあって、PostgreSQLを使えないか試してみたり。
Cygwin版は何気にインストールしてあったりしたのですが、
これまで全く縁が無くて一度も起動する事は無かったので、
Webを回って起動方法を調べてちょろっと試してみたり。
Win98で使用すると不安定だとか、怪しげな事が書かれてたり
もしたのですが、一応DBを生成する事はできたので、なんとなく
使えそう。
work2> psql -n test Welcome to psql 7.4.1, the PostgreSQL interactive terminal. Type: \copyright for distribution terms \h for help with SQL commands \? for help on internal slash commands \g or terminate with semicolon to execute query \q to quit test=# create table tmpdb (number serial not null primary key, value varchar(254)); NOTICE: CREATE TABLE will create implicit sequence "tmpdb_number_seq" for "serial" column "tmpdb.number" NOTICE: CREATE TABLE / PRIMARY KEY will create implicit index "tmpdb_pkey" for table "tmpdb" CREATE TABLE test=# insert into tmpdb(value) values('test message'); INSERT 17168 1 test=# insert into tmpdb(value) values('日本語テスト'); INSERT 17169 1 test=# select * from tmpdb; number | value --------+-------------- 1 | test message 2 | 日本語テスト (2 rows)
出張。その日帰着で日付け越え。ふぅ。
スキニングについてぼんやり考えてみたり。曲げ時の頂点座標
変換の際、メッシュが伸びる側と縮む側の2種類が発生する
事になると思いますが、縮む方の側を伸びる側とは違う方法で
うまく縮めれば良いような気がしてきました。
因みに、Gemsに載っていたスキニングの
サンプル画像は、何故か筋肉モリモリの腕がサンプルモデルと
なっていて、縮む側の変形がモデルでうまくごまかされている
ような写真になっています。
曲げ鋭角が鋭ければめり込みにより見えなくなってしまう所
なのでしょうが、ごまかす事が目的ではないので、ここはひとつ
うまい方法を見つけたい所。そんな感じでジッと腕を見る......
そういえば、今の所に引っ越して以来、ずっと畳の上に座って
背中を丸めながらキーボードを打つ生活なのですが、ここ最近
この体勢が非常に辛くなってきました。ほんの20分程度ディスプレイ
に向かっただけで猛烈な肩凝りが発生します。
椅子が欲しい物欲が湧いてきているこの頃。
今日も具合悪くて死亡。暑いのに寒いという体温調節不能な感じが
イヤな感じ。
ボーンとスキニングとモデリングについてWebを検索してみたのですが、
あまり良い資料は見つからず。即ち、商用の3Dソフトでは、そこんところ
はあまり問題にならないという事なのかも知れませんが。
いきなり具合が悪くて死亡。
ウイルス作ったドイツの高校生が捕まったり、ファイル共有ソフトの
開発者が逮捕されたり、なんか難儀な世の中になってるなぁと思ったり。
ウイルスの場合、あからさまに怪しいメールが届いたりするにも
かかわらず、訳判らずなんでもかんでもホイホイ実行する人ってのは
居る様なので、どちらかというとそっちの方をどうにかした方が良い
様にも思えますが それはそれとして。ファイル共有ソフトの方は、
それ自体では捕まる要素は無い様にも思えるのですが(金物屋が売った
刃物で魚をさばかず人をさばいても金物屋が捕まる事は無い)、
著作権侵害を助長する「発言をした」事の方が要素としては大きいみたい
です。果たしてそれだけが条件なのかどうか....
それにしても、ニュースなどでは何の説明も無く「Winnyを開発した....」
みたいに報道されていたのですが、普通に聞けば何の事やらさっぱり
判らない言いまわしだと思いました。今の世の中それで意外と通じる
ものなの?とか思ったり。
昼過ぎ起床。
POV読みいじり。昨日からごちゃごちゃといじり回して、分散変形を
仕込んでみたり。色々ハマりながら仕込み完了。ボーンの始点と
方向を定義しておき、その二つからなるボーンの線上に各頂点を
投影した時の、ボーンの始点から投影点までの距離を変形割合として、
回転率に使用してみました。
腕の様に筒状のものに筒のまま変形範囲を塗り分けると内角に
アールが付くので、伸ばす部分をサロンパス状に塗り分けるた方が
良さそうなどの試行錯誤はありましたが、結果は次の様な感じ。
以前のものよりも、
鋭角曲げの感じが良くなっているような予感。
あと、ひねりに対してもそれなりに反応を示す様になったので、
胴体の曲げやひねりについても、それなりの結果が得られる様です。
でも、曲げ率は等分割の円周上での座標変換なので、ハイポリでの曲げを
見ると、ひじなどの曲げが丸くなっており、期待値とは異なるという感じ
です。
ただ、人体モデルとした場合の曲げとしては期待値と異なる訳ですが、
機械的なモデルであれば、間違いとも言いきれない場合があるかと思います。
この辺、一般的なボーンシステムでは、パラメータで曲率などを変更できる
様になってるのでしょうか......
そういや、変形後の形状ができるだけ破綻しない様にモデリングの方で、
考慮しておくテクニックというのがあるのかしら?と思ったり。例えば、
現在TANEがモデリングしてある人体モデルでは、腕は下に降ろした状態が初期モデル
となっていますが、これだと腕を上げた場合に、肩の変形具合がよろしく
無かったりします。CG雑誌などを見ていると、モデルの基本形状は
腕を左右に広げた状態が初期形状となっている場合が多い様で、
確かにこの方が、腕を下ろすにも上げるにも前に出すにも、中間位置から
の曲げ角度が同じになるという点では、良いモデリングだと思えます。
少し調査してみようかしら。
昼過ぎ起床。
POV読みいじり。ぼんやりクォータニオンのコードを眺めていて、
次のような事ができないか考えてみたり。ある初期回転量qaに
差分回転量qdを加えた合計回転量をqsとした時、qsからqaを引けば
差分回転量qdを逆に導き出す事ができるハズです。では、実際に
qdを導き出すには、どうすれば良いでしょう?
回転量を「加える」には、実際にはクォータニオン同士の乗算を
使用します。
qa * qd = qs (式1)
qs * ~qd = qa (式2)
~qa * qs = qd
q_new.v = Normalize(q_old.v) q_new.n = cos(2*angle) q_new.v *= sin(2*angle)
出張。帰着。ふぅ。
POV読みいじり。ハタと気づいたのですが、
以前考えた魚の骨を
定義して、それを元に変形させる事をインプリメントしようとした所、
曲線を複数の線分で直線近似した時に、移動前の線分と移動先の線分
とのなす角は求められるのですが、「線分のひねり」の情報が
無いなぁという事で、簡単に座標変換できなくて悩んでみたり。
むむ、平面で考えると、必ずこの軸ひねりの考慮が抜けてしまう辺り、
慣れが足りません。
出張。
昼過ぎ起床。
COOL GIRLのICE編をASKAで進めるExtraGameを試していたり。
流石に挿入されているムービーがASKAになっているという事は
ありませんでしたが(^^;。ICE編の一番最初のストーリーでは、
対ヘリ戦があるのですが、やっぱり刀では勝負できず、どうやりゃ
良いのだ?と思ったのですが、こうすれば良いですか、そうですか、
そんな感じ。でも、クリアしたら「ランクE(最低)」で何故?!とか
思ったり。
ひさびさに「トリビアの泉」を観たり。トリビアの種、「日本刀と
ピストル、強いのはどっち?」というバカバカしいものでしたが、
日本刀でピストルの弾が真っ二つという結果に驚愕致しました(<何故丁寧?)。
COOL GIRL。攻略本を買うきっかけになった、ICE編の最初の方の仕掛け
ですが、これ、跳ねかえり弾を撃てないASKAの場合はどうすれば?
POV読みいじり。関節プリミティブに従って頂点グルーピングを行なう為
の仕込みを入れてみたり。
昼過ぎ起床。
飲み会はどうかなぁという事でKOJIさんにお電話。どうやら今日は
みなさんのANDが取れなさそうという事なので、軽くお食事をする事にしました。
そんな訳でCOOL GIRLを進める事にしたり。ところが割とあっさりクリア。
以前、攻略掲示板を巡った感じではASKA編の方が難しいと言われていたの
で、かなり身構えていたのですが、各ステージに必ず固いボス戦のある
ICE編の方がよっぽど難しかった様に思いました。
そんな感じで感想など。なんかすごく久しぶりにアドベンチャー
ゲームをやったという感じです。何か取っては前の場所に戻ってを繰り返し、
行ったり来たりする辺りは昔のアドベンチャーゲームそのもの。それでも、
重要な部分に来ると、自動フォーカスで何かある事を示したり、得られた
情報を自動メモに記憶したりという点は、最近のゲームらしい親切設計
という感じです。昔のゲームだと、ヒント無し、自動メモ無し、自動マッピング
なんてもってのほか(もちろんハードの制約の都合というのはありますが)、
ガビガビのグラフィック上を1ドットずつずらしながら「調べる」を
実行しつづけるという感じだった事を考えると、昔のゲームって
理不尽な難しさの方が、割合としては多かったような気がします。
それから言うと、理不尽な謎解きが極めて少ないという点で、全然楽勝という感じ
だったかも(と言いつつ攻略本買ったりしたのは置いといて(^^;)。
そんな感じで個人的には、ハマリ度が高く良い感じでした。先に進めないと
ほったらかしになってたかも知れませんが、それはそれとして.....(^^;。
因みに、このCOOL GIRL、ゲーム画面上の背景オブジェクトのテクスチャに、
動画が貼られていたりします。このテクスチャとして使われている
動画は、Macromedia Flash-MXで作成したものを、そのまま動画テクスチャ
として貼りつけているとの事です。サイバー空間では、それこそ全面動画テクスチャ
という派手な画面になっているのですが、特別処理落ちする事など
無かったので、「へぇ、こんな事できるんだぁ。」などと感心して
みたりしました。背景の端末モニターの画面など、かなり細かな所まで
動画テクスチャで表現されており、その作り込みには驚きです。
そんな感じで飲み出撃(飲みなのか?)。結局KOJIさんと二人になった
らしい(^^; 行きの電車の吊革で懸垂をする女子学生(異人さん)を見たり。
合流後、新宿のバド屋に。連休中日、天気も悪いという事で
かなり込んでて待たされてみたりしましたが、ほどなくして入店。最近の
出来事やら、3D系の話やら、グラフィックハードの話やら、コーディングの話やら、
彩の話やら、他、色々。そんな感じでまた次回。終電帰着後、攻殻SAC観て寝た。
昼過ぎ起床。
ぐうたら過ごして、COOL GIRLを進めたり。死にまくりでどうにかボス戦をクリア
し、その後もコンティニューを繰り返していたら、いきなりハングった
のでリセットしたところ、ボスクリア前まで戻されたりしてぐったり。
ちょっと寒くなったのでゴロゴロしていたらいつの間にか寝こけてたり(汗;
そういや、ごくたまにTVで声を聞く事があったのですが、
今日初めて名前を知ったり。その人の名は「山崎バニラ」というの
ですが、アニメ声というよりは、変調フィルタがかかっているような
感じのする不思議な声色の持ち主です。この声、どこかで聞いた事がある
ような無いような.....と思っていたら、あれ、モジブリボンのCMの
あの声に似てる、そんな発見をしたりする(合ってるのかは知りませんが)
そんなどうでも良い一日。
昼過ぎ起床。昨日は結構早い時間に力尽きたので、12時間ぐらい
寝てる事に。寝過ぎ(^^;
連休中の生活資金をリロードしたり本屋に行ったり。
ファミ通WaveDVDを見たり。「エースコンバット5」の背景の異常な
綺麗さに驚いたり。そういや何気に5作目という所に、地味に人気の
あるシリーズだったりするのか?などと思ってみたり。
その他、「グラディウスV」とか個人的にチェック。背景のポリゴン化
とかレーザーとか、見た目は今風になっている感じです。とは言っても、
グラディウスシリーズは「III」のアーケード版から(IIIのスーファミ版は
普通に遊べましたが)全く歯が立たなくなったので、そちらの方が
問題かも(^^;
そして何よりこれでしょう、SIMPLE 2000 シリーズ Vol.50「THE 大美人」!
”巨大アイドル北上中!”とかいう謎のアオリも、
画面を見れば一発解決、バカバカしさ汁あふれまくりのタイトルです。
「COOL GIRL」を進めたり。遺跡ステージより前は、そんなに難しい感じ
はしなかったのですが、急に難しくなってきたような気がしたり。
Webぐるぐるしていたら、GIレンダラ「lucille」の開発を行なって
らっしゃる藤田さんのblog(
2004/05/02)に、PowerPC G4/G5に搭載されている
AltiVecのパフォーマンス解析化ツールの事について書かれていたり。
パイプラインのサイクル解析が可視化されており、こりゃスゲー
と思ったり。Mac OS Xになって、開発ツールとか比較的容易に
入手可能な様なので、興味の尽きないところです。
ところで、三角形交差判定での性能比較の話で思ったのですが、
G4-1.25GHz:PentiumIII-800MHz=6700万:(2000万〜3600万)=(3.35〜1.86)倍
という計算になりますが、クロック周波数比が1.56倍ある事を考慮すると、
AltiVecの効果は最小で1.2倍という感じになる様で、PentiumIII-800MHzの1.2倍
という値は今だと達成されているような気がしてみたり。
G4での話なので、G5だともう少し良くなっている要素もありそうですが、
劇的な性能改善が期待できるかと言うと、ビミョーな感じにも思いました。
ただ、PentiumIIIの値に、MIN:MAX=2000万:3600万=1.8倍の差があり、比較の対象と
するには少し正確さにかける気はしますが。POV-Rayとかのような、
マルチプラットホーム対応可能なソフトウェアで性能比較したネタとか
どこかに無いかなぁ。
POV読みいじり。先日の問題は冷静に考えるとなんて事は無いという
結論で対応してみたり。さて、本題はこれからなのですが。
COOL GIRLを進めてみたり。そして思いっきりハマってみたり。
出張。帰着。ふぅ。取りあえず連休モードに移行できました。
POV読みいじり。ある関節ノードに属するオブジェクトに対して、
一部の頂点はそのノードの親ノードまでの回転を反映し、他の
頂点は自ノードの回転を反映するという操作を行ないたかった
ので、単純に自ノードの回転を一番最後にするかしないか判定
するだけじゃんと思っていたのですが、ツリー構造の葉の方向
から幹に向かったり、幹から葉に向かったり、行ったり来たり
してて、あれ?結局、自ノードの一つ上のまでの回転量は
どうやりゃ求まるのだ?と、混乱してみたり。