unityのスプライトの点灯・消滅の繰り返しの処理が実行できません。主にゲームのタイトル画面で使いたい処理なんですが、、、(press any key のゆっくりな表示・非表示)
using System.Collections; using System.Collections.Generic; using UnityEditor.Compilation; using UnityEngine; using UnityEngine.UI; public class Fadein : MonoBehaviour { public float speed = 0.01f;//表示速度 float alfa;//アルファ値を扱います float red, green, blue;//RGB扱います。 // Start is called before the first frame update void Start() { ///RGBの色の取得/// red = GetComponent<SpriteRenderer>().color.r; green = GetComponent<SpriteRenderer>().color.g; blue = GetComponent<SpriteRenderer>().color.b; } // Update is called once per frame void FixedUpdate() { //利用用取得 GetComponent<SpriteRenderer>().color = new Color(red, green, blue, alfa); //一定間隔でアルファ値に加算 alfa += speed; } }
上記のような単純な文章だけなら、スプライトのフェードインの処理だけ実行することができたので、
以下のようにやってみたびですができませんでした。
using System.Collections; using System.Collections.Generic; using UnityEditor.Compilation; using UnityEngine; using UnityEngine.UI; public class Fadein : MonoBehaviour { public float speed = 0.01f; float alfa; float red, green, blue; // Start is called before the first frame update void Start() { red = GetComponent<SpriteRenderer>().color.r; green = GetComponent<SpriteRenderer>().color.g; blue = GetComponent<SpriteRenderer>().color.b; } // Update is called once per frame void FixedUpdate() { GetComponent<SpriteRenderer>().color = new Color(red, green, blue, alfa); if(alfa == 0) { while(alfa > 1) { alfa += speed; } } else { if(alfa == 1) { while(alfa > 0) { alfa -= speed; } } } } }
上記の方法で実行してしまうと、表示されるどころか何も表示されなくなってしまいます。だれか知恵を貸してください。お願いします・
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/08/17 07:21