在Unity中一些Loading界面制作的小技巧

这篇具有很好参考价值的文章主要介绍了在Unity中一些Loading界面制作的小技巧。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

1.使用自己的图片制作游戏开始、加载界面。

2.制作加载进度条并且实现场景跳转

3.制作简单计时器并且实现场景跳转


1.使用自己的图片制作游戏开始、加载界面。

添加Canvas,image,Rawimage.

将图片导入到Unity中,可以创建一个文件夹保存它们,直接拖拽进来即可。(图片拖拽到Rawimage上,就会显示图片)

2.制作加载进度条并且实现场景跳转

首先先添加场景:

unity loading,游戏开发中常见问题梳理,unity,游戏引擎

后面的一些数字就代表着它们,会被写进代码里面实现跳转。

添加Slider和文本,可以调整成自己喜欢的形状和颜色。

实现代码:

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

using UnityEngine.UI;

public class Load: MonoBehaviour
{
    /// <summary>
    /// 进度条下方显示的文本
    /// </summary>
    [SerializeField]
    Text Aegis_text;
    /// <summary>
    /// 进度条
    /// </summary>
    [SerializeField]
    Slider slider;
    /// <summary>
    /// 文字后方点数显示
    /// </summary>
    float pointCount;
    /// <summary>
    /// 当前进度
    /// </summary>
    float progress = 0;
    /// <summary>
    /// 进度条读取完成时间
    /// </summary>
    float total_time = 10f;
    /// <summary>
    /// 计时器
    /// </summary>
    float time = 0;
    void OnEnable()
    {
        //开启协程
        StartCoroutine("AegisAnimation");
    }
    void Update()
    {
        //记录时间增量
        time += Time.deltaTime;
        //当前进度随着时间改变的百分比
        progress = time / total_time;
        if (progress >= 1)
        {
            UnityEngine.SceneManagement.SceneManager.LoadScene(1);//假装的加载完成后,还是要跳转到目标场景
            return;
        }
        //把进度赋给进度条的值
        slider.value = progress;
    }
    void OnDisable()
    {
        //关闭协程
        StopCoroutine("AegisAnimation");
    }
    /// <summary>
    /// 文本显示协程
    /// </summary>
    /// <returns></returns>
    IEnumerator AegisAnimation()
    {

        while (true)
        {
            yield return new WaitForSeconds(0.1f);
            float f = slider.value;
            //设置进度条的value值在某个区间的时候要显示的字符串
            string reminder = "";
            if (f < 0.25f)
            {
                reminder = "咕咕正在为您努力加载噢...";
            }
            else if (f < 0.5f)
            {
                reminder = "击败小怪可以为自己的人物升级...";
            }
            else if (f < 0.75f)
            {
                reminder = "可以通过购买工具达到更高的攻击力...";
            }
            else
            {
                reminder = "上传数据中...";
            }
            //显示字符串后面的“.”
            pointCount++;
            if (pointCount == 7)
            {
                pointCount = 0;
            }
            for (int i = 0; i < pointCount; i++)
            {
                reminder += ".";
            }
            //把显示内容赋给场景中的text
            Aegis_text.text = reminder;
        }
    }
}

一定要记得把进度条以及文本拖拽到脚本上面去,不然就无法运行。

3.制作简单计时器并且实现场景跳转

其实上面就用到了计时器,效果一致。

代码演示:

using UnityEngine;
using System.Collections;
using UnityEngine.UI;
using System.Threading;

public class TT4 : MonoBehaviour
{
   // private float alpha = 1.0f;
    private CanvasGroup cg;
    //计时器
    float time = 0;
    float progress = 0;
    
    float total_time = 3f;

    void Start()
    {
        cg = this.transform.GetComponent<CanvasGroup>();
    }

    void Update()
    {
       if(cg.alpha==1)
        { //记录时间增量
            time += Time.deltaTime;
            //当前进度随着时间改变的百分比
            progress = time / total_time;
            if (progress >= 1)
            {
                UnityEngine.SceneManagement.SceneManager.LoadScene(0);
                return;
            }
           
        }

    }
}

时间的控制大家可以自行调整。文章来源地址https://www.toymoban.com/news/detail-794239.html

