第二章 ダンジョンへ

第12話 動き出す螺旋

 俺は蓮田倫太郎。原因は定かではないが異世界に転生し、リンタール・ハッスダとして生きることになった。そして何故かBlenderの力を使えるようになっていた。

 Blenderは3Dモデリングをするためのソフトウェアだ。俺はこの力で様々な物を作る事が可能で、しかもそれを実体化させる事が出来る。

 何故こんな力を授かったのか。そしてなぜこの世界に転生したのか。それは今も分からない。そして、その謎を解明する為に、俺は隣国のタリオテガイのダンジョンに行くことになった。

 このダンジョンを征服せし者は神の前に立つであろう。

 ダンジョンのいたる所にその言葉が書かれているという。俺をこの世界に転生させたのは、きっと神に違いない。そう考え、ダンジョンに行き神を探すことにしたのだ。

 その為に俺は荷造りをしていた。カドルホスさんのおかげで、俺はタラオン教の支援を受けてタリオテガイに行けることになったのだ。表向きは木工職人としての研修旅行だ。その合間を見てダンジョンに行くつもりだった。


「荷物はこんなもんでいいかな。着替えと細工道具くらいだもんな」

 俺は本当は木工職人などではないのだが、表の顔として説明できるように最近は彫刻刀やのみを使った細工の練習をしていた。グビラさんは意外と手先が器用で、簡単な模様なら掘る事が出来る。俺はそれを真似て、最近は毎日練習をしていた。

「その点Blenderは良いよな。道具はいらないし、どこにでも持っていけるから」

 俺はBlenderの3Dカーソルを呼び出す。普段は始まりの空間にあるワールド原点、俺が最初にこの世界にやってきた時の、あの灰色の空間に収まっているらしい。だが俺がモデリングの為に呼び出すとどこへでもやってくる。作り出すオブジェクトはこの3Dカーソルが起点となるから、こいつは欠かすことのできない存在だ。

 試しに立方体を出すと3Dカーソルの位置に出現する。3Dカーソルを移動させながら次々に立方体を出すと、カーソルの軌跡を追うように立方体が出現する。それらの立方体を全て消し、俺は3Dカーソルをつまんだ。

 荷造りが終わって他に準備するものはない。後は週末の土曜日の出発を待つのみだ。もう時間は余りないが、それまでにやっておかねばならないことがある。

