マジックオーブの圧縮
ゴーレムからマジックオーブをかき集め、さらにそれを元にドローンゴーレムを作るための開発を進めていた。
ドローンの大きさを考え、そのサイズに合う大きさのマジックオーブを作り出す。これは大した作業ではない。錬成魔術を使えば余裕だ。結果として、小指の第一関節程度の大きさのマジックオーブを作ることに成功した。
問題はその次だ。
この小さなマジックオーブに、ゴーレムのオペレーティングシステムを搭載しなければならない。もっとも、ゴーレムのオペレーティングシステムにはドローン用にするには不要な機能が多分にあるので、それらを削っていく。
「かなりの機能削減ができたが…… まだ削る量が足りないな……」
どんな機能を削るかというと、人型であるゴーレムの手足を動かうための制御機能がメインだ。あとは手足の動きに合わせてバランスをとるための機能とかも不要だ。これらだけでも相当なコード量だったのだが、まだ削る量が足りない。
だが、機能を削るだけでも駄目なのだ。
当然、追加しなければならない機能もある。例えば、プロペラを回す機能、プロペラを使って動きを制御する機能、あとは風を感知機能等も必要。
これらの機能の実装は割と見通しがほぼ立っている。見通しが暗いのは風を感知する機能くらいなもので、これはまぁ、最悪なくとも動作制御の機能を充実させれば何とかなる。
問題はマジックオーブだ。
「何とか圧縮できないものか。」
地球では、技術の発展と共にデバイスの小型化が進んでいったことを考えれば、マジックオーブにもそれが当てはまらないかと考え、それが出来そうなAPIを探しているところだった。
そして、それが可能かもしれない一つの処理を見つける。
「『圧縮』か。指定したものを圧縮して体積を小さくするAPI。」
それは錬成魔法のカテゴリーに含まれる魔法。引数で圧縮方法をオプション指定するようになっているのが面白い。
「マジックオーブを圧縮するオプションは何が良いか。失敗するとマジックオーブが使い物にならなくなりそうだし、慎重にしたいところではあるが、考えても始まらないな。やってみるしかない。」
そうして、オプションを変えながら圧縮魔法を試してみる。
やはり何度か失敗し、マジックオーブは使い物にならなくなってしまう。失敗すると粉々に砕け散るか、輝きを失う。
「これはこれで一つの発見とも言えるな。マジックオーブは物理的に破壊できるし、一見形はそのままでも輝きを失えば機能は失われるのか。」
だが、今回の実験はアタリかもしれない。光りは強さを増し、そして期待通りの大きさに圧縮されたマジックオーブをみて俺の期待も高まる。
「上手くいってくれよ?」
そういって出来上がったマジックオーブに触れると、オペレーティング・システムが起動し始めた。成功だ。
俺は安堵のため息をつく。まだ余裕はあるとはいえ、どんどん減っていくマジックオーブを見て気が弱くなっていたのは事実で、無事実験が成功したことにほっとしたのだ。
「適切なオプションの指定と、元のサイズと圧縮率。この絶妙なバランスが大事ということだな。いや、勉強になった。」
いきなり最終形に圧縮するより、徐々に徐々に圧縮していったほうがいいかもしれない。これは推測だが、マジックオーブはどれも圧縮比がバラバラかもしれない。今回の設定値が今後もそのまま使えるかどうかは分からないから、少しずつ圧縮していったほうがいいだろう。
そして、圧縮したマジックオーブのスペックは圧縮する前と変わらなかった。この成果は大きい。結果として、無事にオペレーティング・システムを搭載することができた。