「Unity/TMPro/Outline」の版間の差分

提供: 初心者エンジニアの簡易メモ
ナビゲーションに移動 検索に移動
編集の要約なし
 
31行目: 31行目:
var fontMaterial = new Material(Resources.Load<Material>(path));
var fontMaterial = new Material(Resources.Load<Material>(path));
</pre>
</pre>
==materialPresetを一括更新==
[[Unity/EditorWindow/TextMeshProUGUIのMaterialPresetを変更]] [ショートカット]

2025年3月15日 (土) 05:08時点における最新版

共通化されているので個別対応する方法

参考:https://kazupon.org/unity-textmeshpro-outline/

  1. TextMeshProUGUIのGameObjectのInspectorのところで、Materialの右上の︙を選択し、CreateMaterialPresetを選択し、Fontと同じディレクトリ内に、マテリアルを作成。
  2. TextMeshProUGUIのGameObjectのInspectorのMaterialPresetに先程作成した、マテリアルを選択。

Outlineがつぶれないように

参考:https://tsubakit1.hateblo.jp/entry/2017/09/20/220000

  1. Outlineのthicknessを0.2ぐらいにして
  2. fontsizeが40だったら、Face側のDilateを0.5ぐらいにする
  3. fontsizeが80だったら、Face側のDilateを0.25ぐらいにする

materialPresetのscriptの設定

fontMaterialに、fontのMaterialを設定

public class TextMeshProUGUIOutlineScene : MonoBehaviour
{
    [SerializeField] TextMeshProUGUI text;
    [SerializeField] Material fontMaterial;
    void Start()
    {
        text.fontMaterial = fontMaterial;
     }
}

fontMaterialをLoadする場合

Resourcesの下のFonts/~.matを置く。pathには.matを省いて書く。

string path = "Fonts/NotoSansJP-Regular SDF_Outline";
var fontMaterial = new Material(Resources.Load<Material>(path));

materialPresetを一括更新

Unity/EditorWindow/TextMeshProUGUIのMaterialPresetを変更 [ショートカット]