Bloch equation simulator と バーチャル学会2023

ワールドの作成と公開

2023年7月、「Bloch equation simulator」という名前のワールドをVRChatにアップロードした。端的にいえば科学の解説系ワールドである。この時私には、作りたかったものを作った達成感、どこかに自分の愚かさの痕跡が残っていないかという恐怖、その一方でこの作品もまた忘れ去られ誰かに語られることがないだろうことへの不満と悲しみがあった。

そして何より「なんでこんなものを作ってしまったのだろう」という思いがあった。私はすでに科学・技術について語るということはもうやめようとしていた。Twitterは休止し、noteの記事もすべて取り下げていた。私は仕事では自らの愚かさを晒す恐怖に耐えて報酬をもらっているけれど、プライベートでそれをする理由はもう無いように感じていた。いいかげんなことを面白おかしくおしゃべりする方が報われているのをさんざん目にしても、私はそうなりたいとは思えずただ徒労感だけが募っていった。辞めるのはその面で当然の結論だった。

だからまだこういうものを作ろうとする情熱と、作ったからには公開したいという気持ちが自分の中に残っていたことに私自身が困惑していた。ここでの私の情熱とは「ブロッホ方程式の単純さを伝える」ことだ。ブロッホ方程式は核磁気共鳴(NMRと言った方がなじむかもしれない)の説明によく使われるもので、かなり多くの人が興味を持っている。ところがブロッホ方程式自身は単純な運動しか表さないのに、その理解には苦労しやすい面がある。とくに微分方程式の解き方を学んだり、その3次元空間上のベクトルを数学的に表示する方法に習熟したりするような、物理の人が取るようなルートをなぞって理解するのは一朝一夕では難しい。

物理学者になるつもりならその苦労は十分報われるだろう。しかしNMRの原理を用いた測定技術自体に主な関心のある人や、あるいは病院で受けるMRIの検査にちょっと興味を持った人が同じ過程を踏んでも報われるかどうかかなり怪しい。そもそも単純な運動なのだから、それを実際に見ながら説明する方が、その人のニーズには合わせやすいのではないだろうか。その運動を普通の工作をもって実現するのは大変だけれど、VRならその技術基盤の上で比較的簡単に実現できる。それが私の考えたことだった。

このアイディアで実際に作ってみるまでに見落としていたことがある。私のアイディアは、知らない人が知っている人に教えてもらうのがポイントだ。つまりコミュニケーションツールなので、複数の人が同時に同じものを見なければいけないのである。「なにを当たり前のことを」と思うのも無理はないのだけれど、速く滑らかな運動を距離的に離れたユーザー同士で共有するのに必要な工夫を私はかなり甘く見ていた。つまりVRCSDKで用意されているVRC_ObjectSyncと呼ばれるコンポーネントを追加すれば済むと思っていたのだけれど、それでは求めるクオリティにはならない。ユーザー間でオブジェクトの位置などを合わせる処理を行うことを同期と呼ぶのだが、このワールドの場合、同期の処理は自分でプログラムを書く必要があった。

さいわい、VRChat向けの同期処理を書くのは私にとってはそれほどの苦痛ではなかった。これは私にとってなじみのある並列計算の手法と考え方が似ているのだ。並列計算では通信が遅くてデータの分配に時間がかかりすぎる場合、あえて同じ計算を別々の装置にさせて結果的に同じデータをそれぞれの装置に用意する方法がある。今回の場合に当てはめれば、誰かが計算した結果をほかのユーザーに配ることで動きを同期させるのではなく、同じ計算をほかのユーザーにもさせることで動きを同期させるという発想になる。もし誰かが運動のパラメータを変更したら、その条件だけを通信して、ふたたび全ユーザーが同じ計算をするようにすればよい。

しかし問題は実装というよりテストだった。同期のギミックはユーザーが複数人いなければちゃんと動いているかは確認できない。個人でも複数の画面を起動して動作の確認はできるのだけど、この場合通信ラグがほとんどないのでVRC_ObjectSyncを使っても問題なく動いてしまってテストにならない。最後は離れた場所にいる協力者がどうしても必要だった。

