リソースパック(Resource pack)システムとはプレイヤーが Minecraft のカスタマイズを可能にするAPIである。これにより、テクスチャ、モデル、BGM、効果音、言語ファイル、クレジット・ロール、スプラッシュテキスト、フォントをゲーム本体を書き換えずに変更出来る。
振る舞い
リソースパックは.minecraft
階層のresourcepacks
フォルダに置く必要がある。その際のファイルフォーマットを.zip
形式にするか、resourcepacks
フォルダにフォルダを直置きする必要がある。フォルダに置いた後は、オプションの「使用可能なリソースパック」と「選択中のリソースパック」の間で移動ができる。「選択中のリソースパック」の側にはデフォルトのリソースが存在するが削除することは出来ない。
基本的にリソースパックはリストの上から順に読み込まれる。一番下の"デフォルト"のリソースパックが最初に読み込まれ、その後に読み込まれたアセットと対応するものが置き換わる仕組みになっている。
デフォルトのリソースパック
リソースパックは、resources
という名前のフォルダに直接配置することで、マップにバンドルできる。その際に、リソースパックは.zip
ファイル形式でなければならない。プレイ中には、そのリソースパックがワールドのデフォルトのリソースパックとして右側のリストに表示される。
サーバープロパティファイルのresource-pack=
行の後にある.zip
ファイルのダウンロードへのリンクを変更することで、サーバー上に既定のリソースパックを設定することもできる。ユーザーはリソースパックの使用を拒否することも、ダウンロードしないことを選択することもできる。
Console Edition
Console Editionでは、マッシュアップパック(これはリソースパックに相当する)がダウンロードコンテンツ(DLC)として、Xbox Game マーケットプレイス / PlayStation ストア / Nintendo eショップからダウンロード出来る。マッシュアップパックはリソースパック、スキンパック、ワールドを一つにしたコンテンツである。
Pocket Edition
スキンと同様に、Pocket Editionでリソースパックは購入・作成できる。 Alpha 0.16.0の時点で、iOSユーザーは.mcpack
および.mcworld
の拡張子のファイルをダウンロードできる。 これらのファイルを開くと、ファイルシステムへのアクセスを必要とせずに自動的にPocket Editionにインポートされる。
コンテンツ
リソースパックはJSON形式で記述されたルートディレクトリにあるpack.mcmeta
ファイルによって識別される。
- ルートタグ
- pack: リソースパックの持つ情報
- language: 新たな言語を追加する場合記述する。
- A language
.lang
ファイルに対応する言語コード。assets/minecraft/lang
に入っているファイル名と同じ名前にする。- name: 言語の名称。
- region: 地域を設定する。
- bidirectional:
true
の場合、文字は右から左に読まれる。
- A language
ルートディレクトリには、pack.png
という画像ファイルと含まれている。これはリソースパックメニューでのアイコンとして表示される。
言語
新たな言語や修正した翻訳はリソースパックのassets/minecraft/lang
ディレクトリに.lang
ファイルを作成することで追加することができる。 方法は2つあり、1つ目は元から存在する言語ファイルを書き換える方法。2つ目は言語ファイルを新たに追加する方法である。後者の場合、pack.mcmeta
ファイルに記述する必要がある。(記述方法は上の通り)
言語ファイル内での記述方法は、identifier=name
のようになっている。identifier
はゲーム内部でブロックやアイテムなどに紐付けられているIDのようなものであり、ブロックやアイテム毎に付けられている。変更することは出来ない。
name
は実際にゲーム上で表示されるブロックやアイテムの名前である。石を例にすると、tile.stone.stone.name=Stone
のようになっている。tile.stone.stone.name
が石のゲーム内部での名前となっており、Stone
がゲーム上で表示される名前となっている。これらは#
でコメントアウトすることも可能である。
これらは追加・変更したものだけが、ゲームで適用される。何も手が加わっていないもの、欠如しているものは読み込まれずデフォルトのものが使用される。
モデル
モデルはJSON形式で記述されており、.json
ファイルとなっている。これらのファイルでブロック・アイテムのモデルを形作っている。
ブロックはassets/minecraft/blockstates
のファイルのブロック情報を使用し、assets/minecraft/models/block
からブロックモデルを読み込むことでブロックモデルを決定している。
アイテムはassets/minecraft/models/item
からアイテムモデルを読み込む。ブロックモデル、カスタムモデル、またはデフォルトの「フラット」か「エンティティ」から選ぶことが出来る
モデルファイルは上のリソースパックから読み込まれる。よって下にあるリソースパックのモデルファイルは、上書きされて読み込まれない。
サウンド
リソースパックは追加のサウンドファイルを.ogg
形式で読み込む。下位のパックに同様の名前のファイルが存在すると上のものが読み込まれ、パックにはassets/minecraft
ディレクトリにsounds.json
ファイルが含まれている。他のリソースパック関連のファイルとは異なり、このファイルはパックの位置に関係なく読み込まれる。このファイルにはパック内のサウンドファイルが記述されている。
テクスチャ
ブロックまたはアイテムのテクスチャが機能するには、幅と高さを揃えなければならない(アニメーションさせる場合は高さは幅の倍数)。そうでないと、紫と黒のチェック柄で表示されてしまう。他の多くのテクスチャは、必要なサイズに合わせて引き伸ばされるだけである。
ほとんどの固体ブロックは透過部分を完全に不透明にする。一部のブロックはcutout(切り抜き)の透明度を持ち、不透明度が10%未満のピクセルをすべて完全に透明にする。それ以外は完全に不透明にする。他の透過ブロックは半透明部分をそのまま描画する。
アイテムまたはエンティティはデフォルトで半透明テクスチャがサポートされている。
リソースパックにもデフォルトにもファイルが存在しない場合、紫と黒のチェック柄で表示される。
アニメーション
ブロックとアイテムはフレームを追加することによってアニメーションさせることができる。アニメーションはアニメーションさせたいテクスチャと同じ名前の.mcmeta
ファイル(JSON形式で記述)を同じディレクトリに入れることで制御できる。例えば、stone.png
をアニメーションさせたい場合、mcmeta
ファイルはstone.png.mcmeta
になる。
- The root tag
- animation: アニメーションのデータ
- interpolate: trueのとき、フレーム間の変化が滑らかになるようにフレームが追加される。デフォルトでは
false
である。 - width: テクスチャの幅。ピクセルではなく、比率である。これはバニラでは使用されていないがmodで使用することができる。
- height: テクスチャの高さ。ピクセルではなく、比率で表す。これはバニラでは使われていないがmodによって使用することができる。
- frametime: 通常のフレームの変わる時間。1ティック単位で設定でき、デフォルトでは
1
である。 - frames: アニメーションフレームのリスト。デフォルトでは上から下に表示される。
- 番号は一番上からのフレームの位置に対応しており、一番上のフレームは0である。
- A frame 追加データを持つフレーム
- index: 一番上のフレームからの位置。一番上のフレームは0である。
- time: 次のフレームに変わるまでの時間。上記のframetimeを無視する。
- interpolate: trueのとき、フレーム間の変化が滑らかになるようにフレームが追加される。デフォルトでは
- animation: アニメーションのデータ
もし.mcmeta
ファイルとテクスチャがパックに存在しない場合、アニメーションされない。
また、テクスチャに対応する.mcmeta
がない場合、紫と黒のチェック柄で表示される。
カラーマップ
カラーマップは256×256ピクセルの画像であり、バイオームごとにどの色を使用するかを決める。カラーマップは、foliage.png
とgrass
の2つがあり、assets/minecraft/textures/colormap
に位置する。foliage.png
シラカバとマツを除く、葉やツタのような植物に適用され、grass.png
は、草や草ブロックに適用される。
カラーマップが適用されるブロックはtintindex
タグを除くことによって無効にすることができる。
フォント
フォントファイルには白文字のグリッドが含まれ、ゲーム内で必要に応じて色がつけられる。文字サイズはアルファ値を含む最後をもとに自動的に決められる。フォントを検出する方法として、文字の背景を1%のアルファの背景を含む色で塗りつぶすと文字の背景が見えることなく全幅が描画される。
プロパティ
assets/minecraft/textures/misc
にあるテクスチャはJSON形式の.mcmeta
ファイルによって追加エフェクトを適用することができる。ファイルはテクスチャと同じディレクトリにあり、同じ名前の後ろに.mcmeta
がつく。例えば、pumpkinblur.png
のプロパティファイルはpumpkinblur.png.mcmeta
である。
- The root tag
- texture: テクスチャのデータ
- blur: テクスチャをぼかす。デフォルトでは
false
である。 - clamp: 影のように、ブロック一面にテクスチャを描画する代わりにテクスチャを引き延ばす。デフォルトでは
false
である(下図参照)。 - mipmaps: カスタムミップマップ値
- blur: テクスチャをぼかす。デフォルトでは
- texture: テクスチャのデータ
"clamp": true
|
"clamp": false
|
もしリソースパックに基になるテクスチャがあって、.mcmeta
ファイルが存在しない場合、デフォルトの設定で読み込まれる。
テキスト
.txt
ファイルは3つ存在し、UTF-8形式で記述される。これらのファイルはassets/minecraft/texts
に存在し、表示するテキストを決めるために使用される。
end.txt
は、エンドポエムの内容が含まれている。装飾コードを使って2人の語り手を表し、PLAYERNAME
はプレイヤーの名前に置き換えられる。その後、credits.txt
の内容が表示される。
splashes.txt
にはスプラッシュの内容が改行を用いて記述されている。どのスプラッシュも異なる内容に置き換えることができ、ゲーム内で元のテキストの代わりに表示される。
フォルダ構造
リスト |
---|
|
動画
リソースパック/video
歴史
Java Edition | |||||
---|---|---|---|---|---|
1.6.1 | 13w24a | テクスチャパックに置き換わる機能としてリソースパックが追加された。1.5までのテクスチャーパックはMojangの変換ツール(Minecraft Texture Ender)で変換出来る。 | |||
1.6.2 | HDフォントを使用した際に、フォントが歪むバグを修正[2]。 | ||||
1.7.2 | 13w36a | 一度に複数のリソースパックを適用する機能を追加。 | |||
13w42a | assets/minecraft/music のファイルをassets/minecraft/sounds/music に、assets/minecraft/sound のファイルをassets/minecraft/sounds に移動した。 | ||||
1.7.4 | 13w48a | Mojangのロゴを変更できる機能を削除した。 | |||
1.8 | 14w06a | ブロックモデルを変更できる機能を追加。 | |||
14w07a | リソースパックをマップにバンドルできるようになった。 | ||||
14w25a | カスタムアイテムモデルが適用出来るようになった。 | ||||
テクスチャをブロックとアイテムに指定できるようになった。 | |||||
アニメーションに interpolate が追加された。 | |||||
1.8.8 | pre | パックのバージョン番号が合っていない場合、エラーが表示されるようになった。このときバージョン番号が1 でなければならなくなった。 | |||
1.9 | 15w31a | アイテムタグ、multipartやディスプレイタグの追加など、モデルシステムが変更された。それに伴い、リソースパックのバージョン番号が2 に変更された。
| |||
古いディスプレイタグを持つリソースパックを使用すると異常にスケールアップされて見えた。また、2Dテクスチャで置き換えられたブロックはインベントリや手に持っているときに回転しなかった。これはモデルにディスプレイタグがないときと同様である。画像を参照。 | |||||
1.11 | 16w32a | リソースパックのバージョンが3 になった。 | |||
リソースパック内のファイル名が全て小文字になった。 | |||||
Pocket Edition Alpha | |||||
0.15.0 | プラスチック・都会テクスチャパックを追加。 | ||||
0.15.7 | ナチュラルテクスチャパックを追加。 | ||||
0.15.8 | ファンタジーテクスチャパックを追加。 | ||||
0.16.2 | カートゥーンテクスチャパックを追加。 | ||||
Pocket Edition | |||||
1.0.3 | キャンディテクスチャパックを追加。 |
関連項目
- チュートリアル/リソースパックの作成
- Programs and editors/Resource Pack Creators
脚注
ヘルプ | |||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
メニュー画面 |
| ||||||||||||||||
開発元 | |||||||||||||||||
ゲームのカスタマイズ | |||||||||||||||||
エディション |
| ||||||||||||||||
ゲーム |
| ||||||||||||||||
映画 |
| ||||||||||||||||
書籍 |
| ||||||||||||||||
その他メディア |
| ||||||||||||||||
イベント |
| ||||||||||||||||
公式商品 |
| ||||||||||||||||
その他 |