雑用担当の備忘録

技術的な話のみになります。翻訳データそのものはありません。 カテゴリ>その他>注意事項を必ず参照してください

前回の記事を元にまずは画像のみ(4096x4096に変換したもの)を取り込んだ状態
EL05_01
表示されていないですが座標情報が正しくないので表示されないことが正解
座標情報を4096x4096で調整します
EL05_02
表示されます。
大丈夫そうです。
EL05_03
japanese グリフとマージした texture に置き換えて japanese グリフの座標情報を追加すると
上の様に表示されます。

とこんな感じなんですが
今回作成したツール類は提供できますので、ローカライズされたいかたはご連絡ください。
ただし、ツールは手抜き実装のため使用にはくせがありますのでご了承ください。

地震もなんとなく収まりつつあるので続き

SmallText
画像ファイルは sharedassets4_00690.tex なのでこれを png 変換
座標情報は sharedassets4_00013.-2 で "@" で解析します。
"@" の char_code は 64 なのでその部分を抜きだし

[[characters]]
advance = 10.0
char_code = 64
kerning_encoded_data = []

[characters.dimension]
x = 10.0
y = 10.0

[characters.offset]
x = 0.0
y = -8.0

[characters.runtime_texture_coodinates]
height = 0.0
width = 0.0
x = 0.0
y = 0.0

[characters.texture_coordinates]
height = 0.0390625
width = 0.0390625
x = 0.51953125
y = 0.16796875

最後の texture_coordinates が座標情報の部分でこの値は画像の相対値になっています。
この部分を絶対値に変換してみます。
画像のサイズは 256x256 です。

X: 0.51953125 * 256 = 133
Y: 0.16796875 * 256 = 43
width: 0.0390625 * 256 = 10
height: 0.0390625 * 256 = 10

Y が 43 になっていますがこれは原点が画像の左下になっているためです。
画像の原点を左上にするには
256 - 43(Y) - 10(height) = 203
となります。

画像にあてはめます
EL04_01
緑枠の座標が先ほど計算した値になっています。
選択された場所は "@" のグリフになっているので大丈夫そうです。

とここまでの解析でとりあえず表示まで行けるようになるんじゃないですかね。
お試しください。

もう少し書くと
日本語のグリフを埋め込めるようにまずは画像を 4096*4096 に拡大してスペースを空けます。
原点は左下のためオリジナル画像は左下にペースト
EL04_02
4096*4096 なので Y は 4096-43-10=4043
大丈夫そうです。
これから
x: 133 / 4096 = 0.032470703125
y: 43 / 4096 = 0.010498046875
width: 10 / 4096 = 0.00244140625
height: 10 / 4096 = 0.00244140625
となる。
sharedassets4_00013.-2 をこんな感じで更新していけば 4096*4096 の画像で表示され。
あとは上の方に japanese グリフを埋め込みその japanese 座標を追加してやる感じでしょうか。

中の人は九州人でありまして無事ではあるんですが今回の地震にはかなりびびってます…
九州人は本当に地震の耐性が無いので今回のような大きめな奴にはまいります。

↑このページのトップヘ