そしてワールド完成までの間、一番くじけそうになった瞬間がここだった。手伝ってくれそうな人のあてがほとんどいなかったのである。同期の問題自体は、一緒にNMRの配信をしたことのある生命燐さんにVRChatに来てもらった時のテストで分かったことだったのだけれど、燐ちゃんは日ごろからすごく忙しい様子で頻繁には呼べないと思っていた。実はすでにもう奥の手だった。

そこで何人かVRChatにいたフレンドに声をかけたのだけれど、話を聞いてもらえないか、断られてしまうかということが続いてしまった。私は決して人気者ではない。そもそもテストにすら協力してもらえないのに、このワールドが誰かの役に立つことなんかあるのだろうか?そう考えると、自分のやっていることが本当に馬鹿馬鹿しく思えてくる。こうなると分かっているから全てから手を引いたのに、どうしてまた同じことを繰り返そうとしているの?という自問の声に、私は答えることができなかった。

しかし、それでもなお「完成させたい」という情念を抑えることができなかったのである。自分のやっていることを自分に説明できないまま、結局は燐ちゃんにもう一度お願いしたり、以前ワールドの相談に乗ったことがあったえぬふぇあさんにお願いして、なんとか完成と呼んでも満足のいくところまでデバッグすることができた。

実は完成させたところでワールドを公開するかどうかはまだ迷っていたのだが、えぬふぇあさんにワールドの公開まで期待してもらえたことで背中を押してもらえた。私は本当は公開しても無意味だと思っていた。でも手伝ってもらった人に使える状態にしないのもおかしな話だし、そもそも同期を頑張ったのは複数のユーザーで使うためなのだ。ここまで作っておいて公開しないのもおかしい。だからちょっとはやってみようと思ったのである。

そして冒頭にも書いたように2023年の7月、VRChatのCommunity Labsに公開することにした。Community Labsというのは、ワールドが本公開される前に試験的に公開されるワールドが集められるもので、ある一定の人気がないとここを抜けられない仕組みになっている。その間はデフォルトの状態でワールド検索をしても見つけてもらえないなどの制限がかかることになる。

私が悪かったのは初めからこれが負け戦だと思っていたことだった。私はうまくやっていく自信をひどく失っていて、なにか良いことがあるとも、悪いことがあるとすら思えず、せいぜいこのワールドを見た人からそっと嘲り笑われることくらいしか想像できないでいた。ワールドの宣伝についていろいろと提案してくれた人もいたのだけど、私はいま読み返すとぞっとするくらいそっけない返事しかできなかった。私よりもずっと私のことを信じてくれていたのだと思うと申し訳ない気持ちになる。

とはいえちょっと叶わないことだとしても、私はこのワールドがLabsを抜けたらいいなとは思っていた。もし本公開されれば人目について、私の労作が報われる可能性も高くはなる。そこまでの道筋も、そこからの道筋も全く見えてなかったけれど、それは私の中に例外的に存在した淡い期待だった。

解説会@かげんしけん

私にとって予期しない幸運だったのは、9月になってVRChatで行われる科学系ワールドの解説会で私のワールドを紹介するお誘いをえぬふぇあさんに頂けたことだった。実はVRChatで発表をお願いされたのは初めてのことだったので単純にうれしかった。

えぬふぇあさんと初めて話をしたのは確か2021年のバーチャル学会のことだった。それ以前から結晶による回折について取り上げたワールドを作ってらっしゃったのは知っていた。バーチャル学会の時は私もDNAのX線回折の話を発表していたので関連したことを話したのだと思う。その後、上でも書いたようにえぬふぇあさんのワールドについて意見を求められたこともあった。科学ワールド全般がお好きと知ったのは最近で、ワールド巡りのイベントをされていたこともこの頃にはおぼろげに知っていたと思う。このイベントをやっている仮想現実視覚文化研究会(かげんしけん)という集まりについてはあまり知らない状況だった。

解説会でどんな話をするべきなのかそういう文脈で考えたとき、ワールドの技術的な話をしたほうがよいのかもしれないとも思ったのだけれど、このワールドの本来の使い方をお見せするのがいいのではないかと最終的には考えるに至った。つまりブロッホ方程式の運動を提示・共有しながら語ることを実践しようというわけだ。

