123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566 |
- using System;
- using UnityEngine;
- public class FadeInAndFadeOutOnGUI : MonoBehaviour
- {
- public void Awake()
- {
- if (this.tex_ == null)
- {
- this.tex_ = new Texture2D(32, 32, TextureFormat.ARGB32, false);
- for (int i = 0; i < 32; i++)
- {
- for (int j = 0; j < 32; j++)
- {
- this.tex_.SetPixel(i, j, Color.white);
- }
- }
- this.tex_.Apply();
- }
- this.Update();
- }
- public void OnDestroy()
- {
- if (this.tex_ != null)
- {
- UnityEngine.Object.DestroyImmediate(this.tex_);
- }
- }
- public void Update()
- {
- }
- public void OnGUI()
- {
- if (this.tex_ != null && this.intensity < 1f)
- {
- Color color = GUI.color;
- GUI.color = new Color(this.color.r, this.color.g, this.color.b, 1f - this.intensity);
- GUI.DrawTexture(this.render_rect_, this.tex_);
- GUI.color = color;
- }
- }
- public bool UpdateRenderRect()
- {
- if (this.window_size_.x != (float)Screen.width || this.window_size_.y != (float)Screen.height)
- {
- this.window_size_.x = (float)Screen.width;
- this.window_size_.y = (float)Screen.height;
- return true;
- }
- return false;
- }
- public float intensity = 1f;
- public Color color = Color.black;
- private Texture2D tex_;
- private Rect render_rect_ = new Rect(0f, 0f, 8192f, 8192f);
- private Vector2 window_size_ = Vector2.zero;
- }
|