Unity 逐字显示 打字机效果

简介: 在 Unity 中实现逐字显示的打字机效果,主要通过 UGUI Text 组件和 C# 脚本完成。核心原理是将文本逐字拆分并按时间间隔依次显示。具体步骤如下:1. 创建 Text 组件和脚本;2. 使用协程或 Update 方法控制字符逐个显示。代码示例展示了两种实现方式,一种使用协程 `IEnumerator`,另一种通过 `Update` 方法结合 `Substring` 实现逐字显示效果。

在 Unity 中实现逐字显示的打字机效果,核心原理是对文本内容进行逐字拆分,并在一定的时间间隔内依次显示每个字符,以下从不同实现方式详细阐述其原理和实现步骤:
基于 UGUI Text 组件实现
原理概述
借助 Unity 的 UGUI(Unity GUI)系统中的 Text 组件,将完整的文本内容存储起来,然后通过一个计时器控制,按顺序逐个字符地添加到 Text 组件的显示文本中,从而模拟打字机逐字显示的效果。
具体步骤及代码示例

  1. 准备工作
    在 Unity 场景中创建一个 Text 组件,用于显示文本内容。同时创建一个 C# 脚本,将其挂载到包含 Text 组件的游戏对象上。
  2. 代码实现如下:
    ```
    using System.Collections;
    using System.Collections.Generic;
    using UnityEngine;
    using UnityEngine.UI;
    ///
    /// *Unity文字逐字显示实现*
    ///
    public class Text_ : MonoBehaviour
    {
    public Text text;
    private string str = "*Unity文字逐字显示实现*";

    private float waitTime = 0.2f; //字符间隔

    private float speed = 0; //计时

#region 第一种方法实现
void Start()
{
    //StartCoroutine("Numerator");  //开启协程
}
IEnumerator Numerator()
{
    foreach (var item in str)
    {
        text.text += item;
        yield return new WaitForSeconds(waitTime);
    }
}
#endregion

#region 第二种方法实现
private void Update()
{
    //speed += 0.2f;     //直接加等于也可以      亲测可用
    speed += Time.deltaTime * 10f;   //感觉慢就乘上一个数

    text.text = str.Substring(0, (int)speed + 1);

    //Substring 逐个增加字符串的数量   vs 可按F12自行查看

}
#endregion

}
```

相关文章
|
9月前
|
搜索推荐
VBA实现文本对比着色
VBA实现文本对比着色
79 0
|
9月前
|
C语言
c语言编程练习题:7-3 输出带框文字
本题要求编写程序,输出指定的带框文字。
149 0
|
6月前
Axure 母版红色怎么去除?
Axure 母版红色怎么去除?
58 0
|
9月前
|
存储
46.编写程序在屏幕上显示如下图形
46.编写程序在屏幕上显示如下图形
60 2
|
9月前
|
索引
在微信小游戏制作工具中实现文字逐个出现的打字机效果
在微信小游戏制作工具中实现文字逐个出现的打字机效果
99 0
|
小程序 索引
如何实现文字逐个出现的打字机效果
今天分享一下如何在微信小游戏制作工具中实现文字逐个出现的打字机效果,这个小功能可以用于游戏中的文字对白的展示,如果你要做的是一个文字类游戏的话,那么肯定用的上。
172 0
|
自然语言处理 C++
制作有道词典——标题栏
制作有道词典——标题栏
制作有道词典——标题栏
|
前端开发 JavaScript
前端实践小项目——表格隔行换色与秒表(含有源代码)
准备表格:表头(thead)和表体(tbody) 绑定事件:加载事件 onload() 获取元素:获取表格 document.getElementById() 获取行的长度:表体中tr的数量len 遍历:for 判断:判断奇偶行 设置背景颜色:css
180 0
前端实践小项目——表格隔行换色与秒表(含有源代码)
|
vr&ar 图形学
【Unity3D 灵巧小知识点】☀️ | Unity控制台 输出打印不同颜色的字体
Unity 小科普 老规矩,先介绍一下 Unity 的科普小知识: Unity是 实时3D互动内容创作和运营平台 。 包括游戏开发、美术、建筑、汽车设计、影视在内的所有创作者,借助 Unity 将创意变成现实。 Unity 平台提供一整套完善的软件解决方案,可用于创作、运营和变现任何实时互动的2D和3D内容,支持平台包括手机、平板电脑、PC、游戏主机、增强现实和虚拟现实设备。 也可以简单把 Unity 理解为一个游戏引擎,可以用来专业制作游戏!
【Unity3D 灵巧小知识点】☀️ | Unity控制台 输出打印不同颜色的字体

热门文章

最新文章