ブロッホ方程式は単純で、歳差運動と緩和という2つの運動の様式をカバーしていることが重要な点と考えてよい。解説会では実際にモデルを動かしてお見せすることで、その2つがどのような動きなのかを説明することができた。やはりそこにあるかのように見えているということは強力だという手ごたえが私にはあった。参加してくれた人にとっては当たり前のように見えたかもしれないけれど、当たり前のように見えていること自体が私にはうれしかった。

この単純なモデルで核磁気共鳴も説明できることがまた面白いところである。運動と磁場の関係がどうなっていると核磁気共鳴と呼ばれる現象がおこるのか、このワールドでは結果から見せることができる。解説会ではその説明も行ってこれも手ごたえがあった。

質疑応答の時間もいろいろな質問やコメントが出て楽しいものだった。あまり内部的な工夫は話さなかったので、このワールドの見えにくい長所みたいなものは伝わってなかったかもしれないけれど、自分が語っていることが多くの相手に伝わっているという感覚を持てたこと自体が久しぶりで、私がかなり自信を取り戻した瞬間でもあったと思う。また解説会に参加してくれた人の中に、私のワールドを気に入ってくれたと後日教えてくれた人もいてうれしかった。

バーチャル学会をめぐる葛藤

この頃もう一つ考えていたのはバーチャル学会での発表だった。これはVRSNSを用いた学術的な発表会の試みで、上述の通り私は一昨年のバーチャル学会2021で発表したことがあった。バーチャル学会自体を応援したい気持ちはあったものの、前回の私の参加体験は芳しいものではなく、あまり話を聞きに来てもらえなくて疎外感を感じていた。(公式配信のアバターの数を生命燐さんのポスター前と私のとで見比べてもらいたい。いやたまたま私のほうにいてくれたMさんのことを軽んじているわけではなく、数の問題として私のほうは多い時でもあんな感じだった)。

実は翌年のバーチャル学会2022での発表も考えていた。内容は固まっていてアブストラクトまで締め切り前に書きあげていた。しかし内容が以前よりも難しく、発表を聞きに来てくれる人は前回よりもさらに期待できなかった。それは私にとってはつらい。加えてそんな私が参加してもバーチャル学会を応援することにはならないという考えに至って取りやめていた。つまりは自信喪失である。

そして今年のバーチャル学会2023も気にはなっていた。たぶんVRChatのワールドについて発表すれば、前回や前々回に向けて用意したものよりは人目をひくとは思っていた。しかし私はもう辞めた身と考えてたし葛藤があった。正直言って、もうこれ以上傷つきたくない気持ちが先行していたのだけど、かげんしけんでの解説会の様子を見て決めてもよいかなと思っていた。えぬふぇあさんとの日程調整の時にそのことも相談して、バーチャル学会の締め切り前に解説会の日程を入れてもらえることになった。解説会ではうまく言った感じがあったのは上に書いた通りで、そのおかげでバーチャル学会にも出してみる勇気が出たのである。もしそうでなければ出すことはなかった。

出すとなると私が頼るのは生命燐と朝桜さくの両名で、NMRの配信を一緒にやっていた仲とはいえ今回の発表は私の単著なのに、要旨やら紹介動画やら口頭発表のスライドやらを私から勝手に送り付けて貴重な意見をいただいたことを言っておかなくてはいけない。まぁ2人にとっては、そのことよりも私の煮え切らない態度に付きあわされるほうがよほど迷惑だったかもしれない。

予期せぬPublic化

バーチャル学会2023ではデモツアーというものも企画されていた。これは発表に関連するワールドを実際にめぐるツアーで、そこでワールドを見ながら解説するというものだった。そして私のワールドもデモツアーへの希望を出して参加することになっていた。私はぼんやりとワールドのLabs抜けが果たせたらいいなと思っていたので、デモツアーで来場者が増えたりFav数が増えることでちょっとでもLabs抜けに近づかないかなと淡い期待を持っていた。

バーチャル学会の本番は12月9日と10日だったのだけど、それよりも2週間くらい前のある日、デモツアーの後にすればいいのに、どうしてもワールドに手を入れたくなって触ったら、また同期のテストをする必要が出てきた。今回はすっかり元に戻せばどうにかなるのでそれほど悲壮でもなかったのだけど、前回のごとくテストユーザーをいろんな人にお願いすることになった。

