前提・実現したいこと
Unityで車のタコメーターやスピードメーターのような円盤と針で数値を表示するようなメーターを作りたいです。
具体的にはクエスト等で獲得したスコアをホーム画面でメーターに反映しMAXになるとレベルが上がるという仕組みにしたいです。
メーターの形としては円形の←(左真横)を0として↑を50%、→(右真横)を100%として針を上側に180度回転して数値が上がっていく形にしたいと考えています。
MAX値はレベルによって変化させたいです。
試したこと
円形のHPゲージのようなものやスピードメーターは検索して出てくるのですが、いまいち自分のやりたいことに落とし込めません。
思いつく範囲で下記のようにして針を動かしてみたりもしたのですがおおざっぱな値でしか動かせませんし、細かくしようとするとスクリプトをすごい数書くことになるのでどうにかして回転の値とスコア値を比例させて動かしたいです。
何かいい方法はないでしょうか?
C#
1int Score = (int)GManeger.MeinScore/1000; 2 3if (Score == 0) 4{ gameObject.transform.localEulerAngles = new Vector3(0, 0, 360); } 5 6if ((Score >= 5)&& (10 > Score)) 7{ gameObject.transform.localEulerAngles = new Vector3(0, 0, 342); }
補足情報(FW/ツールのバージョンなど)
Unity2019.2.8f1
C#
AndroidStudio 3.4.2
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/10/22 08:37
2019/10/22 08:42
2019/10/22 09:24
2019/10/22 09:39