「アルキメデスの螺旋……作らないとな」

 俺は言いながらベッドに座り込む。ここしばらく頭を悩ませていたが、ようやくどうやって作ればいいかが分かった。後は実際に作るだけだが、木や鉄で作るわけではない。Blenderの力で作るのだ。


 アルキメデスの螺旋とは、名前の通りアルキメデスの発明したもので、水を汲み上げる揚水装置だ。筒の中に長いスクリューがあり、それが回転するとスクリューの刃の部分に水が貯まり、それが回転と共に上に上がって揚水が可能となる。原理を聞けば簡単なものだが、これをゼロから思いついたアルキメデスと言うのはやはりすごい人なのだろう。

 構造は簡単だ。真ん中に軸がありそれにスクリューがついている。そしてスクリューの直径と同じ内径の円筒を用意する。後はその円筒とスクリューを固定し、水につけて回転させればいい。回転方向を間違えると水が上がってこないので、それだけが注意点だ。

 まずは軸を作る。これは基本図形の円柱を伸ばせばいいので、まず円柱を出す。直径を十センチにして延長を二メートルに。軸はこれで完成だ。

 次にスクリューだが、これは配列とカーブのモディファイアで作る。

 まずスクリューの元となる羽根を作る。これは立方体を出して厚さ二センチの長方形の板にする。ポリゴンが少なすぎるとあとの工程でうまく変形されないので、編集モードに入り右クリックから細分化を二回実行しておく。

 次に板を羽根として配置する。カーブからベジエ円を出し、先ほど作った羽根にモディファイアのカーブを使い、対象カーブとしてベジエ円を選択する。これにより羽根はベジエ円の構造に沿って、つまり円形に配置される。これだけではスクリューではなく板が一枚あるだけなので、今度は羽根の数を増やす。

 羽根を選択しモディファイアの配列を選択する。オフセット軸がXの状態で数を150にすると馬鹿でかい羽根が出てくるが、Xは0にして代わりにZを1.0にすると円形に150個配置される。さらにYを0.2にすると、配列で一つオブジェクトが増えるたびに上方向に0.2オブジェクトの厚さ分ずれていく。これにより円形に配置されながら少しずつ上に移動していくので、結果としてスクリューのような形状が完成する。

 こうして出来た羽根の中心に最初に作った軸を配置すればスクリューは完成だ。

 次は円筒だが、これもベジエ円で作る。まずオブジェクトの変換でメッシュに変える。このままではただの円形の線だが、編集モードにして全体を選択しFキーでフィルすると面が出来て円形のオブジェクトになる。そして面を選択しIキーで面を差し込み、スクリューと同じ大きさにする。そして内側の円を消し、残った部分を全選択してEで上方向に押し出すと円筒になる。これをスクリューの外周に配置すれば螺旋は完成だ。

 次にアルキメデスの螺旋として機能するように斜めに配置する。そして回転させる必要があるが、単純にZ軸を回転させてもオブジェクト全体が回転してしまい、軸周りの回転とはならない。

 そこで設定を変更しなければいけないのが、螺旋オブジェクトのオブジェクトプロパティの角度のモードだ。通常はXYZオイラー角になっているが、これをZXYオイラー角に変更する。

 この角度のモードとは、XYZの三軸の入れ子構造を示している。XYZの場合はXが一番外、Yが真ん中、Zが中心となる。Xを回転させるとXのみが動くが、入れ子式になっているため内側の軸を動かすと外側の軸も一緒に動いてしまう。先ほどの螺旋で言うと回転させたいのはZだが、モードがXYZの場合はZは一番内側となるため、XとYも連動して動き、結果としてオブジェクト全体が動いてしまう。

 これを解決しZ軸のみ動かすためには、モードをZXYもしくはZYXにする必要がある。こうなるとZが一番外側にあるため、Z軸を回転させてもZ軸のみの回転となる。あとは角度にキーフレームを打って0から360度まで回転するようにすればいい。

 これでオブジェクトは完成したが、実際に機能するか回転させてシミュレーションをする。いざ実体化しても使えなかったら意味がないからだ。

 Blenderには幸いにも物理演算機能があるので、その中のクイック液体を使う。これは水などの流体をシミュレーションできる機能だ。

 まず作った斜め四十五度に配置した螺旋の周りに、螺旋がちょうど収まるくらいの変形させた立方体を配置する。立方体を選択してオブジェクトからクイック液体を選択する。これで立方体は物理演算を行う領域、ドメインとなった。

 次に演算用の水を用意する。ドメインの底から五十センチの高さになるように適当に立方体を変形させ、ドメインに重ねる。重なった部分が水となるが、はみ出してていても演算には関係ないので多少適当でもいい。そして演算時に水となるように、物理演算プロパティから流体を選択し、タイプをフローにする。フロータイプは流体、フローの挙動はジオメトリ―とすることで、ドメインと重なる部分が水となる。

 つぎに物理演算の設定だ。設定で分割の解像度は256にする。これは演算時のドメインの分割数であり、数字が大きいほどリアルに近い演算となる。しかし計算時間もその分長くなるので、使用するパソコンの能力に応じて設定する必要がある。俺の場合はスペックの制約がないが、ひとまず256で実行する。

 次に液体のパーティクル半径を1.0から0.8に変える。これは試行の中で分かったことなのだが、1.0のまま演算すると、なぜか一定量のはずの水が無限に増えてうまく演算できなくなってしまう。パラメーターを色々いじった結果、パーティクル半径を0.8程度にするとうまくいく事が分かった。その為これは0.8が絶対ではなく、演算時の水が減少する場合は値を大きくし、増えている場合は小さくする必要がある。

 後はキャッシュタイプをモジュールに変更し、ベイク、演算の準備はできた。

 俺は少しドキドキしながらベイクを行ない、アニメーションを再生する。

 すると螺旋は回転し、下部にたまっている水を少しずつ上方へ移動させている。やがて円筒の上端から水があふれてきた。成功だ。

 俺は一息つき、ベッドに横になる。

 荷物がなくなった部屋の中は少し寒く、指先が冷たくなっていた。外はもっと寒い。最近は少しは暖かくなったが、屋外で作業するにはまだまだ寒い日が続いている。

 こんな日でもグビラさんは水車の所まで行って桶で水を汲んで、家にある壺にまで何度も運んでいるのだ。それは生活用水で、飲んだり料理や掃除などに使うなど日常生活のために必要となるものだ。水汲みは何度か手伝ったことはあるが、グビラさんは頑なに自分の仕事だと言って他人に任せようとはしなかった。寒い季節に冷たい水を汲むのはさぞ大変だろうが、その苦労を俺には味わわせたくないらしい。

 だがこのアルキメデスの螺旋があれば、少なくとも水を汲む労力は無くすことが出来る。動力は水車があるからそこに配置すればいい。これでグビラさんの苦労も少しは減るだろう。


