【ハルシオンブログ】初心に戻って。画面をタップすると文字がぽーんって表示する方法。それにしても体裁もなんもない汚いブログですね。(∀`*ゞ)テヘッ
おはようございます。坂内です。
ここ数年鳴りを潜めていた花粉が俺の中で大暴れしているようです。
つ、つれえ orz
さて、ネタもないので、初心に戻って「画面をタップすると数字が飛び出るよ」とかってものを解説。
【数字が飛び出るよ】
①飛び出るテキストを用意しよう

UIー>Textで飛び出るテキストのベースを用意
②テキストにフォントを指定したり、サイズを指定しよう
③出現場所から上にぽーんと飛び出る動きを作る
ぽーんと飛び出る感じにしたいので、作成したTextにRigidbody2Dを付けます。(物理法則にしたがって上に飛んだあとに落としたいから)

④以下のスクリプトを①で作ったテキストオブジェクトにつけます。
<PopupText.cs>
⑤このテキストオブジェクトはプレハブにしておきます。

【呼び出されたら上で作った数字が飛び出るようなものを作る】
①とりあえずこんな感じのスクリプトを作ってCanvasにでもつけておきましょう。
<PopupManager.cs>
popupObjectには先ほど作ったテキストのプレハブをアサインします。

【画面をタップ】
簡単に画面をタップといってもいくつか方法があると思います。
その中の2つほどを紹介。
■画面全部をボタンにする方法
①こんな感じで画面いっぱいにImageを置きます。

②ImaageのColorにあるαを0にして見た目は何もないようにします。
③ImageにButtonコンポーネントを付ける。
ButtonのOnClickにCanvasにつけたPopupManagerのPopupObjectを指定します。

■画面がタップされたのを検出する方法
①先ほど作ったPopupManager.csに次のコードを追加する。
<PopupManager.cs>
追加されたのはvoid Updateです。
Input.GetMouseButtonDown(0)で「画面が押された」を検出しています。
以上、【数字が飛び出るよ】【呼び出されたら上で作った数字が飛び出るようなものを作る】【画面をタップ】
の3つの過程を終えると、こんな感じの物ができます。

ってことで、文字を飛び出す方法でした。
あでゅ~ノシ
ここ数年鳴りを潜めていた花粉が俺の中で大暴れしているようです。
つ、つれえ orz
さて、ネタもないので、初心に戻って「画面をタップすると数字が飛び出るよ」とかってものを解説。
【数字が飛び出るよ】
①飛び出るテキストを用意しよう

UIー>Textで飛び出るテキストのベースを用意
②テキストにフォントを指定したり、サイズを指定しよう
③出現場所から上にぽーんと飛び出る動きを作る
ぽーんと飛び出る感じにしたいので、作成したTextにRigidbody2Dを付けます。(物理法則にしたがって上に飛んだあとに落としたいから)

④以下のスクリプトを①で作ったテキストオブジェクトにつけます。
<PopupText.cs>
using UnityEngine;
using UnityEngine.UI;
public class PopupText : MonoBehaviour {
int[] RANDOM_NUM = {0,999999};
float[] UP_POWER = {300f,450f};
void Awake() {
transform.SetParent(GameObject.Find("Canvas").transform,false);
}
void Start () {
Text txt = GetComponent <Text>();
txt.text = Random.Range(RANDOM_NUM[0],RANDOM_NUM[1]).ToString("n0");
Rigidbody2D rigid = GetComponent<Rigidbody2D>();
rigid.AddForce(Vector2.up * Random.Range(UP_POWER[0],UP_POWER[1]));
Invoke("DestroyNum",1.5f);
}
void DestroyNum() {
Destroy(gameObject);
}
}
⑤このテキストオブジェクトはプレハブにしておきます。

【呼び出されたら上で作った数字が飛び出るようなものを作る】
①とりあえずこんな感じのスクリプトを作ってCanvasにでもつけておきましょう。
<PopupManager.cs>
using UnityEngine;
public class PopupManager : MonoBehaviour {
public GameObject popupObject;
public void PopupObject() {
Instantiate(popupObject);
}
}
popupObjectには先ほど作ったテキストのプレハブをアサインします。

【画面をタップ】
簡単に画面をタップといってもいくつか方法があると思います。
その中の2つほどを紹介。
■画面全部をボタンにする方法
①こんな感じで画面いっぱいにImageを置きます。

②ImaageのColorにあるαを0にして見た目は何もないようにします。
③ImageにButtonコンポーネントを付ける。
ButtonのOnClickにCanvasにつけたPopupManagerのPopupObjectを指定します。

■画面がタップされたのを検出する方法
①先ほど作ったPopupManager.csに次のコードを追加する。
<PopupManager.cs>
using UnityEngine;
public class PopupManager : MonoBehaviour {
public GameObject popupObject;
public void PopupObject() {
Instantiate(popupObject);
}
void Update() {
if(Input.GetMouseButtonDown(0)) {
PopupObject();
}
}
}
追加されたのはvoid Updateです。
Input.GetMouseButtonDown(0)で「画面が押された」を検出しています。
以上、【数字が飛び出るよ】【呼び出されたら上で作った数字が飛び出るようなものを作る】【画面をタップ】
の3つの過程を終えると、こんな感じの物ができます。

ってことで、文字を飛び出す方法でした。
あでゅ~ノシ
Category: 開発日記(Unity)
« 【ハルシオンブログ】プロジェクトのUnityのバージョンを知りたかった時の話。 | 【ハルシオンブログ】RPGのストーリーパートで宴を使ってるわけですが。 »
コメント
| h o m e |