2015年03月03日の日記です

目次

03-03 クールライダーズ
03-03 Winファイル共有で「別のマシン」に繋がるトラブルの解決


クールライダーズ  2015-03-03 09:30:01  業界記

▲目次へ ⇒この記事のURL

クールライダーズの発売はいつ頃だったかな…

ネット上の資料を見ると、発売時期が1994年4月説と、1995年4月説があるようです。


でも僕、入社(1994年4月)後にテストプレイしてたよ。どんどん改良されて面白くなっていく過程も見ている。

1995年までは食い込んでいなかったはず。タイトルのコピーライト表記も1994だし。


お盆休み明けにはまだテストプレイ筐体が置いてあったけど、秋にはもうなかった気がする。

夏の終わりごろに出たのかな。



#後日追記

 クールライダーズの販促チラシに、1995.4 という表記があるようです。1995年4月説はおそらくこれが元。

 でも、画面には 1994のコピーライト表記がある。1994年4月説は「4月」を信じた上で、年だけをコピーライト表記に合わせたのでしょう。

 実際には、チラシが作られたのと発売タイミングは違っていた、というだけかと思います。





ゲーム内容ですが、拡大・縮小スプライトを使った…つまり、2Dハードで作られた3Dレースゲームです。

アウトラン(1986)とか、ラッドモビール(1991)みたいなゲームね。


系統としてはアウトランナーズ(1992)の続編にあたります。

見比べてみるとゲームの核の部分はだいたい一緒、ということがよくわかります。


ちなみに、アウトランナーズ自体AM1研の作品。


#アウトランは、部署が1つしかなかった頃の作品。AM1でも2でもないです。



そういうゲームを1994年に出す、というのは、すでに時代遅れでした。


ポリゴンハードウェアが出てきた初期の頃は、まだバーチャファイターのような人型を動かすゲームは難しく、主なゲームはレースゲームでした。

クールライダーズが作られていたのは、そんなポリゴンレースゲームが次々発表になっている頃。


真面目にレースゲームをやりたい人は、もうポリゴンで作られたものしか眼中にありません。

なので「真面目なレース」を求めていない層に向けて作られました。



もうね、めちゃくちゃなの。激しく抜きつ抜かれつしながら、世界中を数分間で走り回ってしまう、という内容。

この「世界中」も、ナイアガラの滝の上を走ったり、イギリスならネッシーが首を出すネス湖のほとりを、中国なら自転車の交通ラッシュの中を、日本なら忍者が走り抜ける座敷の中を、って、明らかに間違った世界イメージをわざと打ち出している。


詳しくは、こちらのページこちらのページを読んだ方がいいでしょう。


「クソゲー」とか「馬鹿と紙一重」と言いながら、クールライダーズが愛されていることがよくわかります。

どちらの方も、このゲームの世界観を非常に良く伝える文章です。




このゲーム、使用基板がとても変わっています。H1ボード。テレビゲームで使われたのはこれ1作だけ。


#後にコインゲームで使われていたはずですが。


H1のHは Hi-Vision のH。当時は「ハイビジョンの時代が来る」と言われていて、ハイビジョン対応で開発された基板です。

でも、ハイビジョンの時代はまだまだ先だった。


はっきり言ってしまえば、「その時」に備えて、ハード作成者が技術を習得するための試作品でした。


試作品といっても、開発して終わりじゃない。

それが十分量産可能であることを確かめないといけない。


つまりは、ハイビジョン時代なんて来てないのに、ハイビジョン対応基板をたくさん作ってしまったのですね。

作ったからには使わないといけない。


「この基板の機能を活用できるゲーム、なんか作って」と注文が来るわけです。



#当時、各社がこぞって「ハイビジョン対応ゲーム」を試作・発表していました。

 ちなみに、今の「デジタルハイビジョン」とは違う、アナログハイビジョンね。


 1993年には、ハドソンがハイビジョン対応ボンバーマン作って、かなり話題になりました。




ハイビジョンはモニタが非常に高いです。

そこで、H1では、もう少し解像度を落とし、 24KHz モニタ2画面の同時出力モードも持っていました。


