この頁では、私Rjがあのおそろしい3Dゲーム unreal をやってみて思ったことなどを書きます。決して中上級者向けの技術向上参考頁にはなり得ないので、御了承下さい。私はにぶいのです。。。今回は、暖かい季節を迎えてやや辛くなってしまったPPC750@325/130MHz、謎だったVertex Lightingについて、intel x86系CPUのエミュレータの話などです。unrealの話はどこいったんだ・・・(1999.05.23)
昔は結構な値段で売っていたそうですが、タダになって配布されてます。Etherで組んだネットワークに一台「橋」たるマシンをかませて、LocalTalk接続のプリンタを使えるようにするやつだそうです。私もそのうち試してみたいと思いつつ、いつになることやら・・・(古いマシン用にEtherカード買おうか知らむ?)
気温が上がってきて、せまっちいとこに置いてある私のMacは熱問題にちょくめん・・・ぶーづ2カードとG3カードを刺した(デフォルト設定では問題無いはずですが、勝手に50%近くもクロックアップしてる)せいか、どうも温度が上がり気味なようです。昨夏はぶーづ2カードは無かったけど604eがあちかったので、夏場はせんぷうきでMacに風を当ててしのいでました。(Mac本体から排出された熱気がこもってしまう配置なので、それを吹き飛ばす目的です。)今年は・・・なんだか過熱して凍結してると思われることがあったので、暑い日には既にせんぷうきを回したりしてます。。。
うーん、それでも酷暑になったら辛いかもしれない、と、これらを使ってみることにしました。コントロールバーに750のTAU温度を表示させたり、CPUの仕事に「待った」を掛け、実効動作速度を下げることが出来ます。温度がやばくなってきたら、ちょっと速度を落としてやればOKです。これは便利。
やたら暑い日でも安定して動く速度にCPUカードのスイッチを設定してしまうと、涼しいときに勿體無いので・・・というより、既に325MHzで固定してしまった気分なのでまたハコを開けて設定しなおすのが面倒な私には、これは非常にありがたいです。早速登録しました。今んとこ特に不具合は出てません・・・というのは作者さんにレポートしないといけませんね。
(1999.05.23追記:レポートしました。作者のkykzさん、お返事までありがとうございました。)
Zap2さんも1999.04.22の「当然So!」でご指摘のように、アイコンパレードの途中で止まるんだったら、それは起動時最初のメモリチェックの段階ではないとは思いますが・・・いずれにせよ私の場合、インタリーブが効く(はずの)メモリの刺し方でも、そうでなくても、実用上「使える」CPUの動作速度上限には「大差ない」という感触を得ています。しばらく前の「本末転倒モード」どっぷりの時に。。。
いいメモリをうまく刺すと安定動作の上限も多少上がるの_かも_しれませんが、既に書いたように私の場合は外部SCSI機器を結構いい加減に使いたい場合もあり、これが不安定になってしまっては困るので、現在(325MHz/130MHz)以上の速度に挑戦する気は今のところありません。
和風マシンをむむむくす化するのにも共通の事情?はあるやうです。
(1999.04.25追記:Zap2さんが1999.04.24の「当然So!」で一般的な「ちぇっく」手順を書いて下さってます。CPUアップグレードカードを刺す場合の。)
最近ちっと血迷って、x86エミュレータを試してみたりしました。MacBochsというやつで、試用出来ます。購入しても30弗くらいなので、よさそうだったら買おう、と。(何に使うかは訊かないで下さい。Mac版の「French Kiss」では見られないモニカ(YAT!に出てた、あの気のつよい子)のデータを見るため、ではありません、決して。。。)
で、結果ですが・・・いや、モニカの結果はありません。MacBochsは80386エミュレータなので、GUIみたいなOSらしきアレを載せるのはむりむりでせう・・・ひとまず、FreeDOSだのDebianだのを載せてぶうと出来たので、意味もなく「わあい♪」とか喜んでみました。
しかし。あまりに、遅い。distributed.netのclientでのRC5クラッキングレートを並べますと(clientの「Benchmark」機能を使ったものです。知人の古いマシンなどでも試しました。数字は大雑把です。MacBachsの結果は、FreeDOS上で走らせたx86-DOS用clientのものです。)、
MachBochs@750/325_i386 : 2k keys/sec* SE/30@68030/16MHz : 4k keys/sec* PB520@68040/25MHz : 20k keys/sec PC/AT 1@Pentium/100MHz : 130k keys/sec PC/AT 2@PentMMX/166MHz : 320k keys/sec? 7200/90@PPC601/90MHz : 150k keys/sec 7300/180@PPC604e/180MHz: 580k keys/sec 7300/180@PPC750/325MHz :1100k keys/sec 500めが超かっぱぁ(533) :1652k keys/sec(某所での単CPU最速値)
(*印は、短いテストです。長いテストより少し数字が低く出るようです。)
(?印のとこ、やけに高いんですが、v.2.7105以降、むむむくす的回路をうまく使えるようにでもなったんでしょうか、クライアントの改善で。。。)
上の結果に基づくある試算によれば、MacBochsでのエミュレート速度は・・・80386sx/5〜6MHzに相当?・・・しかし私の手違いでこんなのろい結果が出てるのかもしれません。私のこの当てにならないデータだけを見て、MacBochs自体がこの程度のエミュレート能力しか持たないとは考えないで下さい。
うーむ、GUIみたいなOSらしきアレも動くという、「Blue Label Power Emulator」も試してみようかなぁ・・・こっちは20弗くらいなんですが、どうも試用前に購入せにゃならんようなので(実はチガウのかもしれませんが・・・このサイト、私に言わせるとかなり辛いです。からい、ではありません。最初、サイトのトップにリンクを張ってみたのですが、絵を読み込まないと「何も出来ない」「何もわからない」状態なので、仕方無く「main.html」にリンク先を変更しました。といっても、この「main.html」もかなり苦しい構成です・・・)、ちと躊躇っています。MacBochsよりは使えそうな気もするのですが・・・
※なお、このエミュレータを探すに当たって、p.241で「できれば・・・『Yosemite』を含むようにして欲しい」とか言ってる雑誌ではなく、POSEIDONさんの頁を参考にさせて頂きました。ここで御礼申し上げると共に、もしBlue Labelか何かを試してみていい感触が得られたら報告させて頂きたいと思ってます・・・(が、やんないかもしれません。。。GUIみたいなOSらしきアレも入手しないといけませんし・・・)
(1999.04.26追記:POSEIDONさんに教えていただきました。青らべるPEは、やっぱり購入前の試用は出来ないそうです。VirtualPCよりは遅いけれど、そこそこ使えているとか。私も試してみようかな・・・どきどき)
(1999.04.30追記:やってみました。。。まだどすだけですが、RC5、340k keys/sec。)
p.241で「できれば・・・『Yosemite』を含むようにして欲しい」とか言ってる雑誌、ですが(言ってるのはH氏であって雑誌そのものではありません。しかし、雑誌とはそういう見方をもされる時があるのも事実でしょう。)、私はずっと以前からいろいろお世話になっています。いい記事もあっちこっちにたくさんありますし、これからもよりよい情報の提供を期待しています。原始媒体というその宿命的性質を踏まえて、誌面作りの方向性をもう少し検討した方がいいのではないか、などとド素人の私に言われたくはないでしょうが・・・電子媒体、例えばwebの利用が普及していく中で、更に意義のある「在り方」を見出せるものと信じます。外部の書き手の方の意図やお金の問題、その他にもいろいろあるのでしょうが、最終的なところは編集部で構築する方針にかかっている部分も大きいのではないでしょうか。何かを作る際にまず重要なのはその理念、そういうことは、Macintoshを愛用するひとたちなら日頃から十分感じ、理解しているものと思います。がむばつてくだせい。
(こんなとこでこんな暴言吐いてても、誰も読んぢゃいないか。。。あそうだ、METAのkeywordsに「G3, Power, Mac, Yosemite」とか入れてみようか知らむ?ふふふ。)
日本語サポートはいつになるんでしょね。iCabのこと、興味持った人も忘れちまったりしないかな。。。いや、日本語対応すれば思い出しますか、たとえ忘れちまっててても。
iso-2022-jpだとiCabで見られないとか、charset行があるとShift_JISでもダメだとか、そういうことがあるのと無関係ではないと思うのですが・・・現段階で私にはiCabは「使える」ものではありません。そう、簡単に言うと、日本語をマトモに通してくれないブラウザなんて、私の用途では「論外」です。そして・・・最近化ける頁が多いのはちと面倒です。(METAでのcharset指定にはいろいろな意見があるのも承知しています。しかし、現実的には、今のところこれしか解は無いのではないか、とも思っています。)
(とか言いつつ、実質上iCabやMacLynx等ごく一部のweb user agentで見た場合にしか意味を持たないLINKなんかを試験的に混沌周辺の一部の頁に埋め込んでみたりしてる私ですが。。。)
言う迄もないことやもしれませんが・・・私が一部の日本語サイトもぢらで見たときに化けるのは、iCabのせいではありません。ここでの記述は、iCabを非難するものではありません。また、iCabで見られるようにとcharsetを省いているひとを非難するものでもありません。それは維持者の自由ですし、私がどうこう言う筋合いのものではありません。
ぢゃあ何か、って?iCabがはやくにほんごにたいおうしてくれるといいな、ってだけです。(の割に表現がぎすぎすしまくってますが・・・)
こいつもまだ「使える」もんぢゃないですけどね、私には。。。(あ、「全角」で表示されるべきだ、ってんぢゃないです。そもそも、2バイト文字を「全角」と言うことに問題がある、という意見もあるようですし、その意見も理解出来ます。単に、M4で見た日本語は今までのブラウザで見たのとチガウや、と思ったので書いてみてるだけです。「ほぅ、独自のれんだりんぐかや。」と。)
コンバトラーV、破れたり・・・
「ハイビジョン」の宣伝(喧伝)の為か、某放送局がやたら「世界一」「世界一」と謳ってますが、何がどう世界一かを憶測しますと、多分その重さ・・・ではなくて、近赤外線領域辺り(目で見える「可視光」よりも、ちょっと波長の長い光)で、現在ニンゲンが持ってる「目」の中では一番遠くがよく見えるものだ、ということでせう。可視光でも既にHubble Space Telescopeよりよく見えてるみたいです。
調整に今しばらくかかるそうですが、本格的に観測が始まったらいろいろ面白いもんが見えてくるでしょうね。うちうに於いては、遠くを見る則ち過去を見る、ということでもあります。私たちの存在の由来、そんなことに関わってくるネタと思います。いつの日か、Pfhorのほしやら何やらも見えたり・・・は、しないかもしれませんが。。。
余談ですが、400おくえんという費用が出たのは・・・アネットさんのぱぱ、小平桂一先生の説得のおかげだそうで。「亜米利加の望遠鏡でも借りればいいぢゃないか」という政府のひとに対して、「文化は自ら育むものだ」とかいうようなことを説いたとか。いいぞぅ!
トライガンのアニメがここの制作でしたが、最近もじうべえやらさくら等、いいですね。
音楽とかゲームとかまた例によってぐだぐだ言ってるようですが・・・古き善き魔女狩りの伝統ですか。いい加減にしませんか、現実から目を背けるのは。(って、誰に言ってんだ?少なくともここの読者の方々でないことだけは確かですが。)
(以上1999.04.25)
最も効率的な殺戮とは、直接空爆することではなく、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註:私の訳の能力が欠如してそうなので補足します。
- vertex lighting
ポリゴン(複数の角錐を組み合わせたもの)の、ある一面(たとえばNaliさんのほっぺたの一部など)の色を、その「面(めん)」を構成する頂点に割り当てられた色と、そこにもともと貼られている壁紙(texture)つまり皮膚の色を基に、それらを混ぜたりなんだりしてどう塗ったくるか計算します。
- light map
各「面」の明るさを指定することによって(もともとそこにあった色と、その「明るさ」を重ね合わせることによって)、vertex lightingでは表現出来ないことも表現出来ます。
Marathon 2をお持ちの方は、第一面の「影の部屋」を思い出してみて下さい。(入り口から向かって右奥へ進み、Bobさん達の(その面では冒頭のシーンに続いて二回目の)援護を受けた先にある二股の左側の広い部屋です。combat shotgunを拾える場所へ行く為の隠し扉が入り口から見ると右奥にあり、左には「明るい空の暖炉」みたいなのがあるとこ。Pfhor FighterさんとDroneさんが何人かゐて、あたたかく出迎えて下さいます。)中央の箱に、左の光源によって「(この場合は)影」が作り出されているでしょう。アレは、床の壁紙(変な表現ですが)は周囲と同じなんだけど、明るさを暗くすることによって「影」を表現しています。表現方法としては、これと似たようなもんかと思います。
・・・よけい分かりにくくなったような気もしますが・・・以上、長い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)
最近あちいです。私の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ブロックくらい連続クラックさせた時の数字です。)
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版ってのも入れました。が、なんか漢字が汚くなっちゃって、あんましよくないみたいです。ちっと哀しかったです。。。
こないだ起動volumeで「不適切なPEOF」というエラーが出ました。物理的ファイル終端部分が、論理的それと矛盾してる、ってことらしいのですが、Disk First Aidで治せないと言われたので、ぅがぁっ!って思いながらバックアップを取って再初期化しました。
そこにフルインストールしたunrealが入っていたのですが、それ以来unrealをインストールしていません。。。つまり、全然やってません。アホな目的でエミュレタなんか入れてるヒマあったらunrealやればいいのに、と思ったりもするのですが、なんかめげめげなのかもしれません。unrealをやる為の気力を欠いている気がします。私のエミュレタ遊びは、ある種の現実逃避なのかもしれないな、とも思ってます。。。
(以上1999.05.23)