裏鍵.dump

自分用備忘録。内容に脈絡を求めてはいけない。

MagicaVoxelのエクスポート仕様が変わった

MagicaVoxelの0.99.3から、エクスポート機能に仕様変更が入ったようだ。
それで、このサイトに記載しているボクセルモデルを作成する手順が少し変わってしまうのでマッハ新書の更新にあわせてこちらにも残しておく。

 

影響ある変更点は下記の2点。

  • エクスポートするときのScaleや軸の向きをConfigファイルで制御できるようになった
  • エクスポートするときの頂点座標がワールド座標系になった

 

1つ目はBlenderにインポートしたときに大きすぎるから0.1倍の大きさにしていた作業が、Scaleの初期値が0.1になっているおかげで何もしなくても良くなった。

問題は2つ目で、以前はワールド座標を意識せずにModel Editor上で作成したものをそのままBlenderにインポートしてもまぁまぁ原点のちょうどいい位置で読み込まれたのだけど、今後は同じことをしても大体ずれて読み込まれる。

次の図は以前のバージョンで作業したものを読み込んだイメージ

f:id:cores0316:20191020011743p:plain

そして次の図は新しいバージョンで作業したものを読み込んだイメージ

f:id:cores0316:20191020011831p:plain

 

今回はMagicaVoxel上でこれを修正していくことにする。

 

大体の原因は、モデルを作成するときに定義されている空間の大きさを変更したことに起因する。

f:id:cores0316:20191020012353p:plain
これは起動時に最初から用意されている40x40x40の空間。
これをWorld Editor(画像右上の矢印2つのアイコンを押す)に切り替えて見てみると、原点の上でちゃんと接地したような座標に置かれているのがわかる。
※太い黒線の交わるところがワールド座標の原点

f:id:cores0316:20191020012757p:plain

 

では、この空間を20x20x20に変更する。

f:id:cores0316:20191020013150p:plain
そして、これをWorld Editorで確認してみると、下図のようになっている。

f:id:cores0316:20191020013251p:plain
接地せずに浮いている。
今は原点の真上にあるけれど、作成したモデルの形にあわせて空間をFit等で変更するとそれもずれることになる。この空間の座標がそのままエクスポートされるため、Blenderにインポートしたときにも同じようにずれてしまうというわけだ。

 

これは大きなお世話機能かというとそういうわけではない。
以前は複数のオブジェクトを作成・組み合わせて大きなものを表現してエクスポートしても座標が全て原点近くになるため、Blender上で改めてちまちまと並べなおす必要があったのが、この変更のおかげで別のツールに持っていくときにそのまま出力しても(ほぼ)問題ない(はず)ことになったからだ。

 

とはいえ、今回は困るので修正しよう。
特に難しいことはなく、画面に表示されている三色のXYZ軸を掴んで簡単に移動できるので、それを原点上に接地させればいい。

f:id:cores0316:20191020014417p:plain

作成中にまた空間のサイズを変更した場合は改めて確認する必要があるので注意。