到了这里,关于在Unity中一些Loading界面制作的小技巧的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Unity 3D 一些对Scene窗口的调整以及摄像头的调整技巧

    入门小菜鸟,希望像做笔记记录自己学的东西,也希望能帮助到同样入门的人,更希望大佬们帮忙纠错啦~侵权立删。 目录 1、如何随心所欲地调整我们所看到的Scene窗口的角度呢? 2、如何让Scene窗口和Main Camera看到的一样? 今天初学Unity,刚开始就被Scene窗口和Main Camera整活

    2023年04月20日
    浏览(33)
  • 【解决】使用Nginx给minio做代理转发 进入管理界面查看桶一直显示loading问题

    使用Nginx给minio做端口代理转发 进入管理界面查看桶一直显示loading问题 按F12查看了一下,查看桶发起的是 websocket 请求。 在 nginx配置 上加上websocket支持 我的完整配置 记得重载nginx配置才生效    

    2024年02月11日
    浏览(65)
  • vue3中一些简单的小技巧

    最近在学习vue3+vite的时候学习到的一些小技巧,现在记录一下 学习vue3+vite中看到了一些小技巧,这个小技巧可以在写代码时更加的顺畅,更加的丝滑。 在写vue3中,有一个语法糖大家一定很清楚,那就是setup,但使用setup语法带来的一个问题就是无法自己设置name,而当我们使

    2023年04月09日
    浏览(33)
  • Unity3D制作注册登录界面,并实现场景跳转

    效果预览图片: 效果预览视频: 一、新建项目工程 1、打开Unity3D,新建一个项目,将其命名为“Login”。我这里用的版本是Unity2018.4.2f1,不同版本制作过程中的界面可能稍有不同,但是不影响具体功能的实现。 2、可以将样例场景SampleScene重命名为Login,最好做到见名知意。

    2024年02月03日
    浏览(76)
  • 【unity实战】随机地下城生成2——绘制地图Tilemap的使用及一些技巧的使用(含源码)

    参考原视频链接: 【视频】:https://space.bilibili.com/370283072 注意 :本文为学习笔记记录,推荐支持原作者,去看原视频自己手敲代码理解更加深入 修改素材配置 切割图片 绘制瓦片地图 先新建我们的调色盘,保存好位置 拖入我们刚才切片好的素材 在房间预设体创建我们的瓦

    2024年02月13日
    浏览(41)
  • 【UnityRPG游戏制作】Unity_RPG项目之界面面板分离和搭建

    👨‍💻个人主页 :@元宇宙-秩沅 👨‍💻 hallo 欢迎 点赞👍 收藏⭐ 留言📝 加关注✅! 👨‍💻 本文由 秩沅 原创 👨‍💻 收录于专栏 :Unity基础实战 插件为Unity自带的UGUI各控件实现 StartPanel ——(开始面板创建) StartTipPanel ——(游戏说明面板创建) defeatPanel ——(失败界面面

    2024年04月24日
    浏览(58)
  • Unity3D学习之UI系统——用NGUI制作游戏登陆界面

    会省略一些东西,可以看我的NGUI的博客 设置UI分辨率自适应 设置Root 的层级 和摄像机渲染的层级为UI 主摄像机不渲染UI 一般都是美术给一个示意图,然后按示意图上拼面板 3.1.1 制作图集 制作两个新图集 3.1.2 拖面板 检查DrawCall 3.1.3 面板基类 创建面板基类, 首先设置成单例

    2024年02月19日
    浏览(74)
  • 微信小程序开发系列(二十九)·界面交互API·loading 提示框、showModal模态对话框、showToast消息提示框

    目录 1.  loading 提示框 1. 1  wx.showLoading()显示loading提示框 1.2  wx.hideLoading()关闭 loading 提示框 2.  showModal 模态对话框 3.  showToast 消息提示框         小程序提供了一些用于界面交互的 API,例如:loading 提示框、消息提示框、模态对话框等 API。 loading 提示框常配合网络请

    2024年03月25日
    浏览(41)
  • web前端开发教学视频,VUE项目配置ESlint后一些报错解决方式,4个改变你编程技能的小技巧

    ‘no-delete-var’: 2, // 禁止出现未使用的变量 ‘no-unused-vars’: [2, {‘vars’: ‘local’, ‘args’: ‘none’}], // 禁止出现空函数 ‘no-empty-function’: 2, // 禁用不必要嵌套块 ‘no-lone-blocks’: 2, // 这条规则强制执行v-on指令样式,您应该使用速记。 ‘vue/v-on-style’: [2, ‘shorthand’], //*

    2024年04月13日
    浏览(33)
  • 抖音短视频脚本制作的一些技巧,快快收藏起来!

    在抖音上发布一个成功的短视频需要多方面的考虑,其中最重要的是脚本的制作。一个好的脚本不仅可以吸引用户观看,还可以让用户产生共鸣,从而提高视频的传播效果。以下是不若与众科技一些关于抖音短视频脚本制作的技巧。   1. 简短明了 抖音短视频的时长通常在1

    2024年02月16日
    浏览(42)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包