1枚で2画面の「対戦ゲーム」が作れます。

ついでに、通信機能もついていましたから、それも活用すれば最大基板4枚、8人同時プレイに対応できます。


#1枚で2画面出力・通信もできる、というのは System 32 multi が持っていた機能。

 その基盤の出力解像度を上げた、と考えることもできます。



ただし、まだ最新ボードで、製造コストに加えて開発コストが上乗せされてるため、ボード単体でも高価です。

そこにゲーム開発コストを載せて、十分値段に見合うゲームを作らないといけない。


でもこのボード、ポリゴン3Dが普及しつつある時代に、スプライトの機能が充実した2Dボードでした。

だって、「ハイビジョン対応」が新しいチャレンジなのに、さらにポリゴンなんて最先端機能入れたら収集付かなくなるもの。



まぁ、それは開発側の都合。

一般的に見れば、値段はバカ高いのに時代遅れの基板、というだけです。


ゲームなんか作っても、普通に考えてお店は買わないよね。


それでも納得して買ってもらうためには、他にはない強烈な個性を出さなくてはならないわけです。

3D全盛の世の中に、2Dじゃないとできない! すごい! ってゲームを作る。


その答えが、バカバカしい、「ありえねー」と笑いながら遊べるノリのゲームなのでした。

実際、クールライダーズは非常に強烈で、遊んだ人の記憶に強く焼き付いているようです。


上に書いたような理由で、お店があまり買ってくれなかったから、そもそも遊んだことある人少ないだろうけどね。




開発の中盤、部内でテストプレイ位は出来るようになったけど、まだまだゲームバランスなどは取れていなかった頃は、グラフィックが強烈なだけで、案外普通のレースゲームでした。


ただ、順位効果がすごく強いのね。負けてる人ほど速く走れる。

だから、抜きつ抜かれつのレース展開になるようにはなってました。


真面目にタイムアタックするようなレースゲームではなくて、みんなで楽しむゲームだ、ということですね。

この方向性は最初から定まっていたようです。



ある時、分岐点に大量の「矢印を持ったお兄さん」が配置されました。

この人たち、ぶつかるとポコポコ音を立てて吹っ飛び、道に転がります。


なかなか衝撃的な絵でした。

全体に実写の取り込みで作られているから、人が立っていたら人だと思うわけです。


でも、ぶつかったらポコポコ飛んでいく。

2Dゲームだから、この人たちただの板です。その板が実物である、というゲーム中の了解をあえて破り、ただの板のように扱ったのです。



それ以降、どんどんそんなノリが増えていく。

わけのわからんキャラクターが画面狭しと暴れまわるようになっていく。


で、ある時急にゲームの展開が激しくなりました。

どうやら、自分の「速度」にたいして、画面上の進む距離を倍にしたようでした。


きっと、いろんなステージをすぐに回れるように、デバッグ用の設定なのだろう…と誰もが思ったら、企画者から「これが正常な速度だよ」と。

あり得ないような展開、テンポの良いゲーム運びを実現するために、倍速で動くようにしたら面白いからこのままいく、という判断でした。


最初は違和感を感じたけど、慣れると実際テンポのいいゲーム展開なんですね。

その昔、アマチュアCGアニメーションコンテストの入賞者が、「自分で作った動画を2倍速で回すとテンポが良くなる」と言っていたのを思い出しました。


自分で苦労して作ると、ゆっくり細かなところも見てほしいと思ってしまう。

でも、あえてそこを2倍速にするくらいでちょうどいい、という話。



2Dスプライトの拡大縮小で3Dを表現している、というのも上手に使っています。

つまりは、計算で3Dを出しているわけではない「嘘」があるのですが、この嘘によってすごいスピード感を演出しているのです。


ちゃんと計算すると、遠くのものはゆっくり動きます。これは当たり前の話で、ゆっくりなのでスピード感は出ません。

WING WARが飛行機の激しい空中戦なのにのんびりしているのはそのため。


でも、アフターバーナーは「嘘の」3Dなので、すごいスピード感です。

本当なら遠くでも見えるはずなのに、ある程度から先は見えないことにしているの。


だからゆっくり動くことはありません。スピード感を演出できます。

