unity2019实现画⾯渐隐渐现
近期学习unity3d,⽹上到的教程⼤都为unity5.x,⽽个⼈使⽤的是2019,因此许多细节有所变化
⾸先是跟着某视频教程学习渐隐渐现画⾯的实现时,发现按部就班地编码⽆法实现该功能
搜索许久后发现在新版中应按如下操作:
1. 创建Scripts⽂件夹,并创建C#脚本;同时,在Hierarchy中创建⼀个Game Object(Create empty), 均命名为FadeInOut
2. 编写FadeInOut的C#脚本⽂件,代码如下:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.SceneManagement;
public class FadeInOut : MonoBehaviour
{
public float fadeSpeed = 1.5f; // 渐隐渐现速率
private bool sceneStarting = true; // 表⽰场景是否开始,若开始,需要有溅现效果 private GUITexture tex;
void Start()
{
tex = this.GetComponent<GUITexture>();
tex.pixelInset = new Rect(0, 0, Screen.width, Screen.height);
}
// Lerp函数在update中调⽤
void Update()
{
if (sceneStarting)
{
StartScene();
}
}
/
/ 渐隐
private void FadeToClear()
{
// 溅现
private void FadeToBlack()
{
// 开始溅现,结束渐隐
private void StartScene()
{
FadeToClear();
// alpha 通道⼩于等于0.5
if (lor.a <= 0.05f)
{
sceneStarting = false;
}
}
public void EndScene()
{
FadeToBlack();
if (lor.a >= 0.95f)
{
SceneManager.LoadScene("SampleScene");
}
}
}
3. 点击Hierarchy中的FadeInOut对象,在Inspector中的Transform标签,点击右上⾓的齿轮reset坐标;
后add component添加⼀个GUI Texture,随意保存⼀个⿊⾊背景的图像,将其拖拽到texture中,Color可⾃⼰根据图像背景选择合适的颜⾊;
后拖拽编写的FadeInOut脚本⽂件⾄Inspector
4. 点击Hierarchy中的Main Camera,点击add component, 添加⼀个GUI layer,并勾选unity 教程
5.
如此,即实现初始画⾯的渐隐渐现,调整fade speed,可对速度调整。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论