UnityでMarqueeな横スクロール&ループなテキストを作ってみる

スポンサーリンク
Unity
スポンサーリンク

ホーム画面で新着ニュースみたいなのが流れるとオシャレだと思って作ってみました。
動けばいいやというやり方です。ご参考程度に

スポンサーリンク

準備

スクロールの土台になる目一杯横長のPanelを設置します。
Text(TextMeshProUGUI)をPanel配下に設置します。
TextにContentSizeFitterをアタッチします。WidthをPreferredにします。
TextをDuplicateしたものを設置します。text1,text2とします

スクリプト

text1のrectTransform.position.xを0にします。
text1.GetComponent<Text>().preferredHeight;を取得しtextWidthとします。
text2のrectTransform.position.xをtextWidth+αにします。
text1,text2のrectTransform.position.xを少しずつ減らします。xが-textWidthを下回ったら、xをtextWidth+αにします。
テキストが短めで横幅に不安がある(x=textWidthが画面外にならない)場合はαを大きくしたり、text3を作ったりして対策してください。

1 Star2 Stars3 Stars4 Stars5 Stars (まだ投票されていません)
読み込み中...

コメント

タイトルとURLをコピーしました