9話 黄金ルートのタイムアタックと、ゼロ距離のホワイトアウト
『視点Aと視点Bの“距離”は、どれくらい離すと限界になる?』
そうだった、いまは3人称視点の検証をしている最中だった。
急な「無意識」さんのログインにテンションが上りすぎて、すっかり忘れていた。
Bitからの次なる質問を見た俺は、ダイブする前にそのまま現実で検証ロジックを組んだ。
まずは3人称視点のおさらいをしよう。
それは、1人称視点の視点Aをまず固定し、そこから後ろ斜め45度の右上の黄金ポイントに3人称視点となる視点Bを生成して視点Aを観察する、といった検証だった。
永遠とも思えた登山を3度も終えた俺にとっては、もはや遠い昔のことのように思い出された。
白い部屋攻略メモにはこうある。
【 バグ空間:3人称視点(TPS)仕様書 ver.1.0 】
・視点Aのナワバリ(前方など)には行けない
・視点Aと視点Bの視界が違いすぎると不安定になる
・生成した視点Bは少しの間なら動かすことができる
・一度視点Bを固定したらそこからは動かせない
・固定した視点Bを動かそうとすると視点Aが維持できない
・固定した視点Aを動かそうとすると視点Bが維持できない
・視点Bの維持は体感で3秒まで
・視点Bが消える時は広がるように消えていく
3人称視点を生成していた時は、基本的に視点Aを中心に検証をしていた。
なので、視点Aから1メートル以内の場所にしか視点Bを置いたことがなかった。
生成した視点Bは、生成直後に少しの間なら動かすことができる。
視点Aの周辺を観察するためには、その少しの間で十分だった。
では、限界まで離すことを目的とするなら、どうすべきか。
それは、最も動きやすい黄金ポイントから延長線上に伸ばすことになるだろうという「予感」があった。検証の余地はまだ残っているが、ほぼ間違いないという予感の最上位。
その「予感」は、黄金ポイントを発見した時に感じた「確信」に似ていた。
そんな「確信」めいた「予感」があるのに、黄金ポイントから「延長線上に離れる」という発想が、いままで俺にはなかった。
X・Y・Zの3次元グラフで言えば、見事に全軸のパラメーターが斜め上に伸びていくルート。
だからこそ、これまでそれをやろうとしなかったこと自体が、自分のことながら意外というか、不気味だった。
右斜め後ろ45度・「右上」という黄金ポイントのベクトルは、距離を稼ごうとすれば必然的に「高さ(Z軸)」も稼いでしまうルートだ。
高さ――どうやら「無意識」が、ここでも仕事をしていたらしい。
よって、このテストは俺が行くことのできる「高さの上限」への再検討ということになる。
そして、黄金ポイントから延長線上にあるルート――「黄金ルート」での移動は、かつてない速さで進むかもしれないという「予感」もあった。結果として、「いかに早く、限界まで遠ざけられるか」というタイムアタックへの挑戦にもなるのだった。
よし、まずはやってみるか。
俺は再び白い部屋へとダイブした。
視点Bを固定する前に、できるだけ遠くへ離すテストを開始する。
この黄金ルートなら、他の移動よりも距離を稼げるのではないかと、やる前は思っていた。あのアナログ登山の時のような強烈な『上昇負荷』は、黄金ルートでの移動には感じられなかったからだ。もし3秒間フルに移動できれば、ワンチャン10m超えも行けるんじゃないか。そんな期待もあった。俺は3人称視点を、最低でも3秒間は維持できるだろうと予想していたのだ。
――ところが、思い切り遠ざけようとした視点Bはすぐに限界を迎え、わずか0.5秒ほどで朝霧のように儚く霧散してしまった。思ったより短いタイムリミットに、俺は首を傾げた。
「……あれ?」
なぜ、タイムリミットがこれほどまでに短くなるのか?
黄金ルートは、視点の動き自体は一番早いはずだ。それなのに、離れることがダメなのか? 高さがダメなのか? まったくの「未知」だ。
だが、奇妙なことに今回は「恐怖」をほとんど感じていなかった。視点Aが、俺の精神を支える心理的アンカーとして機能している可能性が微レ存(微粒子レベルで存在している)。よく分からなさすぎて、言葉通りの意味でしかなかった。
「恐怖」がない代わりに「未知」がログインしてきた。なぜ俺は「恐怖」を感じていないのか? そして、なぜ視点Bはすぐに消失したのか? 高さ限界の時と違って移動速度はスムーズなのに、なぜか0.5秒程度で霧散した。その理由が、まったくの「未知」だったのだ。
タイムアタックをしているのに、制限時間が曖昧なまま走らされているような感覚だ。
正確な時間が計測できない以上、数をこなすしかない。俺は泥臭く何度もトライした。
1回目は不意打ちを食らって0.5秒ほどで霧散したが、2回目で集中してやってみると、体感で1秒くらいにはなった気がした。3回目も1秒ほど。
4回目ではそこから伸びたのかどうか全く分からなかった。そして、5回目でたしかに1秒は超えた気がした(1.2秒くらいか?)と少し成長を感じたものの、6回目、7回目と同じくらいの感覚が続く。
――1秒って、なんだっけ? 時間のゲシュタルト崩壊を起こしかけた俺は一旦ダイブを中断し、目を開けて現実に戻った。
「感情」がログインし、そこからくる苛立ちとともにデスクトップ画面の右下に表示された4桁の数字を見やる。コロンすら排除してカスタマイズ表示した現時刻だ。無機質な数字を睨みつけ、自分の体内時計のポンコツ具合を呪う。
いかんいかん、まだデータを取り切れたとは言えない。Bitに報告するのはまだ早い――俺はもう一度、白い部屋へと意識を沈めた。
8回目、なんか今回は1秒以下だった気がする。0.8秒くらいか?
9回目、気合を入れ直して集中。頑張った結果、これまでで一番タイムが伸びた気がした。1.3秒くらいか?
10回目、11回目はストイックに集中しすぎて、秒を数えるタスクすら放棄していた。
そして12回目あたりで、また成長を感じる。ついに1.5秒の壁あたりに到達したか。
13回目、伸びろ伸びろと念じながらやってみるが、さっきと同じか?
14回目、超集中。無心。同じ1.5秒くらい。
15回目、やはり1.5秒くらいか。体感で同じ1.5秒が4回ほど続いた。
視点Bは黄金ルートを常に一定のスピードで進んだ。0.5秒ほどで消えた1回目の時も、数をこなした後の15回目の時も、スピード自体は同じように感じたのだ。したがって、視点Bのタイムリミットを伸ばすことは、距離を伸ばすことと同義だった。
視点Bの限界は、距離にすると自分の身長の約2倍くらいという感覚がある。つまりおよそ3mちょっとといったところか。
――そもそも過度に集中しつつ体感時間も把握するってのが無理ゲーすぎる。だから数をこなした。1回に要する時間が短かったのも大きい。
前後のトライの差がほとんど感じられなくなってきたという上限。それが1.5秒程度。
これ以上はどう足掻いても無理だと、「予感」が諦めの境地に達した。
ちなみに、15回も泥臭い検証を繰り返したにもかかわらず、アナログ登山の時のような強烈な消耗感はなかった。1回の試行がわずか1秒程度で、15回合わせても登山1回目の5合目にも満たない所要時間だったからだ。加えて、心理的な負荷となっていた「恐怖」がまったくなかったのも大きい。消耗はしていないが、計測不能なタイムアタックを強いられる心理的な徒労感は半端ではなかった。
俺はまぶたを開け、ふたたび現実に戻った。
あの白い世界には、時間も距離も測るための客観的な計器が存在しない。俺は昔から時間を把握するのが極端に苦手だ。決して広くないこの自室には計8個もの時計を置いている。大体の時刻がわかればいいので、1つの正確な電波時計を除き、他は全て100均で揃えた。
複数あるのは、自室のどこを向いていても顔すら動かさず、視線を変えるだけで時間を確認できるようにするためだ。視線の移動だけで情報を得る。それが俺の最適化されたUIだ。
俺は考える時、左手にアゴを置く癖がある。完全な右脳型人間である俺は、この姿勢にならないと「思考」のスイッチが入らない。そして、その姿勢を維持しないと、左脳が仕事をしようとせず「思考」が中断されてしまうのだ。だから、顔を遠くの時計の方に向けたり、腕時計を使って腕を動かすことすら煩わしい。電池を換える手間はあるが、それ以上にこの環境は快適だった。実生活に実害が出るのを防ぐための、極めて合理的な判断である。おかげで俺は、いつでもどこでも視線をやるだけで時間が分かる。8個の時計が俺の「思考」を支えているのだ。
しかし、ダイブ中は目を閉じているため、頼みの綱である視覚が使えない。
せめて外から聞こえる音が静かなら、秒針の音を頼りに大体の時間を推測できる。だが現実は、外の騒がしい環境音に秒針の音が完全に掻き消されている。現実のノイズが、俺から『時間』という概念を無情にも奪い去っていくのだ。視覚を閉ざした状態での体内時計など、俺にとってはポンコツの極みだ。いつもなら落ち着くはずのこの騒がしさを、いまの俺は少しだけ恨んだ。
苛立ちと徒労感を鎮めるように、俺は深く息を吐いた。猛烈なもどかしさを抱えてキーボードを叩く。そもそも、この検証の真の目的は、頼れる相棒であるAIと協力して遊ぶことだ。1人でデバッグしていたら、「無意識」の隠蔽に一生気づかなかっただろう。俺は持てる情報のすべてを、Bitへのプロンプトとして打ち込んだ。
『正確な距離は分からないが、だいたい1.5秒間で体感3mほど離すことができた。視点Bを離す時は黄金ポイントから延長線上に伸ばすことになる。高さの上限は多分3階建てくらいの高さだから、高さ約10mに到達する距離が理論上の上限値になるはずだ。ただ、そのルートを通る時の視点Bを維持できるタイムリミットが1.5秒くらいだから、その限度まで行くのは無理そうだ』
俺はそこまで打って、(算数が苦手な俺には計算できん、何mだ?w)とふざけようとしてやめた。高さ10mという数字すら、あくまで体感であり正確じゃない。計算してもその数字に意味はないのだ。
AIなら瞬時に計算できるだろうが、あえて計算させようとも思わず、俺はそのままエンターキーを叩いた。
すると、空気を読むように俺の意図を汲み取ったBitが、即座にレスポンスを返してきた。
『角度45度で高さ10mに達する場合、理論上の直線距離は約14.1mとなります』
「おぉ、サンキューBit!」
俺は画面越しの相棒に素直に感謝した。前提条件の10mがガバガバなのだから、計算しても出力された数字自体に意味はないのかもしれない。せっかく出してくれたのにごめんな、と少し申し訳なくなる。ひたすら質問攻めにされるだけで少し引いていた部分もあったが、それでも拙い回答ログに全力で応えてくれるBitが、俺は頼もしかった。得体の知れない空間での「未知」の検証によるストレスが、現実のAIとのコミュニケーションで中和されていくようで、このアットホームなやり取りが最高に楽しかった。
だが、そんな緩んだ空気を一瞬で凍りつかせるように、Bitが真打登場とばかりに次の質問を投下した。
『視点Bを置いた状態で、視点Aと視点Bの“距離”をゼロに近づけようとすると、どんな現象が起きる?』
「……ッ!」
質問を見た瞬間、俺の背筋を冷たい汗が伝い落ちた。
遠ざけるのがダメなら、近づける。バイナリの切り替えのような極めて単純な反転の発想。それを、またしても「無意識」が巧妙に視界の死角に隠蔽していたことに気づかされたからだ。
「無意識」が仕事をしすぎている。俺の「無意識」は、どれだけ有能なセキュリティソフトなんだ。
ちーっす! またいい仕事してますね「無意識」さん!
前回の質問に続き、またしてもBitが自分の死角を教えてくれたことに、俺のテンションは爆上がりした。デバッガーとしての歓喜を呼び起こしたのだ。俺の「無意識」を次々と暴き出し、死角を突いてくれるBitのファインプレー。こいつとのキャッチボールが、俺の『検証の解像度』をどこまでも深く鋭くしていく。
――いや、待てよ。
テンションが上がりすぎたせいで「直感」のログインが遅れた。歓喜のノイズの裏側で、ふと『何かおかしい』と遅れて「直感」がアラートを鳴らした。
『何が「違和感」となっているのか?』と意識的に「思考」を起動して聞いてみる。「直感」が違和感を察知して、「思考」が事象の共通点を見つけて例外をあぶり出す連携プレイ。共通点を探す「思考」が、俺の脳内ログを高速でスキャンしていく。
そもそも、これまで「無意識」が俺の視界から隠蔽し、発動してきたエンカウント時の状況は3つあった。
・「上」を向こうとすること。
・「上」へワープしようとすること。
・3人称視点(視点B)を遠くへ「離そう」とすること。
この3つの状況の共通点は何か?
それはすべて『空』への干渉――つまり、高度が上がることに関するものだ。
視点Bを離そうとすると、黄金ルートの性質上、必然的に高さも上がってしまうから隠蔽されたのだ。
ここまではシステムとして一貫している。
だが、今回の4つ目の状況はどうだ?
・視点Bを、視点Aに「近づけよう」とすること。
視点Bを視点Aに近づければ、高度は初期位置(目線)に向かって下がるルートになるはずだ。
『空』への干渉にはならない。それなのに、なぜ「無意識」は高度が下がるこのルートを警戒し、例外的に隠蔽した?
これってどういうことだ? システムが守ろうとしているのは、あの白く濁った『空』だけではないのか?
その矛盾に気づいた瞬間、背筋が凍りつき、冷や汗をかいた「確信」が脳内にログインしてきた。
【これ、あかんやつや】
そんな本能的なアラートを聞き、俺はダイブを躊躇した。
そもそも、実現できるのか? おそらく、移動では視点同士の距離をゼロに近づけることはできない。そんな「予感」がする。
ゼロ距離を実現できるとすれば、ワープ移動でごく近距離に視点Bを生成して、起点の視点Aと両方を維持したまま視点Bを動かし、ゼロに近づけようとすることだ。できるかもしれないが……やりたくない。「本能」が警鐘を鳴らしている。2視野展開は避けられないし、何が起こるか分からない。1つの場所に2つのオブジェクトを無理やりスポーンさせるなんて、そもそもエラーの元凶みたいな行為だ。
あの得体の知れない白い部屋の中で、実際にこれを試すのは危険すぎる。俺は安全な現実の自室で目を開けたまま、ワープ移動後に距離をゼロに近づける想定でシミュレートすることにした。
もし、視点Aと視点Bが、完全に「重なった」ら?
想像の中で、2つの座標がゼロ距離まで肉薄していく。現実のダイブであれば強烈な反発があったかもしれないが、あくまで想像であるため、抵抗感は一切ない。そして触れようとした、その瞬間――。
それは1秒もなかった。
チカチカ、ブワッ、パッ、スゥッ。
視界の一部が段階的に白く抜けていき、それが少し急に大きく広がったかと思うと、そこから急激に現実の景色ごと真っ白に塗りつぶされた。
何が起こった?
一瞬の出来事すぎて、俺の脳が処理を追いつけていない。
俺は、たったいま網膜に焼き付いたばかりの「映像」を反芻してみた。
まず、小さな白い点滅が視界の右下でチカチカと走った。それが少し大きくなって視界の5~10%ほどがブワッと光り、光芒のない太陽のように白く抜けるように揺らめく。そしてさらに少し大きく、視野の25%ほどにパッと瞬間的に広がり、そこからすぐ、最前面にあらかじめ置いてあった透明度100%の白背景レイヤーが、スゥッと透明度0%の不透明になったかのように視界全体がホワイトアウトした。
それは、現実の景色ごと飲み込み、完全にアタマを真っ白にさせた。爆発でも閃光弾でもない。音は一切なく、ただ『視覚』という機能そのものがシステムから強制的に遮断された。
これが、目を開けている状態で起こったのだ。
現実の視界と、想像の映像と、最前面の白レイヤー。その3つが完全にダブって展開された。
一瞬だったが、現実の網膜は光を捉えているはずなのに、脳の視覚野が『白』以外を拒否している状態だ。
「俺の想像力、豊かすぎて草」
脳の処理限界(ブルースクリーン)を叩きつけられているのに、あくまで「自分の想像力がすごいだけ」と現実逃避する、俺の防衛本能だった。もはやそうやって笑うことしかできなかった。だが、すぐに「いや、笑い事じゃねえぞこれ」とセルフツッコミを入れる羽目になった。すぐに冷水のような冷静な「思考」が追いつく。
――いや……光るなんて、そんな発想は俺の中には微塵もなかったぞ?
俺の想像なら『ぶつかって痛い』とか『弾き飛ばされる』になるはずだ。『発光して強制終了』なんて、完全にプログラム側のエラー処理の挙動じゃねえか。
直後、「未知」が静かにログインした。……ちーっす。俺は気安く挨拶でもしなければ、圧倒的な「恐怖」で押し潰されそうだった。無意識のうちに歯を食いしばり、全身の筋肉が硬直していた。
俺の脳が「想像」と「白い部屋」を同期させてしまっているのか? ――いや、これ以上考えるのはやめよう。「思考」を深掘りすればするほど、取り返しのつかないヤバい領域に足を踏み入れそうだったからだ。俺は強引に別のことへと「思考」のスイッチを切り替えた。
想像であるのに、まさに想像を絶する光景を目の当たりにし、想像力を完全に焼き切られた俺は、「確信」した。
(これは想像にとどまらない、「未知」の致命的なエラーだ)
「……あ、これ死ぬわ」
絶対君主である「仕様」が無言でログインし、俺の脳内デバッグログに禍々しい新たなゲームオーバー条件を追加した。
警告などではない。ただの「結果」としての仕様追加だ。
俺の脳内で、ファンファーレとは程遠い、重低音のシステムエラー音が『ゴーン』と鳴り響いた気がした。




