忍者ブログ

Memeplexes

プログラミング、3DCGとその他いろいろについて

3D酔いの原因

3D酔いとは?

3Dゲームをしていると乗り物酔いのように気分が悪くなり吐き気を催すことがあります。
これを3D酔いといいます。

例えばマイクロソフトのシューティングゲーム、Halo(体験版はこちら)は
面白いゲームですが3D酔いでその面白さが半分台無しになっています。

ワートホグ(車のこと)に乗れば5分も経たずに気分が悪くなってきます。
視点が揺さぶられるわカメラが障害物をすいすい(この「すいすい」がいけません!)避けるわで
すぐにゲームを続けたい気持ちとさっさとトイレに
駆け込みたくなる気持ちの間でアンビバレンツに陥ります。
(まぁしばらくすると落ち着くのですが)
3D酔いの原因

この3D酔いの詳しい原因はよくわかっていませんが、
大体の原因は目から入る情報と三半規管から入る情報のミスマッチであることは間違いないようです。
(こんなことがわかっても3D酔い対策はほとんど出来ないのであまり意味の無い話です。)

つまり、目からは「自分は動いている」と言う情報が来るのに
三半規管からは「自分は止まっている」と言う情報が来るので
脳が混乱して気分が悪くなったり、吐き気がするというわけです。

これはちょうど乗り物酔いの逆で、乗り物酔いの場合は
目からは「自分は止まっている」という情報が来るのに
三半規管からは「自分は動いている」と言う情報が来るわけです。
(ですから乗り物酔いになったときは外の風景を眺めてこの情報の食い違いを解消するのです。)
しかしこれは「情報のミスマッチ」が酔いを引き起こすと言う点で同じです。

また似たような症状として「宇宙酔い」があります。
宇宙酔いというのは宇宙の無重力空間でやはり気分が悪くなり吐き気を催してしまう症状のことで、
現在スペースシャトルの乗組員のだいたい60%が最初のフライトで宇宙酔いに悩まされます。
この原因はおそらく重力が打ち消されているからで、
実際宇宙飛行士が特に吐き気に襲われるのは地上の、
重力のある環境ではありえないものを見たときです。
(例えば同僚の宇宙飛行士が頭をにしていたりとか)
これもやはり目と三半規管のミスマッチが引き起こすものです。

このことから考えて、乗り物酔いにしろ3D酔いにしろ宇宙酔いにしろ全て
目と三半規管から脳に入ってくる情報のミスマッチ」が原因であると考えてよさそうです。



ダーウィン主義的理由

情報のミスマッチがなぜ吐き気をもたらすのでしょう?

一般には単に「それは脳が混乱するからだ」と言われますが、
オックスフォード大学の心理学者のマイケル・トリーズマンは
驚くべき、しかし説得力を持った別の説を提唱しています。

その説によると、「脳はわざと気分が悪くなり吐こうとしている」のです。
一見ありえなさそうに思えますがそうでもありません。
風邪を引いたときに高い熱が出るのは体内の病原体を殺すためです。
同様に、乗り物酔いになり、吐き気がするのにもきちんとした理由があるという理屈です。

この説は次のように進みます。
動物が何かを吐くのは、毒があるものを食べてしまったときに体からそれを排除するためです。
吐き気と言うのは、毒を食べてしまったときにその個体を操って毒を排除するためのコマンドだと言うわけです。
・・・そして毒と言うのは、たいてい神経に働き、神経系を狂わせます。
ということは逆に言って、そのコマンドを発動すべきタイミングは
神経系が何かおかしくなったときに違いありません。

しかし、「何かおかしくなったとき」とは具体的にどう定義すればいいのでしょう?
自然淘汰は基本的にXPでいう仮実装しかしないやっつけプログラマーなのでこう「考え」ます:
「脳のいろんな部分の重力に関する意見を聞けばいい。
重力が無くなったり変わったりすることなんてありえないからいい指標になる。
それでどいつかの意見が食い違っていたらこれはきっと神経系がやられてる。」
よし!これでとりあえず動くでしょう。

かくして、脳の内部に存在している重力(というか加速度)をあつかう
モジュールのいずれかの間で情報の食い違いが発生すると
神経系が毒で狂っていると認識し、「吐き気コマンド」を発行することになりました。

さて、そのような生存機械がもし車の後部座席に乗って本を読んだり、
Haloをプレイしたり、スペースシャトルに乗って無重量状態を体験したらどうなるでしょう?

これがこの説のエッセンスです。
酔いというのは、限られた環境では上手く動く防衛機能が暴走するすることによって起こる、
花粉症のようなものだったのです。

教訓

このことから何が言えるでしょうか。
具体的には、3D酔いを防ぐために何が出来るでしょう?

理論上、神経系がおかしくなったと認識されなければ3D酔いにはならないはずです。
しかしそうするには目から入る情報と三半規管から入る情報を一致させなければなりません。
(いや、目と三半規管に限定するのは危険かもしれません。
脳の中でミスマッチを生むものならなんだっていいはずです)


かといって完全に一致させることなど不可能です。
ゲームをプレイする人は普通いすの上に座って静止しています。
画面が動けば即アウトです。
そんなゲームはちっとも楽しくありません。

もっとも実際にはそんなに厳しくなくて、ある程度動きは許容されるはずです。
というのも自然状態では脳のモジュール間のある程度の誤差はつきものだからです。
少し違ったくらいで毎回吐いていたら体力が持ちません。逆効果です。
おそらく誤差がある閾値をこえて初めて「吐き気コマンド」が発動するのでしょう。

ということはゲームの画面をある程度「止まっている」ように見せればいいはずです。
ある程度、画面を非現実的にして、脳がその情報をあまり信じないようにすればいいかもしれません!
ゲーム画面の視野の角度を小さくして臨場感をあえて抑えると言うのが手です。
いやでも角度が小さすぎてもそれが何らかのミスマッチを生み出し逆効果になるかもしれませんね・・・。
(そして、理論を弄って出る結論としてよくあることですが、こんなことは最初からわかっています!)

カメラをごちゃごちゃ動かさないというのもいいかもしれません。
あんまり動かしすぎると脳内のミスマッチが大きくなる可能性があります。

あるいは逆にカメラワークを上手くすることによって
脳が画面からの情報を重視しないように出来るかもしれません。
もちろんその条件はわかりませんし、第一こんなことが出来るかどうかもわかりませんが。

ソフトウェアからできるのはこのくらいが限界でしょう。
しかしハードウェアを使ってもいいのなら、動く椅子なり
三半規管に電極をつないで動いているような信号を出力させるなり
方法はいくらでもあるはずです。

つまり結論は、「人類はさっさと電脳を実用化させて3D酔いを克服すべきだ」と言うことですね!


 


拍手[0回]

PR