ポリゴンでやったら、急に敵が出てきておかしいわけだけど、2Dならごまかしも利く。



クールライダーズは、見事にその時主流だった「ポリゴンレースゲーム」ではできない世界を作り上げて見せたのです。




詳細は知らないのですが、今になって思うと、開発コストを下げるのは至上命題だったのかな、とも思います。

先に書いたように、基板が時代遅れなのに高いから、ゲームの開発コストを下げないと売れない。


CPU が違うから、アウトランナーズのプログラムをそのまま使うことはできなかったはずです。

でも、ほぼ同じシステムを移植することから初めれば、少なくともゲームの調整は「ある程度できている」ところから始められる。コストが削減できます。


そして、グラフィックは基本的にすべて実写取り込みでした。

全部描くよりも、取り込んでちょっと調整する、というだけに留めれば、グラフィック作成効率を上げられます。



当時、セガの重役が「アメリカではモータルコンバットが売れている。どこが面白いのかわからないが、ヒットに学ぶ必要はある」と言っていたのを覚えています。


もしかしたら、実写取り込みは上層部の指示であった可能性もあります。



この実写取り込み、参加する「ライダー」などはプロのモデルさんも頼んだけど、ある程度は社内・部内の人だったはず。

この記事書いていて思い出したけど、たしか一人は「ちょっとみせて」の最後に参加して絵を手伝ってくれた同期。


#「ちょっとみせて」のスタッフロールでも、彼はクールライダーズの格好・音楽で登場していたのを思い出しました。



たしか、トライク(3輪バイク)に乗っている親子の子供の方は、部長のお子さんじゃなかったかと思います。

別に部長が子供を出したがったとか親ばかな理由ではなくて、モデル事務所に子供がいなかったのだと思う。


#子役って、普通は子役専門事務所になる。


先に「親子連れ」ってイメージがあったので困って部長に相談したら、じゃぁうちの子連れてくるよ、とかそんなの。




バカバカしいものって、実はかっこいいものよりも作るのが難しいです。

ストーリー漫画よりナンセンスギャグマンガの方が難しい、というのと一緒。


ここら辺、作る現場の人でないとわからないかもしれないけど。



その点において、クールライダーズをまとめた企画の人は、すごい力量の持ち主でした。

こんな無茶苦茶なものを、ちゃんと面白いゲームとしてまとめ切っている。


細かなテクニックなんて不要です。

ガンガン障害物にぶつかってもすぐにゲームに復帰できますし、どんなに他のプレイヤーと離れても、順位効果が強いからすぐに追いつける。


それじゃぁ大味なゲーム展開になるのではないか、とおもいきや、実はちゃんとテクニックがある人は速く走れるようになっている。

順位効果は強いけど、先頭が「見える」範囲まで近づいたら後はテクニックが物を言う世界。

障害物にぶつからずに走れる人が、結局1位を取るんです。

ここでも、「初心者でも勝てるチャンスがある」けど「努力は評価される」といううまいバランスを作っている。


そして、こんなレースをやっている間に、世界中の名所が、あり得ないビジュアルで目まぐるしく移り変わる。

ゲームに集中していても、その世界が異常だと気づくくらい異常。


ナイアガラの滝とか、滝のすぐ上を走っていくんだけど、落ちても大丈夫。

落ちると空中をどんどん落ちて行って…ドスンと落ちると、またコースの上です。一体どうなっているの?


深く考えてはいけません。「なんじゃこりゃ、ありえねー」と笑いながらゲームを続行するのが正しい。



こんなゲーム、なかなか作れるものではありません。

この世界観を「最初から」目指して作っていたら、多分悪ふざけが過ぎるだけのクソゲーになるよ。


先に書きましたが、途中のテストプレイ段階では、十分に普通のレースゲームだった。面白かった。


でも、そこから世界観が無茶苦茶になるようにあえてゲームを壊し、速度を倍にするような危険も犯しています。

一度完成したものを壊していくって、作る側としては本当に怖いよ。


そして、ゲームの根幹部分はちゃんと「面白い」まま残して、見た目だけでも笑いを取れるゲームに仕上げる。


