当前位置: 首页 > article >正文

unity 播放 序列帧图片 动画

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

文章目录

  • 前言
  • 一、方法一:代码控制播放序列帧
    • 1、设置图片属性
    • 2、创建Image组件
    • 3、简单的代码控制
    • 4、挂载代码并赋值
  • 二、方法二:直接使用
    • 1.Image上添加 Animator组件,并New Animation
  • 总结


前言

适用于一下简单的动态效果,不建议大量使用序列帧。

一、方法一:代码控制播放序列帧

1、设置图片属性

把序列帧导入编辑器Assets中,并修改图片属性,如下图所示,其中,Texture Type修改为Sprite(2D and UI),Sprite Mode修改为Single模式,然后点击Apply应用。
在这里插入图片描述

2、创建Image组件

创建一个Image组件,并把序列帧第一帧赋予Image的Source Image,作为默认或者起始状态样子。
在这里插入图片描述

3、简单的代码控制

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
using UnityEngine.EventSystems;
namespace Twq
{
 public class TestPlay : MonoBehaviour
 {
        public Sprite[] sprites; // 存储序列帧动画的所有帧
        public float framesPerSecond = 10.0f; // 每秒播放的帧数

        public Image image;

        // Start is called before the first frame update
        void Start()
        {
            StartCoroutine(PlaySprites());
        }
      
        IEnumerator PlaySprites()
        {
            while (true)
            {
                for (int i = 0; i < sprites.Length; i++)
                {
                    image.sprite = sprites[i];
                    yield return new WaitForSeconds(1f / framesPerSecond);
                }
            }
        }
    }
}
 


4、挂载代码并赋值

把控制脚本放置场景中,并把序列帧所有图片拉到sprites数组里面,把Image拉到image变量中
在这里插入图片描述

二、方法二:直接使用

1.Image上添加 Animator组件,并New Animation

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
时间的长度根据组件的需要 调整即可

总结

好记性不如烂笔头!


http://www.kler.cn/a/469332.html

相关文章:

  • 【0379】Postgres内核 walreceiver (libpqwalreceiver API)分析
  • STM32完全学习——0V5640的JPEG模式采集
  • 如何利用 Jenkins 实现高效的邮件告警
  • 【计算机网络】课程 实验三 跨交换机实现 VLAN 间路由
  • 海思Linux(一)-Hi3516CV610的开发-ubuntu22_04环境创建
  • ref()使用举例【Vue3】
  • 安徽省地图arcgis数据美化后mxd文件shp格式下载后内容测评
  • mysql 报错 ERROR 1396 (HY000) Operation ALTER USER failed for root@localhost 解决方案
  • 在Linux中,如何查看和修改网络接口配置?
  • 软件测试——面试八股文(入门篇)
  • Python实现Scheme
  • 短视频矩阵源码开发/saas矩阵部署/api矩阵源码接口搭建
  • 使用深度学习来实现图像超分辨率 综述!
  • SqlSugar-文章目录
  • 服务器开发 的泛型(Generics)基础知识
  • 推荐系统重排:MMR 多样性算法
  • 用Python构建一个简单的网络爬虫
  • Go语言的 的注解(Annotations)核心知识
  • 基于Springboot语言的在线考试与学习交流网页系统【附源码】
  • flink cdc oceanbase(binlog模式)