こんにちは、はぶペンです。
今日はふと4Dスキンを作りたくなって色々検証した結果見つけた新しい4Dスキンを作る方法を解説したいと思います。
※注意!
私は4Dスキンを配布していません、スキンを探してここにきた人、ごめんなさい!
この方法で追加できる3Dモデルは最大2個、1個推奨です。自分専用のスキンを作りたい!みたいな時に向いていると思います。
暗号化や暗号化解除みたいな面倒なことをしないで自作のモデルを使える、簡単バージョンと考えてください!
用意するもの:
- Minecraft統合版の入ったPC (私がWin10版しか持っていないため他の統合版は未検証です。)
- BlockBench等の、エンティティのモデルを作れるソフト
(Blender等のOBJ形式のファイルを作れるソフトとMeshyというBlockBenchプラグインを組み合わせることで直方体以外のモデルを作ることができます。)
1. OBJ形式の3Dモデルを作ってBlockBenchで開く (BlockBenchだけで作る場合はスキップ)
Blenderで3Dモデルを作りました。胴体、頭、手足で6個のメッシュを用意しています。
私の知る限りでは統合版の3Dモデルにはボーンとウェイトを使う変形機能が無いので、メッシュをそのまま回しても気にならないように関節を調整しましょう。
6個全て選択して、上部のメニューからファイル>エクスポート>Wavefront(.obj)で出力します。
Meshyの入ったBlockBenchでは、Bedrock Entityで作成した場合上部のメニューからファイル>インポート>インポートOBJモデルでファイルを開くことで出力したメッシュを読み込めます。

2. BlockBenchでエンティティのモデルを作る
動かしたい部分がMinecraftのスキンと同じ構造になるようにモデルを作ります。必要なところだけ用意すれば良いです。
私は重ね着レイヤーのフォルダを用意しなかったのですが、その影響か一部防具が正常に動きませんでした。
root
┗waist
┣body
┃┣[胴体用のモデル]
┃┣jacket
┃┣cape
┃┣head
┃┃┣[頭用のモデル]
┃┃┗hat
┃┣leftArm
┃┃┣[左腕用のモデル]
┃┃┣leftSleeve
┃┃┗leftItem
┃┗rightArm
┃ [右腕用のモデル]
┃ ┣rightSleeve
┃ ┗rightItem
┃ ┗lead_hold ※錨アイコンのLocator
┣leftLeg
┃┣[左足用のモデル]
┃┗leftPants
┗leftLeg
┣[左足用のモデル]
┗leftPants3. 素材を書き出す
BlockBenchで作ったモデルの、ジオメトリとテクスチャを使うので、保存したファイルを分かる場所に用意してください。
メモ帳等でジオメトリのjsonファイルを開いておいてください。
4. Minecraftにモデルを読み込ませる
ここがこの方法の最重要ポイントです。
通常のスキンパックでは、モデルはgeometry.humanoid.customかgeometry.humanoid.customSlimしか使うことができません。ところであなたはどちらのスキンを使っていますか?
この方法では、どちらかのモデルを書き換えて4Dスキンにします。使っていない方のスキンを書き換えましょう!
モデルの入ったファイルは下記の場所にあります。戻したくなった時のため、このファイルは書き換える前に他の場所にコピーを残しておくといいかもしれません。また、もしこの場所が見つからない場合は統合版マインクラフトがGDKビルドではない可能性があります。正直私もこれが何かよく分かっていないので対処法は知りません…
C:\XboxGames\Minecraft for Windows\Content\data\skin_packs\vanilla\geometry.jsonファイルを開くと、下記のような内容になっていると思います。geometry.humanoid.customが腕が太い方で、geometry.humanoid.customSlimが細い方です。
bonesという配列があるので、先ほどの自作したモデルの中のbonesで置き換えましょう。
{
"format_version": "1.12.0",
"minecraft:geometry": [
/*****
省略
*****/
{
"description": {
"identifier": "geometry.humanoid.custom",
"visible_bounds_width": 1,
"visible_bounds_height": 2,
"visible_bounds_offset": [ 0, 1, 0 ],
"texture_width": 64,
"texture_height": 64
},
"bones": [/*省略*/]
},
{
"description": {
"identifier": "geometry.humanoid.customSlim",
"visible_bounds_width": 1,
"visible_bounds_height": 2,
"visible_bounds_offset": [ 0, 1, 0 ],
"texture_width": 64,
"texture_height": 64
},
"bones": [/*省略*/]
}
]
}5. Minecraftにテクスチャを読み込ませる
テクスチャは簡単に読み込むことができます。ゲーム内の、更衣室から、手書きのスキンを読み込むときと同じようにテクスチャを読み込むと、この画像のように片方が作ったモデルになっているはずです!

終わりに。
今回は、4Dスキンを手軽に作れる方法を紹介しました。複数のモデルを読み込むことができる他の方法と比べると、機能としては弱いかもしれません。しかし、自分で作ったモデルでプレイしたいという場合はきっとピッタリでしょう!
スキンパックを作ってdevelopment_skin_packsに置くことで簡単に選べるようになります!
{
"localization_name": "test",
"geometry": "geometry.humanoid.customSlim", //ここに変更した方のジオメトリ名
"texture": "skin.png",
"animations": {
"move.arms": "animation.player.move.arms.zombie"
},
"type": "free"
}


コメント
とても助かります!!!
ありがたいです