リソースパックにフォントを追加する【Minecraftコマンド技法】

リソースパックのフォント追加方法【Minecraftコマンド技法】

目的:フォントの追加
執筆時環境:Minecraft ver.1.16.5

スポンサーリンク
レクタングル




はじめに

Minecraftのデータパックのためのコマンド紹介です。

公式Wikiのチュートリアルをある程度理解している脱初心者~中級者向けの内容となっております。

初心者向けの解説はそのうち、気が向いたらになると思います。

データパックがわからない方はブラウザバック推奨。

では初めて行きましょう。

フォントのjsonの基本構造

tegaki.json

{
    "providers": [
        {
            "type": "bitmap",
            "file": "minecraft:font/tegaki.png",
            "ascent": 7,
            "chars": [
                "\u0041\u0042\u0043\u0044",
                "\u0045\u0046\u0047\u0048"
            ]
        }
    ]
}

(tagaki.png)

楓の超適当に書いた手書きフォントを使います。(5分クオリティ)

tegaki.jsonをassets/minecraft/fontフォルダ内に

tegaki.pngをassets/minecraft/textures/fontフォルダ内にそれぞれ配置します。

ゲーム内でtellrawコマンドで作ったフォントを実行するとこんな感じ

/tellraw @s {“text”:”ABCDEFGH”,”font”:”tegaki”}

反映されていますね。ちなみにI以降のアルファベットは作ってないのでバグります。

構造の解説

type

bitmapttfのどちらかを指定できますが、実質bitmap一択になります。

ttfを指定することで通常のフォントファイルを使えますが、試験的な機能なのでここでは省きます。

file

使用するフォントの画像ファイルを指定します。文字を等間隔の格子状に敷き詰めた画像を用意してください。

透明部分は自動トリミングされて横詰されるので、一文字を等間隔で設置したい場合は上の例のように背景を塗りつぶすか、5%程度の透明色で塗りつぶす必要があります。

ascent

フォントの表示位置を微調整します。一文字のサイズが16*16なら7がちょうどいいです。

chars

割り当てる文字をunicode番号で指定します。格子状に指定された文字を順番に指定し、行が変わるごとにカンマで区切ります。

上の例だと1行目が大文字のABCD、2行目が大文字のEFGHです。

まとめ

質問・意見などあれば答えられる範囲で返答いたしますのでこちらのコメント欄にどうぞ。

スポンサーリンク
レクタングル