facebook twitter hatena line email

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

提供: 初心者エンジニアの簡易メモ
移動: 案内検索
(materialPresetのscriptの設定)
(fontMaterialをLoadする場合)
行25: 行25:
 
</pre>
 
</pre>
 
===fontMaterialをLoadする場合===
 
===fontMaterialをLoadする場合===
Resourcesの下のFonts/~.matを置く。
+
Resourcesの下のFonts/~.matを置く。pathには.matを省いて書く。
 
<pre>
 
<pre>
 
string path = "Fonts/NotoSansJP-Regular SDF_Outline";
 
string path = "Fonts/NotoSansJP-Regular SDF_Outline";
 
var fontMaterial = new Material(Resources.Load<Material>(path));
 
var fontMaterial = new Material(Resources.Load<Material>(path));
 
</pre>
 
</pre>

2023年1月10日 (火) 22:36時点における版

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

参考: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. Face側のDilateを0.5ぐらいにする

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));