アニメーションテクスチャを作る
アニメーションテクスチャは、フレームを縦に並べた縦長の画像で、ゲームがそれを順番に表示します。水、溶岩、炎、ポータルはこの仕組みで動いていて、パックでほかのブロックやアイテムを動かすこともできます。Texture Pack Makerなら、どのブロックやアイテムもアニメーションにでき、描きながらゲームと同じ速さで再生し、GIFを読み込み、エディションごとに必要なファイル(Java版は.png.mcmetaファイル、統合版はフリップブックの項目)を書き出します。
手順
- Texture Pack Makerを開いてパックを作るか、手持ちのパックを開きます。
- ブロックやアイテムのテクスチャを開き、メニュー(⋮)からアニメーションにするを選びます。2つのフレームができ、キャンバスの下にフレームの列が出ます。
- フレームを1枚ずつ描きます。+で選んだフレームのコピーを追加でき、⋯メニューでフレームの複製、コピー、貼り付け、移動、削除ができます。オニオンスキンをオンにすると、描いている間ひとつ前のフレームがうっすら見えます。
- 時計のボタンでタイミングを開き、各フレームを何tick表示するか(20tickで1秒)、フレームごとの時間、フレームをなめらかにつなぐを決めます。再生ボタンでゲームと同じ速さで確認できます。
- 書き出すを押します。Java版のパックにはフレームの列の画像と
.png.mcmeta、統合版のパックにはflipbook_textures.jsonの項目が入ります。
フレーム、オニオンスキン、フレームの列
- フレームはマウスでドラッグして並べ替えられます。スマホやタブレットでは⋯メニューの前へ移動と後ろへ移動を使います。
- フレームをクリックしたあと、Alt+矢印キーで移動、Deleteで削除、Ctrl+CとCtrl+Vでコピーして新しいフレームとして貼り付けられます(パック内のどのアニメーションにも貼り付けられます)。描いている間は、カンマとピリオドのキーでフレームを切り替えられます。
- オニオンスキンは、描いているフレームの上にひとつ前のフレームをうっすら表示し、動きを合わせやすくします。⋯メニューから次のフレームも表示できます。
- フレームを1つになるまで削除するか、アニメーションをやめるを選ぶと、テクスチャは止まった状態に戻ります。どちらも元に戻せます。
tickで決めるタイミング
Minecraftは時間をtickで数えます。20tickで1秒なので、1tickは0.05秒です。各フレームは整数のtickだけ表示されます。
| 1フレームのtick | 秒 | 1秒あたりのフレーム |
|---|---|---|
| 1 | 0.05秒 | 20 |
| 2 | 0.1秒 | 10 |
| 4 | 0.2秒 | 5 |
| 10 | 0.5秒 | 2 |
| 20 | 1秒 | 1 |
- 各フレームを表示する時間で、すべてのフレームの速さを決めます。新しいアニメーションは4tickから始まります。
- フレームごとの時間で、一部のフレームだけに時間をつけられます。間を取ったり、一瞬光らせたりするのに使えます。
- フレームをなめらかにつなぐと、流れる水のように、各フレームが1tickずつ次のフレームへ溶け込みます。ゆっくりしたフレームに向いています。
- 再生順では、フレームを好きな順番で何度でも再生できます。
1, 2, 3, 2で行って戻り、1-8で範囲を再生し、3:40でフレーム3を40tick表示します。
Java版:.png.mcmetaファイル
Java版は、テクスチャと同じ名前に.mcmetaを付けた、すぐ隣のファイルからアニメーションを読みます。stone.pngならstone.png.mcmetaです。フレームは上から下へ並び、frametimeはtick単位の速さ(省略すると1)、framesは再生順で、長く表示するフレームにはtimeを付けます。
{
"animation": {
"interpolate": true,
"frametime": 4,
"frames": [
0,
1,
{
"index": 2,
"time": 10
},
1
]
}
}正方形ではないフレームは、1.13以降でサイズを書きます。ゲームはそのフレームを、左から右へ行ごとに読みます。
{
"animation": {
"width": 32,
"height": 16,
"frametime": 2
}
}| バージョン | アニメーションでできること |
|---|---|
| 1.6.1 – 1.7.10 | 速さ(frametime)と、時間付きの再生順(frames)。フレームは画像と同じ幅の正方形です。 |
| 1.8 – 1.12.2 | なめらかなつなぎ(interpolate)も使えます。 |
| 1.13以降 | どんなサイズのフレームも使えます(width、height)。 |
| 1.21.2以降 | なめらかなつなぎで透明なピクセルも溶け込みます。それより前は色だけが溶け込み、各フレームは自分の透明度のままです。 |
エディターはパックのいちばん古いバージョンが読める形で書き出し、範囲内のバージョンで一部を再生できないときは書き出し時に知らせます。Java版がアニメーションするのは、テクスチャアトラスにまとめるテクスチャです。ブロックとアイテムは全バージョン、パーティクル、絵画、効果のアイコンは1.14から、チェスト、ベッド、看板、旗、盾、シュルカーボックスは1.15から、GUIスプライトは1.20.2からです。モブのスキン、防具、フォント、カラーマップ、パックアイコンは単独で描かれて止まったままなので、エディターはアニメーションにせずにそのことを伝えます。
統合版:フリップブックテクスチャ
統合版はアニメーションをtextures/flipbook_textures.jsonにまとめています。各項目には、テクスチャと、それを表示するterrain_texture.jsonのブロックのタイルを書きます。
[
{
"flipbook_texture": "textures/blocks/glowstone",
"atlas_tile": "glowstone",
"ticks_per_frame": 4,
"frames": [0, 1, 1],
"blend_frames": false
}
]| 項目 | 役割 |
|---|---|
flipbook_texture | テクスチャのパス(拡張子なし)。 |
atlas_tile | アニメーションにするterrain_texture.jsonのブロックのタイル。 |
atlas_index、atlas_tile_variant | 複数のテクスチャを持つタイルのどれか(0から)。 |
ticks_per_frame | 各フレームのtick(20tick=1秒)。すべてのフレームで同じ速さです。 |
frames | 再生順。長く表示するフレームは何度も書きます。 |
blend_frames | フレームをなめらかにつなぎます(省略するとオン)。「フレームをなめらかにつなぐ」をオンにしない限り、エディターはfalseを書きます。 |
replicate | ゲームが流れる水と溶岩に使っています。そのまま残します。 |
フレームは画像と同じ幅の正方形で、上から下へ並びます。エディターはゲームの項目もあなたの項目と一緒に書き出すので、水、溶岩、炎などのアニメーションするブロックは動き続けます。
GIFの読み込みとGIFでの保存
- テクスチャのメニューか⋯メニューのGIFや画像を読み込む…では、アニメーションGIF、スプライトシート(テクスチャと同じサイズのフレームを横に並べたもの、または正方形の列)、複数の画像(名前の順)を読み込めます。GIFをキャンバスにドロップしても読み込めます。
- どのフレームもぼかさずにテクスチャのサイズに変えるので、ドット絵はくっきりしたままです。
- GIFの時間は100分の1秒単位です。100分の5秒が1tickなので、GIFのタイミングは丸めてtickに変わります。今の速さのままにすることもできます。
- GIFとして保存…で、アニメーションを最大16倍の大きさで保存して共有できます。なめらかにつないだフレームは、ゲームでの見え方どおり1tickずつ保存されます。GIFには半透明のピクセルがないため、不透明か透明のどちらかになります。
アニメーションのあるパックを開く
Java版の.zipや統合版の.mcpackを開くと、アニメーションがエディターで再生され、そのまま変更できます。フレーム、速さ、フレームごとの時間、なめらかなつなぎは、パックの.png.mcmetaファイルやフリップブックのリストから読み込みます。アニメーションはプロジェクトと一緒に保存されるので、プロジェクトファイルやバックアップにも残ります。
よくある質問
ゲームでアニメーションが動きません。なぜですか?
Java版では、.png.mcmetaが画像の隣にあり、名前が画像の名前に.mcmetaを付けたものと完全に同じで、テクスチャがゲームのアニメーションする種類(ブロック、アイテム、ほかのアトラスのテクスチャ)である必要があります。統合版では、フリップブックの項目があるブロックのテクスチャだけが動きます。パックがオンになっていて、同じテクスチャを変えるほかのパックより上にあるかも確認してください。
統合版でアイテムをアニメーションにできますか?
できません。統合版のリソースパックがアニメーションにできるのは、flipbook_textures.jsonを使ったブロックのテクスチャだけです。Java版のパックならアイテムもアニメーションにできます。
アニメーションはどこまで速くできますか?
いちばん速いのは1tickに1フレーム、つまり1秒に20フレームです。エディターでは1フレームに最大12,000tick(10分)まで設定できます。
フレームはすべて同じサイズですか?
はい。フレームは1枚の画像から切り出すので、幅も高さも同じです。読み込んだ画像はフレームのサイズに合わせて変わります。