facebook twitter hatena line email

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

提供: 初心者エンジニアの簡易メモ
移動: 案内検索
(ページの作成:「==共通化されているので個別対応する方法== 参考:https://kazupon.org/unity-textmeshpro-outline/ #TextMeshProUGUIのGameObjectのInspectorのところ...」)
 
(Outlineがつぶれないように)
 
(同じ利用者による、間の7版が非表示)
行4: 行4:
 
#TextMeshProUGUIのGameObjectのInspectorのところで、Materialの右上の︙を選択し、CreateMaterialPresetを選択し、Fontと同じディレクトリ内に、マテリアルを作成。
 
#TextMeshProUGUIのGameObjectのInspectorのところで、Materialの右上の︙を選択し、CreateMaterialPresetを選択し、Fontと同じディレクトリ内に、マテリアルを作成。
 
#TextMeshProUGUIのGameObjectのInspectorのMaterialPresetに先程作成した、マテリアルを選択。
 
#TextMeshProUGUIのGameObjectのInspectorのMaterialPresetに先程作成した、マテリアルを選択。
 +
 +
==Outlineがつぶれないように==
 +
参考:https://tsubakit1.hateblo.jp/entry/2017/09/20/220000
 +
 +
#Outlineのthicknessを0.2ぐらいにして
 +
#fontsizeが40だったら、Face側のDilateを0.5ぐらいにする
 +
#fontsizeが80だったら、Face側のDilateを0.25ぐらいにする
 +
 +
==materialPresetのscriptの設定==
 +
fontMaterialに、fontのMaterialを設定
 +
<pre>
 +
public class TextMeshProUGUIOutlineScene : MonoBehaviour
 +
{
 +
    [SerializeField] TextMeshProUGUI text;
 +
    [SerializeField] Material fontMaterial;
 +
    void Start()
 +
    {
 +
        text.fontMaterial = fontMaterial;
 +
    }
 +
}
 +
</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>

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