スポンサーリンク

【Unity】Text Mesh Pro で数字を表示する時に GC Allocの発生を防ぐことができる拡張メソッド作りました

2020年12月12日C#.NET, Unity, 開発

Text Mesh Pro で数字を表示する時に GC Allocの発生を防ぐことができる拡張メソッド作りました。

Text Mesh Proで数字を表示される場合、GC Allocが発生します。
詳細は、いろんな方が記事に書いて頂いているのでそちらを参照してください。

テラシュールブログ様のリンク

また、TextMeshProでGC Allocを発生させない方法としてSetText関数が準備されていますが、float型の引数になっているため、
大きな整数値の場合は誤差が発生してしまいます。
こちらの詳細も他の方が既に記事にして頂いているので、そちらを参照してください。

まさかみブログ様のリンク

上記2つの問題を解決した上で、メソッドにパラメータを渡すだけのシンプルな方法で数字を表示することができないか考えた結果、
関数内でSetCharArrayを呼び出す、Text Mesh Proの拡張メソッドを作成することにしました。
↓のリンクからリポジトリに飛べるようになっています。

TMProExtensions.cs

以下に、ソースを記載しています。

使い方サンプルは以下になります。

ゲームなどのパフォーマンスが求められるアプリのスコア表示等に利用してみてください!

スポンサーリンク