Rj's SkaaRj Page_20


この頁では、私Rjがあのおそろしい3Dゲーム unreal をやってみて思ったことなどを書きます。決して中上級者向けの技術向上参考頁にはなり得ないので、御了承下さい。私はにぶいのです。。。今回は、暖かい季節を迎えてやや辛くなってしまったPPC750@325/130MHz、謎だったVertex Lightingについて、intel x86系CPUのエミュレータの話などです。unrealの話はどこいったんだ・・・(1999.05.23)

  1. 関係無さそうでありそうな話題
  2. 頂点照明
  3. ぁ-...
  4. 現状・・・

その二十

1.関係無さそうでありそうな話題

(以上1999.04.25)


2.頂点照明

<さつりくがしごとで、しごとは、よい。>

最も効率的な殺戮とは、直接空爆することではなく、8-Ball Launcherで撃ちまくることでもなく、ただ争いの種をそこに撒くことである。

<さつりくがしごとで、しごとは、よい。>

See the stars come falling down form the sky...

よこたさんのぽりたんく@400MHz+ぶーづ2、2.20b3のHQ(800x600)モードで34fpsですか。。。あの空もキレイなんだろうなぁ・・・

<さつりくがしごとで、しごとは、よい。>

さつりくもよいのですが、「爽快林檎野球」もよいです。(本家?は「下町林檎園」です。)得点ランキングなんかもあって、ますますもえるぜ!左右逆のイチローさんもリアルでカッチョイイっす。なにより、爽快。看板(ソフト名)に偽り無し!

(けど、私の環境ではどう計算しても1300てんは出ないように思えて既に負け負けな気分です。。。)
(1999.05.23追記:うらわざ判明。でも、ズルなのでヒミツです。)

<さつりくがしごとで、しごとは、よい。>

既に異様に読みにくくなっている↑のは自覚しております。m(_   _)m
(ちなみに、「草津陸河岸毎で・・・よい。フ」ではありません。)

で、やっと本題です。むつかしいunrealの設定の中でも、以前から特に謎だった「頂点照明」(Vertex Lighting)について、WestlakeのKen CobbさんのUsenetへの投稿にあったらしい説明がMGL Game Industry News pageの1999.04.27記事で紹介されています。(小川さん、お知らせありがたうございます。)Kenさんの曰く、

ゲーム中で描かれる三角形を考えてみましょう。三角形の三つの角が「vertex」つまり頂点です。3D描画加速回路は、それぞれの頂点の部分に指定される色を基に、(それらの色を混ぜたり、それをまた壁紙の色と混ぜたりして)その三角形をどう塗ったくったらいいのか計算します。(Rj註:Gouraud shadeと呼ばれる方式で計算するんだそうですが、私はCG用語に疎いのでわからんちんです。また、原記事には「Gouraud」と書いてありますが、webで探してみると「Gauroud」いう単語の出現が多いような気もします。両方あるのでしょうか?それとも、非常にまぎわらしいゆえにマチガイが多いとか?どちらだかわかりませんが。・・・1999.05.23追記:小川さんに教えてもらいました。Gouraud shade「グローシェード」だそうですので、Gauroud「ごるー」って書いてあるところがマチガイみたいです。小川さんいつもありがとうございます。m(_   _)m)このやり方は異様に計算が早く済むので、描画に照明効果を与えるには最善の方法に思えるやもしれません。

例えば、「墓荒らし其の二」でLaraお嬢がフレア(発「炎」筒)を焚いた時、その照明効果、つまり、壁や床やLaraお嬢自身の照らし出される様子は、頂点照明で計算されます。

しかし。UnrealとQuakeは通常この手法を採りません。発揮しうる効果が限られているからです。「陰(或いは影)」やその他の非Gouraud shade照明の効果は、この頂点照明だけでやるのはむつかしいのです。そこで、UnrealやQuakeでは「明かり地図」(light maps)を使います。対象となる三角形に使う「二枚目の壁紙」としてそれを用意するのです。明かり地図を使うと、Gauroud shadeを使った「塗ったくり」でなく、三角形上の「明るさ」を直接指定することが出来ます。つまり、「陰(或いは影)」とかもちゃんと出せるのです。

