【UE5】脳筋グリフ修正 – Unreal Engine 5.4

Unreal Engine

水ノ茉の宣伝

準備中...
ゲームを作る予定なの
水ノ茉こおり

始まり

アウトラインが!ズレるの!うがああ!!

先々週に一時的な対処方法は確立させたんだけど、グリフの探し方を忘れちゃったの。

思い出せなかったからもっと簡単な別の方法を見つけたの。

どうせ未来には忘れるの。

メモるの。

あと絶対に正攻法じゃないけど、結果論としては直るから、まぁ、ええやろ。

結果論が大事。過程は評価に占める割合が低いので、あんまり気にしない派です。

グリフインデックスを探す

  1. ShapedTextCacheUtil::GetShapedTextSubSequence
  2. ShapedTextの後にブレークポイント
  3. GlyphsToRenderからGlyphIndexが見れるよ
    InTextと比較すればいいよ

メッシュをオフセット

  1. bCanRenderGlyphのスコープ内で気合の条件分岐を書く
  2. GlyphToRenderからGlyphIndexを見れるよ
  3. GlyphToRender.FontFaceDataのnullチェックした後にFontScaleとか見れるよ

おわり!!!

画面サイズによってズレの有無が違うから気合の条件分岐が必要なの。

1ピクセルの誤差だから精度辺りが怪しいとは思うんだけど、SlateFontの実装を広範囲で読む気力は今はない。

未来永劫ない気もする。

既視感

むふふ。

√分岐回収時のCtrlキー押しっぱ挙動。

あとはマウスホイールを上に回転させた際にバックログを表示させればもっとそれっぽいのです。