これが、ただの悪ふざけとは違う部分です。

企画者の腕が良くないと作れない。



WING WARは別の企画者ですが、似たような部分があります。

シリアスなはずの空中戦なのに、どこかコミカルなゲームでした。


タントアールだって、ダジャレ満載だし、ゲーム内容単純すぎるし、ふざけているように見せかけて結構熱いゲームになっている。


こういうノリ、当時のAM1研が最も得意とするところでした。


▲目次へ ⇒この記事のURL

同じテーマの日記(最近の一覧)

業界記

関連ページ

ダイナマイト刑事【日記 16/10/27】

Windows で、二つのネットワークにまたがる VPN 設定を行う【日記 16/12/02】

Harley-Davidson & L.A. Riders【日記 18/02/16】

別年同日の日記

02年 3/3

17年 ロジェ・カイヨワ 誕生日(1913)


申し訳ありませんが、現在意見投稿をできない状態にしています

Winファイル共有で「別のマシン」に繋がるトラブルの解決  2015-03-03 23:39:24  コンピュータ

▲目次へ ⇒この記事のURL

QNAP をしばらく前に導入したわけだけど、なんだかうまく共有できないことがあった。


おかしいなぁ、と思いながら、僕は使えていたので気にしていなかった。

でも、妻のマシンから QNAP にアクセスできない。


僕のマシンでも、ごくまれにうまく接続できないことがある。不安定。



時間がなくてなかなか追及できなかったのだけど、やっと原因がわかった。


多分レアケースで、同じようなミスをする人がそれほどいるとは思えない。

でも、そんなこともあるんだ、って例として書き記しておこう。




まず、最初に環境について。


仕事のために Linux サーバーを立ててある。

この Linux サーバーには samba が入っている。


samba っていうのは、windows のファイル共有を Linux でも使うようにするソフト。

実は、QNAP の中もこれで動いている。


一時は、ネットワーク上に2つの samba サーバーを共存させるのに何か相性問題とかあるのか、と疑ったのだけど、最終的にこれは関係なかった。


Linux サーバーは、家庭内 DNS サーバーとしての役割もある。


DNS は基本的に各マシンを登録してあるのだけど、登録していない名前でアクセスが発生した時は、Linux サーバーの IP アドレスを返すようにしてある。


仕事で WEB アプリを作ることが多く、Apache に仮想サーバー設定することが多いためだ。


適当な名前でアクセスした際、Apache がサーバー名で動作を変える。

この時、いちいち DNS 設定の変更なしに新たな仮想サーバーを作れると便利だ。




以前、I/Oデータの Landisk シリーズを NAS として使っていた。


これ、確か初期設定でサーバー名が landisk-1 となっていた。

じゃぁ、って DNS にも landisk-1 で登録した。


QNAP を導入した際、置き換えだったので同じ IP アドレスを割り振った。

同じ IP アドレスにしたのは、もし IP アドレスが変わったことで問題が出るような環境があると嫌だったから。


もっとも、QNAP と Landisk は共有ディスク名などが違ったので、IP アドレス一緒でも同じファイルパスでアクセスできなかったのだけど。



で、QNAP がホスト名を決めろ、と言ってきた時に、ここは「NAS」とした。

landisk じゃないのに landisk-1 と呼ぶのもどうかと思ったし、今後 NAS を買い替えることがあっても、NAS という名前ならそのまま使えるだろうと思ったから。


で、動かしたら動き始めた。問題ない。

Windows からネットワークを見ると、NAS というサーバーが見えている。


ところが、僕の環境ではアクセスできたのに、なぜか妻の PC からアクセスできない。

NAS を開くと、どういうわけか、Linux サーバーの方の samba に接続してしまうのだ。


これが解決できなかった。




今日、(妻がたまたま出かける用事があったので)妻のマシンを長時間借りて調査。

妻の環境でだけおかしいので、妻のマシンの設定を疑ったのだけど、それほどおかしそうなところは無い。


すぐに Linux サーバーに接続してしまうので、試しに Linux サーバーの samba を停止してみる。

すると、QNAP に接続するようになった。


ありゃ。もしかして、samba を同一ネットワークに置くとおかしくなるのか?


