ボクセルモデルを自作してUnityに読み込む(MagicaVoxel)

投稿日:2017年1月24日 更新日:

こんばんは、okuzawatsです。
Unityのアセットストア、便利ですよね。
適当に見ていると、魅力的なアセットがたくさんあって、あれもこれも使いたくなってしまいます。
でも、実際に「こういうモデルが置いてないかな?」と思って探しに行くと、案外なかったり...。

先日もUnityのアセットストアでボクセルモデルを探していたんですが、ちょうどいい感じのモデルがありませんでした。
仕方ないので自分でボクセルモデルを作る方法を調べてみたところ、高額なアプリケーションを買わずに、というか無料でボクセルモデルを作り、Unityで使える形式にエクスポートしてくれるフリーのツールがありました。

それが「MagicaVoxel」です!
Mac版、Windows版ともにフリーで使えるボクセルエディタになっています。
MagicaVoxelは無料で使えますが、使いやすく、しかも高機能です!

MagicaVoxel

MagicaVoxel

MagicaVoxelのライセンスはこんな感じ。
非商用でも商用でも、自由に使えるようになっています。
ありがたいですね。

License : feel free to use it for any project, no commercial licences required, credits are appreciated

この記事では、MagicaVoxelを使ってボクセルモデルを作り、Unityにインポートするところまでをやっていきます。
最終的には、こんな感じで3DのボクセルモデルをUnity上で表示します。

voxel-model

なお、MagicaVoxelのバージョンは0.98.1 Beta(Mac版)、Unityのバージョンは5.5.0f3(Personal、Mac版)を使用しています。

MagicaVoxelのインストール(Mac)

まずはMacにMagicaVoxelをインストールしていきます。
この記事ではMacにMagicaVoxelをインストールする方法を書きますが、Windows版MagicaVoxelのインストールもだいたい同じようにできるのではないでしょうか。

とりあえずMagicaVoxelのウェブサイトから「ダウンロード」を押して、MagicaVoxelをダウンロードします。

install-magicavoxel

ダウンロードしたファイルを解凍すると、こんな感じの中身が入っています。
Mac版はMagicaVoxel-mac、Windows版はMagicaVoxel-win.exeを起動してあげればMagicaVoxelが起動します。
インストーラなどは特に立ち上がりません。

magicavoxel-macは開発元が未確認のため開けません。

Macのセキュリティ設定によっては、「"MagicaVoxel-mac"は、開発元が未確認のため開けません」というメッセージが表示されて、MagicaVoxelを開けない場合があります。

このようなメッセージが表示された場合、Macのシステム環境設定から、セキュリティとプライバシー > 一般を開き、セキュリティの設定を変更します。
「ダウンロードしたアプリケーションの実行許可」の設定が、「Mac App Storeからのアプリケーションのみを許可」、または「Mac App Storeと確認済みの開発元からのアプリケーションのみを許可」になっているはずです。
一時的に「すべてのアプリケーションを許可」に変更してあげましょう。

右下の鍵マークを選択してパスワードを入力すると「ダウンロードしたアプリケーションの実行許可」の設定が変更できるようになるので、「すべてのアプリケーションを許可」に変更。
ここで再びMagicaVoxelを起動してあげれば、きちんと起動できるはずです。
次回以降、特に許可なくMagicaVoxelを起動できるので、「ダウンロードしたアプリケーションの実行許可」の設定を元に戻し、再び鍵をかけておきましょう。

MagicaVoxelでボクセルモデルを作る

magicavoxelの使い方

MagicaVoxelの使い方を説明し始めるとキリがないので、要点だけまとめます。
わたくしはこれらの機能だけでボクセルモデルを作りました。
つまり、MagicaVoxelでボクセルモデルを作るために必要最低限の機能ということですね。

ファイルの新規作成と保存

画像の中にある1番のところを見てください。
Save、As、Newと並んでいます。
これらはそれぞれ、上書き保存、名前をつけて保存、新規ファイル作成です。

MagicaVoxelでプロジェクトを開いたら、まずは「New」を押して新しいファイルを作ります。
すると、新しいキャンバスができるので、ボクセルのモデリングをしていきます。

キャンバスサイズを変更する

画像の中にある2番のところを見てください。
16 16 16と書いてあります。
これは、キャンバスのサイズがX軸方向、Y軸方向、Z軸方向にそれぞれボクセル16個分、16個分、16個分であることを表しています。

ボクセルモデルの大きさを変更したい時は、これらの数字を変更してあげればOKです。
この数字のある辺りを適当にクリックすると、モデルサイズを変更できるモードになります。
そうなったら、手動で数字を変更してあげれば、それに応じてキャンバスサイズが変わります。

ボクセルの追加と削除

画像の中にある3番のところを見てください。
Attach、Erase、Paintとあります。
それぞれ、ボクセルの追加、ボクセルの削除、ボクセルの色の変更です。

まずカラーパレットで色を選択した後、Attachを選択すると、キャンバスにボクセルを配置していけるようになります。
間違ってボクセルを追加してしまった場合は、Eraseを選択して、不要なボクセルを削除します。
ボクセルの色を変えたい時は、Paintを選択後、カラーパレットから新しい色を選択して、変更したいボクセルを塗っていきます。

Attach、Erase、Paintのどのモードでも、ボクセルをまとめて配置、削除、変更することができます。
操作にコツがいりますが、慣れれば一気にボクセルを編集できるようになります。

ボクセルモデルのエクスポート

画像の中にある4番のところを見てください。
いろいろありますが、必要なのは「obj」です。
objを押すと、ボクセルモデルがUnityにインポートできる形式で出力されます。

ボクセルモデルのエクスポート

エクスポートしたファイルは、MagicaVoxelと同じディレクトリの下にある、「export」ディレクトリの下に保存されます。
.mtl、.obj、.pngの3種類のファイルができているのがわかるかと思います。
Unityに必要なのは、.obj、.pngの2つです。

Unityにボクセルモデルをインポートする

Unityに作ったボクセルモデルをインポートしていきます。
まずはUnityを立ち上げ、適当なプロジェクトを開きます。

ボクセルモデルをUnityにインポート

先ほどMagicaVoxelからエクスポートしたobjファイルとpngファイルをUnityのプロジェクトウインドウにドラッグ&ドロップします。
そして、objファイルのinspectorを開き、ShaderをMobile/BumpedDiffuseに変更。
さらに、プロジェクトウインドウにあるpngファイルのオブジェクトをTextureのところにドラッグ&ドロップ。
これでSceneのところにMagicaVoxelで作成したボクセルモデルが表示されました。

voxel-model

完成です!

これで、自作のボクセルモデルをUnityにインポートできました!

-Mac

Copyright© Androidアプリ開発@つくばの日記 , 2017 AllRights Reserved Powered by AFFINGER4.