(Rj註:私の訳の能力が欠如してそうなので補足します。

・・・よけい分かりにくくなったような気もしますが・・・以上、長いRj註)

この方法を使うと、表現の自由度が格段に上がります。が、代償として、描画がのろくなります。明かり地図を使うと、3D描画加速回路の為により多くの壁紙(Rj註:明かり地図の喰うファイルサイズの分)をダウンロードしなければなりませんし、描画回路は一つの三角形を二回描かねばなりません。これが、ぶーづ2が二つの壁紙描画用回路を有している理由です。一つは通常の壁紙用、もう一つは、明かり地図用、と。

Mark(Rj註:Adamsさん。Ken Cobbさんの同僚で、Westlakeのエラいひとです。)がUnrealでこの頂点照明オプションをATIのカード(RAVE描画)用に加えた理由は、明かり地図を使うより頂点照明を使う方が描画が速いからです。Quake3にも同じ理由でこのオプションが設けられるでしょう。

と。やっとこれで謎が解けました。Kenさんありがとう。。。

(1999.05.23追記:例えばQuake3テスト版などで、Vertex Lightingの方がLight Mapを使った場合よりも三割くらい速いぞぅ、なんて結果が1999.05.03頃Accelerate Your Mac!'s Gaming News Pageなんかに並んでたようです。)

<♪ぱやぱやぱ〜、ぱやぱやぱ〜♪>

やんちゃるモンちゃ、シンパしいを感ぜざるを得ません。未だにああいう部分が強く残ってる(コドモな)私は、いつも自らの手綱を取るのにくろうしまくり・・・(しばしば取り損なってます、ハイ。)・・・で、全然学習しないタチです。どうだ、まいったか〜。(参らないってば)

(以上1999.05.01)


3.ぁ-...

熱問題

最近あちいです。私の750も過熱気味で、325/130の設定では時々凍ってしまうようになりました。G3Throttleで制御したりしていたのですが・・・ややめんちいので思い切って緑のダイヤルスイッチを久々にいぢくりました。

60nsのDIMMへアクセスするタイミングを考えると(60ns+αでアクセスしに行くのには)motherboard busは46MHz(マージン取って21.7ns×3=65nsくらいでアクセスすることになる)前後がいいらしいので(というのは、だんぼさんとこにあるH氏からの手紙に載っていた、Tak.さんお墨付きのNewerTechのひとの話を読んだ私が勝手に理解(誤解?同じですか。)した範囲で書いてるだけです。私のゴカイによるウソ、大げさ、紛わらしい等「JAROに電話され」級のものになってるかもしれないのでごちうい下さい。)、43.3MHzだったそれを45MHzにして、CPU速度をちっとだけ落として315/126で運用することにしました。

体感的には全然変化ありませんが、フルパワーで計算させても凍らなくなったのでまんぞくです。

余談ですが、BS cacheの動作比を落とすとCPUもちっとすぢしくなって安定するのでは?といった感触も最近得てます。あちくて不安定になったひとは、中を開ける前に(可能ならば)BS cache動作比を落とすと多少改善される場合があるかもしれません。私の場合、325/130ではモロに連続的高負荷を掛けると凍結する室温で、325/108に下げたら凍結しなくなったりした、というのと、315/126ではG3StripおよびSpeedMeter1.3でのTAU温度表示が摂氏44/43度だったのに対し、315/105にしたら40-44/39-43度(ふらふらする)に下がった、ということだけが根拠ですが。。。(この温度は、rc5desクライアントに目一杯CPU力を割り振ってforegroundで2^30ブロックくらい連続クラックさせた時の数字です。)

w95J

POSEIDONさんの頁で知り、その後助言まで頂いてしまった(POSEIDONさんありがとうございました。m(_   _)m)Blue Label Power Emulator(以下BLPE)ですが、無事に別途入手したwindows(以下w)95Jをインストールして、念願の「モニカ嬢拝謁」が叶いました。やったやった♪

因みにこのエミュレータ、数万で売ってるメジャーどころと比べるとさすがにのろいらしいのですが、ただ一つのkissデータを見るのが目的でPC/AT機を買い込んだりメジャーどころのMac用ソフトを数万で買ったりするのはちょっと厳しいなぁ、といった類のひとにはお薦め・・・かもしれないです。20弗くらいですし(wを入れたい場合は別途入手の必要がありますが)、私の環境(7300+MACh Speed G3+MacOS 8.5.1J+α、ぶーづ2及びRAGE Proカード刺しっぱなし、外付けHDDにBLPE関連書類をインストールした状態)では何も考えずにちゃんと動きました。(BLPEのLoaderへのメモリ割り当てを128MBくらいにすると起動しなくなりましたが・・・原因不明です。今んとこ120MB当てて動かしてます。この状態では、wに割り当てられるRAMは86MBと認識されるようです。通常の用途なら十分かと。)

動作速度の印象としては、多分ぺんちum(© Zap2さん当然So!/1999.05.23)の100MHzを積んだPC/AT実機よりはのろいんぢゃないかと思います。BLPE+どす上のどす版クライアントでは340k keys/secだったRC5クラック速度も、w32用のGUIクライアントでは(画面の解像度や色数でも大分変わりますが)200k keys/sec未満でした。やっぱり描画が最大のネックになってるのかもしれません。

どうでもいいけど、ま〜ぱ六月号p.219右下のグラフ/数字、ちょっとだけものすごく間違ってません?

しかし、たかがkissデータ一つの為に血迷い、こびとの不評を買ってまでエミュレタ+w95Jを入れてしまった私としては、もっと血迷うしかないぞ、と思い、Quake2のデモ版を入れてみました。そもそもそれが何なのかも全然理解せぬままにDirect× 6.1とかいうのをごそごそ落としてきてw95Jにインストールし、Quake2のデモ版も入れて立ち上げてみると・・・わはは。走った。うごいた。出来た♪

けど、予想された通り「のろすぎ」で実用にはなりませんでした。320×240のsoftware renderingで、文字通り紙芝居です。音も、ずたずたにぶちキレてしまいます。「動いた。」だけですね、本当に。そこで次に、3Dポリゴン的計算をしなくていいまらてょん2のデモも落としてみました。Direct× 2.Xというのが必要らしいのですが(6.1がそれの上位互換なのかどうか知りません。)、一応起動はしました。が、タイトル画面やchapter冒頭の絵までは出るけど、ゲーム画面に入るところで謎なエラーが出てアプリを強制終了させられてしまいました。なんかくやしいよぅ。。。

で、やっと本題(?)なのですが、ここまでの試みで、「W版unreal」をこのエミュレタ上でやってみることは・・・諦めざるを得ないとさすがの血迷いRjも判断しましたとさ。。。

しゅん。。。

余談すぎですが、へた字のw版ってのも入れました。が、なんか漢字が汚くなっちゃって、あんましよくないみたいです。ちっと哀しかったです。。。


4.現状・・・

こないだ起動volumeで「不適切なPEOF」というエラーが出ました。物理的ファイル終端部分が、論理的それと矛盾してる、ってことらしいのですが、Disk First Aidで治せないと言われたので、ぅがぁっ!って思いながらバックアップを取って再初期化しました。

そこにフルインストールしたunrealが入っていたのですが、それ以来unrealをインストールしていません。。。つまり、全然やってません。アホな目的でエミュレタなんか入れてるヒマあったらunrealやればいいのに、と思ったりもするのですが、なんかめげめげなのかもしれません。unrealをやる為の気力を欠いている気がします。私のエミュレタ遊びは、ある種の現実逃避なのかもしれないな、とも思ってます。。。

(以上1999.05.23)


前に戻る次へ進むもくじ頁


Rj's Chaotic Page
http://homepage.mac.com/rj_chaos/chaos/
mailto:rj-taka@t3.rim.or.jp
antithesis