そんな中の雑談でLabs抜けの話をすることがあった。私は「Labs抜けなんて夢のまた夢なんですよ」と言ったら、「そうなんですか?」と聞かれたのである。それで私はこのワールドがいかにLabs抜けから遠いかということを客観的に伝えようと思って自分のワールドのステータスを見た。Lab抜けには訪問者数とFav数が重要で、いかにこのワールドのそれが少ないかということを説明しようと思ったのである。その数字はいとも簡単に見つかった。ところが肝心のLabs入りしているワールドであることを表すフラスコのアイコンがどうしても見つからない。

私は動揺して「え、えぇそうなんですよ」とかなんとか言ったはずなんだけど、なんでフラスコのマークが消えているのかがよく分からず、「いやもしかしたらLabsを抜けたのか?」とは思ったけれどそれも何かの間違いだったら恥ずかしいのでそれ以上なにも言わないでいた。あとから落ち着いて調べるとLabs抜けしたのは、実は11月17日のことだったそうだ。なぜその日だったのかはわからない。私がわかっているのは、そんなことは不可能だと思いつつこのワールドを最初にアップロードしてから約4か月たったある日だったということだけだ。

バーチャル学会2023

そんなこともありながらバーチャル学会2023の発表の日となり、私は1日目の12月9日に口頭発表・ポスター発表・デモツアーの3つの形式で発表を行った。

口頭発表のときのちょっとしたエピソードとしては、実は事前に使うように言われていた発表者用のタイマーが動作していなかったことがある。実は2021年の時にもトラブルがあって、それはこちらの問題だったのだけど、手元に用意していた発表原稿をオーバーレイで表示していたら何かの操作ミスで全部飛んでしまったのだった。とはいえ何度も練習していたので、ひどいことにはならなかった。以前にそういうことがあったので、今回も何度も練習して臨んだのだが良かったのか、後から聞いたところ発表時間は問題なく守れていたそうである。

ポスター発表の方は、私は「可視化」のセッションに入れられていた。可視化セッションの発表者は全員デモツアーにも参加していたので、運営の都合で決めたところもあったのかもしれない。ポスターセッションは前回のような閑散はなく、主役とはいえないまでも惨めな思いはしないで済んだ。コアタイムの時は発表者どうしはお互いのポスターは見られないこともあって、終了後に雑談したりもした。デモツアーで見せるワールドを非公開のままLabsに入れていない人もいるという話がでていた。私のワールドがLabs抜けに時間がかかったこともあって「なんなら今すぐにでもLabsに突っ込んだほうがいい」ということを話したりして楽しかった。

デモツアーは公式配信があって、私も以前から存在を認知していたトライアンブリの3人が来ていた。私は朝桜さくさんがTwitter(当時)で三珠さくまるさんに絡んでた(まぁさくさんはいろんな人に絡んでいくんだけど)のがきっかけで知ったような気がする。ほかの二人もレオン・ゼロミヤさんが王子で、衛星ライトさんがDAWのVSTを突っ込む場所を間違えた人くらいの事前知識は持っていた。

ほかの発表者も結構楽しそうに話していて、みんな対応力が高いなと感心していた。私はというと、ちゃんと運動の同期がうまくいっていると聞いてかなり気が抜けてしまっているが、それなりに話せたような気がする。公式配信の3人がかなり盛り上げてくれたということだと思う。

今後の展開

こんな風にこのワールド Bloch equation simulator は私が当初思わなかった経過をたどって人の目に触れることになった。そして今後もVRChatでの公開を続ける予定である。このワールドが今後誰かの役に立つことはあるだろうか?それは私にはわからない。ただそうだったらいいなと思うだけである。

このようにまとめてみると、多くの人に助けられて私はすこし自信を取り戻したと言ってもいいのだと思う。もちろんここに挙げなかった人にも助けられているのだけど、私なりの配慮だったり、私が筆に振り回されて書くべきことも書けてないという事情だったりすることを許していただければと思う。

さてこれで自信を取り戻してすべてがうまくいくようになりました、という話かというと人生はそれほど単純ではない。このような活動を続けることへの情熱はこれから見つけるかもしれないし、やはり私の仕事ではないと思いいたるかもしれない。今後のアイディアとしては、同期回りのことをワールドを作る人向けに少し詳しく解説するとか、このワールドを応用した新しいワールドを作るというような考えだけは持っている。もし実現することがあればぜひ見に来ていただきたい。