facebook twitter hatena line email

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

提供: 初心者エンジニアの簡易メモ
移動: 案内検索
(materialPresetのscriptの設定)
(Outlineがつぶれないように)
 
(同じ利用者による、間の4版が非表示)
行9: 行9:
  
 
#Outlineのthicknessを0.2ぐらいにして
 
#Outlineのthicknessを0.2ぐらいにして
#Face側のDilateを0.5ぐらいにする
+
#fontsizeが40だったら、Face側のDilateを0.5ぐらいにする
 +
#fontsizeが80だったら、Face側のDilateを0.25ぐらいにする
  
 
==materialPresetのscriptの設定==
 
==materialPresetのscriptの設定==
fontMaterialにfontのところにできたMaterialを設定
+
fontMaterialに、fontのMaterialを設定
 
<pre>
 
<pre>
 
public class TextMeshProUGUIOutlineScene : MonoBehaviour
 
public class TextMeshProUGUIOutlineScene : MonoBehaviour
行23: 行24:
 
     }
 
     }
 
}
 
}
 +
</pre>
 +
===fontMaterialをLoadする場合===
 +
Resourcesの下のFonts/~.matを置く。pathには.matを省いて書く。
 +
<pre>
 +
string path = "Fonts/NotoSansJP-Regular SDF_Outline";
 +
var fontMaterial = new Material(Resources.Load<Material>(path));
 
</pre>
 
</pre>

2023年1月10日 (火) 23: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. 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));