TOP > チュートリアル一覧 > Minecraft MOD ItemBlockリソースの追加方法 [1.10.2/1.12.2]
投稿:2018年5月2日

今回は、Minecraft JE版 で ItemBlockリソースを追加するためのチュートリアルです。
バニラの土ブロックやレンガブロックがそうであるように、ItemBlock は立体的に描画されています。今回は、そのしくみを解説していきます。
一般的には ItemBlock で用いられるしくみですが、普通のアイテムに応用することも可能です。
具体的には、バニラのリンゴも、ItemBlock のしくみを応用したリソースに書き換えることで、立体化することができます。実際、鎮守府MODでも、成形した粘土(急須)や玉子サンドといった立体型のアイテムがあります。
鎮守府MODのソースは GitHub で公開していますので、気になる方はそちらをご覧ください。
1.ItemBlockリソースのファイル相関関係
ItemBlock では、以下の3つのファイルが関わっています。
・ブロックとしての描画に使う.jsonファイル
・ブロックとしての描画に使う.pngファイル
・ItemBlockとしての描画に使う.jsonファイル
鎮守府MODの閃緑岩レンガ(block_bricks_dio_c) を例に挙げると、3つのファイルは画像のような相関関係を作ります。
ブロックの設計図であるクラスとは、RegistryName または UnlocalizedName を使って紐付けをします。そして、紐付けによって呼び出すのは itemパッケージ 内の .jsonファイルとなります。
2.基本的なItemBlockの描画
ここでは、鎮守府MODの中でもシンプルなモデルである閃緑岩レンガ(block_bricks_dio_c)を例にして、チュートリアルを進めていきます。
2-1.ブロックの描画
ItemBlock はブロックの描画を持っていることが前提となります。
閃緑岩レンガ(block_bricks_dio_c)では、次のような .jsonファイル を使っています。
chinjufumod:block/block_brick_dio_c.json
“parent”: “block/cube_all” で、バニラの中にある六面すべてに同じテクスチャを貼る立方体のモデルを呼び出します。さらに、”all”: “chinjufumod:blocks/stonebrick_dio”で、すべての面にchinjufumodの中にある stonebrick_dio.png を貼るように指示をしています。
2-2.ItemBlockの描画
ItemBlock の描画は、ブロックの描画を呼び出して行います。
chinjufumod:item/block_brick_dio_c.json
|
“parent”: “chinjufumod:block/block_brick_dio_c” で、chinjufumodの中、blockパッケージ内にある block_brick_dio_c.json を呼び出して描画しています。
3.ItemBlockのサイズや角度の変更
続いて、ItemBlock のサイズや角度を変えたい時に使う displayタグ のチュートリアルです。
displayタグは、ItemBlock としての表示を指示する itemパッケージ内の .jsonファイル で使います。
なお、displayタグでは以下の項目について、サイズや角度を変えることが可能です。
・gui・・・インベントリでの表示
・thirdperson_righthand・・・三人称視点の右手持ち
・thirdperson_lefthand・・・三人称視点の左手持ち
・firstperson_righthand・・・一人称視点の右手持ち
・firstperson_lefthand・・・一人称視点の左手持ち
・head・・・頭に被ったとき
・ground・・・ドロップしたとき
・fixed・・・額縁に飾ったとき
今回は、鎮守府MODのカレーセット(block_food_curryset_1) を例にして、ItemBlock のサイズや角度の変更について解説をします。
chinjufumod:item/block_food_curryset_1.json
|
カレーセット(block_food_curryset_1)はハーフブロックよりさらに薄いブロックです。そのため、ブロックのモデルを呼び出しただけの場合、その ItemBlock は画像のように小さくなってしまいます。
3-1.rotation で角度を変更
rotationのタグを使うことで、[x軸, y軸, z軸] を中心に回転させることができます。
|
ItemBlock の角度と一緒にサイズまで変わっているのは、displayタグを入れたことにより、デフォルトのルールが外れたためです。
3-2.translation で表示位置を変更
translationのタグを使うことで、[x軸方向, y軸方向, z軸方向] へと表示位置を変えることができます。
|
位置を変えられる範囲は -80~+80 までで、ItemBlock をインベントリからはみ出すように描画することも可能です。
3-3.scale で表示サイズを変更
scaleのタグを使うことで、[x軸方向, y軸方向, z軸方向] へのサイズを変えることができます。
|
軸ごとに、最大4.0までサイズを伸ばすことが可能で、ItemBlock の縦横比を変えることもできます。
まとめ
冒頭でも触れましたが、ItemBlock で使われている描画方法は、普通のアイテムにも応用が可能です。「アイテムだから平板型、ItemBlockだから立体型」といったルールはありません。
試しに、バニラの apple.json を上書きするファイルを画像のように用意して、リンゴの3Dモデルを呼び出してみました。
displeyタグを使った調整に関して、最初は、数字と実際の描画の関係をイメージしにくいと思います。まずは、数値を変えてはテストを繰り返す試行錯誤で、感覚をつかんでいきましょう。
このチュートリアルは参考になりましたか? シェアはこちらをご利用ください。
Was this tutorial helpful? Please use here for market share.
当サイトは年間6,480円のサーバー代がかかるため、投げ銭をしてもらえると助かります。
This site costs 6,480 yen per year for server fee. It will be helpful if you make a donation.
Bitcoinで投げ銭をする Bitcoin donations
MONAで投げ銭をする MONA donations
