这篇文章主要为大家详细介绍了unity实现文字滚动效果,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
本文实例为大家分享了unity实现文字滚动效果的具体代码,供大家参考,具体内容如下
效果:


代码:
using System.Collections;
using System.Collections.Generic;
using UnityEngine.UI;
using UnityEngine;
using System;
//移动类型
[Serializable]
public enum MoveType
{
[EnumAttirbute("水平滚动")]
horMove,
[EnumAttirbute("垂直滚动")]
verMove
}
//方向
[Serializable]
public enum Direction
{
[EnumAttirbute("正方向")]
JustDirection,
[EnumAttirbute("反方向")]
OppositeDirection
}
public class ScrollInformation : MonoBehaviour {
[EnumAttirbute("类型")]
public MoveType moveType; //类型
[EnumAttirbute("方向")]
public Direction direction; //方向
public float Speed; //速度
public float OverPos; //结束位置
public float StartPos; //开始位置
public RectTransform Information; //滚动信息
void Start () {
}
void FixedUpdate()
{
ScrollResult();
}
//滚动效果
Vector2 pos;
void ScrollResult()
{
//判断方向
if (moveType == MoveType.horMove)
{
Debug.Log("水平&正方向");
pos = new Vector2(Speed * Time.fixedDeltaTime, 0);
if (direction== Direction.JustDirection)
{
if (Information.anchoredPosition.x < OverPos)
{
Information.anchoredPosition = new Vector2(StartPos, Information.anchoredPosition.y);
}
else
{
Information.anchoredPosition += -pos;
}
}
else
{
Debug.Log("水平&反方向");
if (Information.anchoredPosition.x > StartPos)
{
Information.anchoredPosition = new Vector2(OverPos, Information.anchoredPosition.y);
}
else
{
Information.anchoredPosition += pos;
}
}
}
else
{
Debug.Log("垂直&正方向");
pos = new Vector2(0,Speed * Time.fixedDeltaTime);
if (direction == Direction.OppositeDirection)
{
if (Information.anchoredPosition.y < OverPos)
{
Information.anchoredPosition = new Vector2(Information.anchoredPosition.x, StartPos);
}
else
{
Information.anchoredPosition += -pos;
}
}
else
{
if (Information.anchoredPosition.y > StartPos)
{
Information.anchoredPosition = new Vector2(Information.anchoredPosition.x, OverPos);
}
else
{
Information.anchoredPosition += pos;
}
}
}
}
}
枚举类型中文显示在上一篇
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持得得之家。
编程基础网
本文标题为:unity实现文字滚动效果
基础教程推荐
猜你喜欢
- C# 从 List<List<int>> 中删除重 2022-01-01
- .NET SerialPort DataReceived 事件未触发 2022-01-01
- 如何使用 .Net 检查 Active Directory 服务器是否已启动并正在运行? 2022-01-01
- 禁止输入少量字符,例如'<'、'&a 2022-01-01
- 如果有人提交恶意软件Nuget包怎么办? 2022-01-01
- 我应该在后面的代码中直接使用 Linq To SQL 还是使 2022-01-01
- Moq It.Is<>不匹配 2022-01-01
- WPF 模态进度窗口 2022-01-01
- 当值可以是对象或空数组时反序列化 JSON 2022-01-01
- Azure Functions:CosmosDBTrigger 未在 Visual Studio 中触发 2022-01-01
