マインクラフトをUnityとかVRChatのワールドへ取り込む方法をメモします。
◆ 必要なもの
マインクラフト (Java 版)
mineways
blender
MCPrep(blenderのプラグイン)
1. 取り込みたいマインクラフトのワールドを整備します
2. mineways を起動します。jmc2obj でもできると思いますがためしてません
3. マインクラフトのワールドを開き、取り込む範囲と高さ、深さを指定します
4. ファイルメニューから「Open Level」を指定し、一覧からマインクラフトのワールドを指定します。
5. 左クリックで移動し、右ボタンを押してドラッグすると範囲を選択できます
6. ファイルメニューから「Export for Rendering」を指定し、ファイルへ出力します。
7. 出力
オプションが出てきます。
左の列は出力時のマテリアル設定です。デフォルトで良いと思います。
真ん中の列は、出力された3dモデルの指定でまとめるか、タイプごとに分割するかの指定です。
とりあえず下記の画像のオプションにします。
ファイルを出力すると、obj と mat 、それとテクスチャの画像ファイルが出力されます。
8. blender によるファイルの調整
blender を起動します。
MCprep という blender のプラグインが入ってなければ有効にします。
編集メニューの「プリファレンス」を開き、アドオンタブを指定し、画面上のインストールボタンをクリックします。
MCprep を別途ダウンロードし、zip ファイルを指定します。
Object:MCprep のチェックを有効にします。
blender の余計なものを削除します。選択して「x」メニューから削除を選びます。消すのは立方体とライトとカメラです。
ファイルメニューの「インポート」からWavefront (.obj)を指定してminewaysで出力したファイルをインポートします。
「N」キーを押して、右にタブでてきたタブメニューから「MCprep」を指定します。
Prop Material ボタンを押し、OK を押すと取り込んだモデルにテクスチャが入ります。
これを blender 形式で保存します。
9. UNITY への取り込み
任意のプロジェクトを作成し、ディレクトリに出力したblenderファイルとテクスチャをドラッグ・ドロップします。
右クリックメニューから「Create」→「Material」マテリアルを新たに作成します。
作成したマテリアルを選択して、プロパティの「Metalic」を0にします。また、画面上の□ Albedo にテクスチャの(minecraft_flat-RGBA.png)をドラッグします。
テクスチャ(minecraft_flat-RGBA.png)を選択し「Aplha is Transparency」のチェックを入れます。
下のほうのFilter Modeの箇所の設定を「Point (no filter)」にしてApplyを押して反映します。
マテリアルを再び選択して、Rendering Modeを「cutout」にします。
ヒエラルキーにblenderのファイルをドロップし、シーンに追加します。
blenderのファイルをヒエラルキーにドロップした状態では真っ白ですが、展開してオブジェクトにマテリアルをドラッグして割り当てます。
テクスチャが表示されるので、全部に指定します。
アニメーションはされないですが、たいまつの形や、窓の透明部分も反映されていると思います。