でも、前の Landisk だって samba だった。

なにか、ネットワーク上で同居しやすい設定とかあって、そこが微妙に違うのかな?


ここから、samba の設定お勉強タイム。

実のところ、Windows のファイル共有には詳しくないのだけど、一つだけ分かったことがある。


windows の共有の仕組みは、基本的に「何も考えないで良い」ことになっている。

でも、Linux で windows の共有に参加しようと思うと、かなり細かな設定が必要。


そして、設定を間違えても気づきにくい。

windows 側で、それなりに「おかしな設定」でも吸収してしまうようなのだ。さすが windows 、よく出来てる。


でも、おかしいものはやっぱおかしい。

エラーにならないでそれなりに動くからこそ、不具合部分が何に起因するのかなかなかわからなかったりする。


…ということを解説しているページがあって、根が深そうだと暗い気持ちになる。




Linux の samba を止めればうまくいくのだから、何か設定を間違えているのだろうなぁ。

そう思って、samba の設定ファイルをいろいろと変えてみる。


でもうまくいかず。


他にももっと何かないか…と思っていたら、samba のトラブルシューティング方法を書いた HowTo 文書を見つける。

(Linux の世界には、技術を初心者に教えるための HowTo と呼ばれるテキストが数多く残されている)


ここで初めて、体系だった方法で悪い部分を見つけ出すことができるようになった。

順次トラブルシュート手順をこなしていく。


11の手順が示される中の、8番目の手順。

Windows 側から、コマンドラインで \\NAS に接続しようとすると、そんなマシンは存在しない、と怒られた。


#\\NAS 、というのは、Windows のネットワーク共有をコマンドラインから指示するとき、NAS と名付けられたサーバーの意味。


これに対する対応方法も書いてあるのだけど、それは「NetBIOS がおかしい」ことを前提としたものだ。

どうもそうではない。NetBIOS はおかしくない。でも、何かがおかしい。


Windows は、ネットワークの一覧に NAS を表示している。でもそのマシンがどこにあるかがわからない。

認識しているマシンが認識できない、という言葉にするのもおかしな状態になっている。


いろいろ試していて、気まぐれに IP アドレス指定してみると、見えている。

じゃぁ、と思って \\landisk-1 を指定すると、これも見えている。


でも、ネットワーク一覧の中では landisk-1 は出てこない。NAS が出てくる。


えーと、つまり、ネットワーク一覧に NAS として認識されるけど、landisk-1 を指定しないとアクセスできない、と、そういうこと?




DNS に NAS を登録していなかったことを思い出し、landisk-1 の別名として登録する。

これ、後で登録しなくちゃな、と思ったまま、なんとなく動いていたから忘れていた。


これで動くようになった。



さて、一体何が起こっているのか、samba と DNS にどんな関係があるのか、情報を整理しておこう。




samba のそもそも論から入ろう。


Windows では、SMB (Server Message Block)というプロトコルでファイル共有を行う。

これを UNIX からも使用できるようにするためのソフトが、samba だ。


SMB は「ファイル共有」だけを行う。UNIX でいうと、NFS (Network File System)に当たる部分だ。


NFS の場合、ファイル共有は相手サーバーの名前を指定することで行うが、ネットワークは「名前」では接続できない。

このため、名前を IP アドレスに変換する必要が出てくる。これを名前解決と呼ぶ。


UNIX では、リゾルバと言う仕組みで名前を解決する。

リゾルバでは、ローカルファイルに書かれているデータベースか、ネットワークに存在する DNS と呼ばれるデータベースの仕組みを使って名前解決を行う。


Windows の場合、名前解決には NetBIOS という仕組みが使われる。

UNIX の DNS の場合、データを集中管理しているので仕組みが簡潔な反面、管理が結構面倒だ。


NetBIOS では、各マシンに名前を付けるだけで良い。

あとはマシン同士が勝手に、うまいことやって名前を解決してくれる。とても便利だ。

その反面、DNS よりも仕組みが複雑になる。複雑さを反映して、速度が遅かったりもする。


#Windows で「ネットワーク」を開いても、すぐに目的のマシンが表示されなかったりしたこと、ありません?



