【ハルシオンブログ】ポップアップの出し入れの演出とか、ちょっと手を加えてシュッと出すだけで見栄えが変わりますよね!
おはようございます。
今週はお盆でございますな。でも仕事です。坂内っす。
みなさん帰省でしょうか?私は実家に住み着いてるので、いつもどおり飲み以外で家でません。はい。
さて、Unityのお話。
ゲームを作っていく上で、ポップアップを出す機会って結構ありますよね。
こんな感じに。

なんか味気ないですよね。
そんな時は、DoTweenを使いましょ。

こんな感じになったりします。
【Popup.cs】
他にも、こんな感じにしたり・・・

【Popup.cs】
ポップアップの出し入れにもちょっとした工夫をすると見栄えが良くなりますよね!
簡単にできるのでお試しあれ!
それでは皆さんお盆休み楽しんでください!
あでゅ~ノシ
今週はお盆でございますな。でも仕事です。坂内っす。
みなさん帰省でしょうか?私は実家に住み着いてるので、いつもどおり飲み以外で家でません。はい。
さて、Unityのお話。
ゲームを作っていく上で、ポップアップを出す機会って結構ありますよね。
こんな感じに。

なんか味気ないですよね。
そんな時は、DoTweenを使いましょ。

こんな感じになったりします。
【Popup.cs】
using UnityEngine;
using DG.Tweening;
public class Popup : MonoBehaviour {
private void Start() {
transform.localScale = new Vector3(0f,0f,0f);
transform.DOScale(1f,0.2f);
}
public void OnClose() {
Sequence seq = DOTween.Sequence();
seq.Append(transform.DOScale(0f, 0.2f));
seq.OnComplete(() => DestroyWindow());
seq.Play();
}
void DestroyWindow() {
Destroy(gameObject);
}
}
他にも、こんな感じにしたり・・・

【Popup.cs】
using UnityEngine;
using DG.Tweening;
public class Popup : MonoBehaviour {
const float MOVE_TIME = 0.4f;
private void Start() {
GetComponent<CanvasGroup>().alpha = 0;
transform.localPosition = new Vector3(0f,600f,0);
transform.localScale = new Vector3(0f,0f,0f);
Sequence seq = DOTween.Sequence();
seq.Join(GetComponent<CanvasGroup>().DOFade(1f, MOVE_TIME * 2));
seq.Join(transform.DOLocalMoveY(0f, MOVE_TIME));
seq.Join(transform.DOScale(1f, MOVE_TIME));
seq.Play();
}
public void OnClose() {
Sequence seq = DOTween.Sequence();
seq.Join(GetComponent<CanvasGroup>().DOFade(0f, MOVE_TIME));
seq.Join(transform.DOLocalMoveY(-600f, MOVE_TIME));
seq.Join(transform.DOScale(0f, MOVE_TIME));
seq.OnComplete(() => DestroyWindow());
seq.Play();
}
void DestroyWindow() {
Destroy(gameObject);
}
}
ポップアップの出し入れにもちょっとした工夫をすると見栄えが良くなりますよね!
簡単にできるのでお試しあれ!
それでは皆さんお盆休み楽しんでください!
あでゅ~ノシ
Category: 開発日記(Unity)
« 【ハルシオンブログ】何も思いつかないので普段使ってるけど書いてないちょっとした小ネタを… | 【ハルシオンブログ】フォントで特定の文字だけ使いたいけど容量がーって時の話。 »
コメント
| h o m e |