カロリーメイトください

Barbaroi Ware(バルバロイ・ウェア)という名前でアプリ開発してます

『Select10』(勝手に)模写する3

f:id:yjkym:20190103183938p:plain
select10 | 無料ゲーム投稿サイト unityroom - Unityのゲームをアップロードして公開しよう

序文

「Select10」模写3日目。

ボヘミアン・ラプソディまだ見てません。
明日見に行こうかなぁ。

進捗

  • タイトルロゴのフェードイン

コード実装部分(一部)

Select10Copy\Assets\Scripts\TitleDisplayer.cs

using System.Collections;
using UnityEngine;
using DG.Tweening;
using System;

public class TitleDisplayer : MonoBehaviour
{
    public CanvasGroup titleLogoCanvas;

    // Start is called before the first frame update
    void Start()
    {
        // 表示が気持ち悪かったので0.1s待つ
        StartCoroutine(DelayMethod(0.1f, () =>
        {
            titleLogoCanvas.DOFade(0.7f, 1.0f).SetEase(Ease.OutSine);
        }));
    }

    // Update is called once per frame
    void Update()
    {
        
    }

    private IEnumerator DelayMethod(float waitTime, Action action)
    {
        yield return new WaitForSeconds(waitTime);
        action();
    }
}

GitHub

github.com

実行結果

www.youtube.com

感想

タイトルロゴをDOTweenを使ってフェードインさせる。
CanvasGroupコンポーネントを使うといい感じにできるらしい。

オブジェクトの操作は基本的にそのオブジェクト自身に任せるのがいいのかなーとなんとなく思っているのだけど、タイトル画面のアニメーションみたいな定型的なものはひとつのクラスで管理してやるほうがよいような気がする。
結果どういう指針で設計すればいいのかよくわからない。

元のプロジェクトと同じパラメータを設定しているつもりなのだけど、フェードインがきれいにできなくてなんか白抜きみたいな感じになる。
TextMeshProの別のパラメータを弄ってなんとなくそれっぽく見せる。
フォントをアセット化するときになんか違うことやってるのかなー。わからん。

このまま進めるととっ散らかっちゃいそうな気がするので、ちょっと設計とか考えてみたほうがいいかも。
やっぱりUML書きながらやったほうがいいのかな。

カロリーメイトください。

参考

kan-kikuchi.hatenablog.com
qiita.com

今日のunityroom

旗取りゲーム | 無料ゲーム投稿サイト unityroom - Unityのゲームをアップロードして公開しよう www.youtube.com やったー