samba では、 SMB と NetBIOS を、それぞれ smbd と nmbd という二つのソフトで扱う。


smbd は、SMB プロトコルを、nmbd は、NetBIOS プロトコルを解釈する。



ファイル共有と名前解決の方法を、それぞれ持っている。

だから僕は、samba は DNS とは無縁だと思い込んでいた。




NetBIOS は設計が古く、インターネット時代に対応できていない。

普通のネットプロトコル… TCP/IP と共存できないのだ。


そこで、現在は NetBIOS over TCP/IP と呼ばれるプロトコルに移行しているらしい。

面倒なので、これも NetBIOS と呼ばれてしまう。


そして、samba のサーバー側でなく、クライアントの Windows マシンの方では、もう NetBIOS だけには頼っていない。

名前解決の方法は複数ある。これを、一番ユーザーにとって扱いやすいように、ミックスして使う。


先に UNIX では、ローカルファイルと DNS の2つの方法で名前解決する、と書いた。

Windows では、これに加えて WINS と NetBIOS を混ぜ、4つの方法で名前解決する。


#上に「DNS」と書いたのは、実際には UNIX のリゾルバ相当の意味で、ローカルファイルと DNS サーバーを適切に組み合わせる。

 そのため、「ローカルファイル」は、NetBIOS 用とリゾルバ用の二つがあることになり、都合5つの名前解決方法がある。



さて、どのようにミックスするかは非常にややこしい。

しかし、基本的に速度の速い方法から順にためし、解決できなかったら次の方法を試してみる、という動作を繰り返す。


ここで、僕が家庭内 DNS の設定として、登録されない名前は Linux サーバーに向かう、としていたことが問題となる。

DNS に何を問い合わせても、とりあえず解決してしまうのだ。


そのため、NetBIOS の出番は無くなり、DNS 設定されていないが NetBIOS は認識している、という名前が正しく処理されなくなる。


これが、「ネットワーク」の一覧に出てくるホストに接続すると、別のサーバーに繋がってしまう、という現象の正体となる。



ちなみに、WINS サーバーは NetBIOS の遅さを解消する仕組み…だと思う。我が家では使っていないし、使ったことないから正確なところがわからない。

DNS みたいなものだけど、NetBIOS の仕組みを使っているので、自動的に名前を収集して設定が手間いらず、というようなものだと思う。



妻のマシンではアクセスできなくて、僕のマシンではアクセスできたとか、Linux のsamba 止めただけで、名前解決できないはずの QNAP にちゃんと接続できたとか、よくわかってない部分もある。


Windows が非常にややこしい方法で、ユーザーが何も設定しないでもつながる仕組みを作ってくれているので、トラブルが起こった場合は何が起こっているのか推察するのが難しい。


#文句を言っているのではない。問題は正しくない DNS 設定にあったのであって、Windows は悪くない。




原因を見つけるのに時間がかかったが、原因がわかれば後は簡単。

NAS を DNS に登録した。これで完全解決。


知らない名前は全部 Linux サーバーへ、という設定も、本当は良くないのだろう。

でも、開発で気軽に名前を作れるのはありがたいので、この設定は変更できない。



全く同じ問題に遭遇する人は、おそらくいないと思う。


でも、Windows の共有設定は NetBIOS で名前解決するので、DNS は関係ない、と思っている人は結構多いのではないかな。

DNS サーバーが混ざっていて、設定が絶妙だとハマることがあるよ、という情報は、ほんの一部の人にとって役立つかもしれないので、ここに記録しておく次第です。



▲目次へ ⇒この記事のURL

同じテーマの日記(最近の一覧)

コンピュータ

関連ページ

ダイナマイト刑事【日記 16/10/27】

Windows で、二つのネットワークにまたがる VPN 設定を行う【日記 16/12/02】

Harley-Davidson & L.A. Riders【日記 18/02/16】

別年同日の日記

02年 3/3

17年 ロジェ・カイヨワ 誕生日(1913)


申し訳ありませんが、現在意見投稿をできない状態にしています


戻る
トップページへ

-- share --

10000

-- follow --




- Reverse Link -