テキスト#
任意の文字列を表示する機能です。
テキストの表示にはUnityのテキストレンダリングシステム(TextMeshPro)を使用します。
テキストをVCIに配置する#
VCIにテキストを配置するには、以下の手順を行います。
VCIのルートより下のGameObjectに
TextMeshPro - Text
をアタッチします。TextMeshPro - Text
のTextInput
に表示したい文字列を設定します。
TextMeshProをはじめて使用する場合は初期設定メニューが表示されます。
Import TMP Essentials
を押して必要なアセットをインポートしてください。
テキストの設定#
VCIではTextMeshProの一部のプロパティーを利用できます。
TextMeshProの設定は TextMeshPro - Text
のインスペクターから行います。
プロパティ |
説明 |
---|---|
Font Asset |
フォント |
Font Style |
太字、斜体、アンダーライン、取り消し線 |
Font Size |
文字の大きさ |
Vertex Color |
文字の色 |
Color Gradient |
文字のグラデーションカラー |
SpacingOptions |
字間、行間、スペース区切りの間隔、段落の間隔 |
Alignment |
左寄せ、中央寄せ、上揃え…等の設定 |
Wrapping |
文字を折り返し設定 |
Overflow |
字数をオーバーした際の処理 |
Margin |
マージン(余白) |
RichText |
Rich Text タグによるテキストの装飾を有効にします |
Kerning |
カーニングによって自然な文字の間隔に調整します |
ExtraPadding |
文字描画用のスプライトに余白を追加します(オフを推奨) |
使用できるフォント#
以下のフォントを使用できます
NotoSansCJK-Bold_SDF
VCIスクリプトでテキストを書き換える#
VCIスクリプトによって表示するテキストを動的に書き換えることができます。
テキストを書き換えるには ExportAssets.SetText()
または ExportAssets._ALL_SetText()
を使用します。
これらの関数は、テキストを表示するために使用したGameObjectにアタッチされているTextMeshProのTextプロパティを書き換えます。
以下はVCIスクリプトでテキストを書き換えるサンプルです。
-- TextMeshPro - Text が GameObject "TextObject" にアタッチされているとする
function onUse(subItemName)
-- Useしたプレイヤーの環境でのみテキストを書き換える
vci.assets.SetText("TextObject", "任意の文字列")
-- すべての環境でテキストを書き換えたい場合はALL関数を使用する
vci.assets._ALL_SetText("TextObject", "任意の文字列")
end
参考
テキストを使ったVCIのサンプルはこちらを参照してください。
Textを使って時間を表示する [VirtualCast]