4次元多胞体を見るWebアプリ

多胞体

場所

アプリはここソースコード日本語のREADME

使い方

とりあえず、「View」のボタンを押す。 回転する4次元立方体が見えるはず。 詳しくは ここを参照。

経緯

20年以上前、高次元の図形の研究をしておられた京都大学の宮崎興二先生の研究室に出入りして、模型を作ったりCGを作ったりして遊ばせていただいていた。 小品はたくさん作ったのだけれど、ちょっとまとまったものとして4次元の多胞体(3次元の多面体の4次元版)を見るためのアプリを作った。 当時としては、なかなかのものだったと自負している。

その後、本格的に物理の研究やることになり、高次元の図形の話はそのままほったらかしになっていた。

20年以上たった後、ひょんなことから同じく宮崎先生の研究室に出入りされていて現在は弦理論の研究をされている橋本幸士さんから、「高次元可視化」の研究会へのお誘いを受けた。 何を話そうかと考えているうちに、そのアプリのことを思い出した。 バイナリはあって、今使っているMacでもなんとか動くが、OSをCatalinaにアップデートすると動かなくなりそうなことが判明。 ソースコードはあるけれどC++の標準ができる前のものであり、コンパイルはもう通らない。 そのときは「まあ、研究会を乗り切ればいいか」と思っていた。 そして結局コロナのせいで研究会は中止になった。 それは残念ではあったけれど、少しホッとして、そのまま高次元の図形のことは忘れていくはずだった。

しかし、その後ふと考えてしまったのである。 今は何とかバイナリが動くけれど、動かなくなるのも時間の問題だろう。 そうなると、当時は苦労して作ったこのアプリは、完全にこの世から消えてしまう。 それは少し寂しい。 また、調べてみると4次元多胞体を見るというアプリはたくさん開発されているものの、私のものの完全に上位互換と呼べるようなものは見つからなかった。 それで一念発起して、Webアプリとしてjavascript (typescript)に移植することにしたのである。 やってみると案外簡単で1、すぐに当時とほぼ同等のものが出来た。

技術の進歩とは素晴らしいもので、今のjavascriptの速度の方が、当時のネイティブの速度よりも速いのである2。 また、タブレットなどで指で動かす感覚というのは、当時では味わえなかった面白いものである。 今のjavascriptが動かなくなることは、あるとしても相当先のことだろうし3、 そのころには新しい技術に簡単に「自動翻訳」できるようになっているだろうから、 私が死んだ後もネットの隙間で生き続けてくれるものと思っている。


  1. 私が年をとって衰えたにもかかわらず、javascriptやそのライブラリが使いやすいので、トータルでやさしくなった。あるいは、難しいことをいろいろ経験して慣れたので体感の難易度が下がったのかもしれない。 

  2. さすがに当時のネイティブのバイナリを今のマシンで動かす方が速いのは言うまでもない。 

  3. Flashが消えることを考えると油断はできないかもしれない。