「というわけで、これがアルキメデスの螺旋です」

 おれはレンダリングして水車に取り付けたアルキメデスの螺旋をカドルホスさんとグビラさんにお披露目した。

「ほう、これがアルキメデスの螺旋という奴ですか……」

「おお、中でくるくる回って上から水が出ている! 普段はそのまま用水路に戻して、必要な時だけ下に桶を置いて水を入れればいいわけか!」

 二人とも珍しいものを見て興味津々のようだった。

「なるほど。回転することによってこのねじ山に貯まった水が上に運ばれるんですね。これは大した代物だ……!」

 カドルホスさんは見ただけである程度原理を理解したらしい。

「ほーっ! こりゃまるで魔法じゃのう! 何がどうなっとるのかさっぱり分らんが、水がどんどん出てくるぞ!」

「これで少しは楽になるでしょ、グビラさん?」

「うむ! ありがとうよ、リンタール! しかし……これで寂しくなるのう……」

 グビラさんは急に悲しげな顔を見せた。

「寂しいって……水汲みがですか?」

「何を言っとる、お前さんがいなくなるからだよ。出発までに水汲みを何とかしてくれると言ってたが……これで憂いなく行ってしまうわけじゃな。週末にはもう出発だ」

「そう……ですね……」

「リンタール。あなたが何のためにこの世界に来たのか。何故そのブレンダーという力を授けられたのか。ダンジョンで何か答えが見つかるといいですね」

 カドルホスさんが言った。

「はい。研修旅行として行かせてもらえて、何とお礼を言ったらいいか……」

「いいのですよ、そんなことは。本来の研修旅行の趣旨からいえば外れる事ですが……一人の若者の未来を左右する出来事なのです。このくらいは神も許してくれるでしょう。しかし、どうしても解決できない問題に出会ったなら、その時はまた私たちを頼ってくださいね。私たちにとってあなたは……子供とは少し違うかもしれませんが、もう家族の様なものです」

「そうだぞ、リンタール! お前は家族のようなものだ! 困った時は助け合う。それが家族ってもんだ!」

「はい、ありがとうございます……必ず、ダンジョンに行ってBlenderの謎を解明します」

 俺は目頭が熱くなった。二人ともいい人で良かった。だがこの二人とも別れて、俺は一人で自分の道を探しに行かなければならないのだ。

 未来に何が待っているかは分からない。けれど、立ち向かわなければいけない。それが俺の、この世界に転生した意味だと信じて。



・アルキメデスの螺旋 参考画像

https://kakuyomu.jp/users/ulbak/news/16816927863121437964

  • Twitterで共有
  • Facebookで共有
  • はてなブックマークでブックマーク

作者を応援しよう!

ハートをクリックで、簡単に応援の気持ちを伝えられます。(ログインが必要です)

応援したユーザー

応援すると応援コメントも書けます

新規登録で充実の読書を

マイページ
読書の状況から作品を自動で分類して簡単に管理できる
小説の未読話数がひと目でわかり前回の続きから読める
フォローしたユーザーの活動を追える
通知
小説の更新や作者の新作の情報を受け取れる
閲覧履歴
以前読んだ小説が一覧で見つけやすい
新規ユーザー登録無料

アカウントをお持ちの方はログイン

カクヨムで可能な読書体験をくわしく知る