采用Unity进行音频动画的播放时最常用的技术,在此进行一下简单讲解与应用。

(一)动画播放(本文采用animation进行验证,关于animation和animator区别可问度娘,在此不做赘述)

1、播放默认动画

直接将动画拖入动画对象animation组件的animation变量中,然后加入如下代码既可以播放(此处采用toggle控制动画的播放)

    public Animation ani;

    public void OnPlayClicked(bool isOn)
{
if(isOn)
{
ani.Play();
}
}

2、采用AddClip方法

此方法为给animation组件通过addclip方法添加动画片段,然后就可以依次播放

    //addclip方法
public Animation ani;
public AnimationClip[] aniClip; public void OnPlayClicked(bool isOn)
{
if(isOn)
{
StartCoroutine(Play()) ;
}
}
IEnumerator Play()
{
ani.AddClip(aniClip[], "");
ani.Play("");
yield return new WaitForSeconds(aniClip[].length+2f);
ani[""].time = aniClip[].length;//动画反向播放
ani[""].speed=-;
ani.Play("");
yield return new WaitForSeconds(aniClip[].length + 2f);
ani.AddClip(aniClip[], "");
ani.Play("");
}

3、采用animation组件的animations数组添加动画片段

在animation组件的animations数组中直接添加动画(此步骤相当于addclip方法),然后根据动画名称就可以播放了。

ani.Play(aniName);

关于动画播放问题再次追加一点关于动画回到起始位置的问题,动画播放回到起始位置可用ani.Rewind();方法。采用rewind方法时必须是动画播放过程中使用,stop()后时无法回到起始位置的。调用rewind后动画虽然会回到原点,但是会继续重复播放,所以在此可以先取样,然后在停止播放。

ani.Play();
ani.Rewind();
ani.Sample();
ani.Stop();

4、直接用动画名字播放

        if (isOn)
{
titleAni["TitleMove"].speed = ;
bottomAni["BottomMove"].speed = ;
titleAni.Play();
bottomAni.Play();
}
else
{
titleAni["TitleMove"].speed = -;
bottomAni["BottomMove"].speed = -;
titleAni["TitleMove"].time = titleAni.clip.length;
bottomAni["BottomMove"].time = bottomAni.clip.length;
titleAni.Play();
bottomAni.Play();
}

(二)音频播放

音频播放与动画播放类似

1、播放默认音频。默认播放音频只需要在audiosource组件中audioclip参数拖入相关音频,然后通过audiosource.Play()即可播放。

2、通过赋值方法,即通过代码给audiosource的audioclip赋值,然后播放即可。

    public AudioSource audioSource;
public AudioClip audioClip; // Use this for initialization
void Start () {
audioSource.clip = audioClip;
audioSource.Play(); }

3、采用静态方法播放

public static void PlayClipAtPoint(AudioClip clip, Vector3 position);

unity 动画 音频播放的更多相关文章

  1. Unity实现代码控制音频播放

    前言 很久没说过Unity了,现在说一下Unity用代码控制音频播放 准备工作 1.需要播放的音频 2.给需要加声音的对象加Audio Source组件 3.新建Play脚本,并绑定需要播放声音的对象 ...

  2. iOS开发系列--音频播放、录音、视频播放、拍照、视频录制

    --iOS多媒体 概览 随着移动互联网的发展,如今的手机早已不是打电话.发短信那么简单了,播放音乐.视频.录音.拍照等都是很常用的功能.在iOS中对于多媒体的支持是非常强大的,无论是音视频播放.录制, ...

  3. iOS开发----音频播放、录音、视频播放、拍照、视频录制

    随着移动互联网的发展,如今的手机早已不是打电话.发短信那么简单了,播放音乐.视频.录音.拍照等都是很常用的功能.在iOS中对于多媒体的支持是非常强大的,无论是音视频播放.录制,还是对麦克风.摄像头的操 ...

  4. iOS开发系列--音频播放(音效和音乐)播放本地的

    音频 在iOS中音频播放从形式上可以分为音效播放和音乐播放.前者主要指的是一些短音频播放,通常作为 点缀音频,对于这类音频不需要进行进度.循环等控制.后者指的是一些较长的音频,通常是主音频,对于这些音 ...

  5. 音频播放、录音、视频播放、拍照、视频录制-b

    随着移动互联网的发展,如今的手机早已不是打电话.发短信那么简单了,播放音乐.视频.录音.拍照等都是很常用的功能.在iOS中对于多媒体的支持是非常强大的,无论是音视频播放.录制,还是对麦克风.摄像头的操 ...

  6. 音频播放(iOS开发)

    音频处理 一.录音 录音应用场景 语音聊天 即时通讯软件中,都包含语音发送功能 语音备忘录 录一段音频,来记录某件事情 录音功能实现 导入AVFoundation框架 作用:一些多媒体的处理,基本上都 ...

  7. Unity3D音频播放器 动态装载组件

    大多数在线Unity有关如何只教程Unity在播放音乐.之后如何通过拖动它们无法继续添加音频文件 但有时在游戏中的对象要玩几个声音.这时候我们就需要使用代码控制,拖动推教程AudioClip颂值的方法 ...

  8. iOS音频播放、录音、视频播放、拍照、视频录制

    随着移动互联网的发展,如今的手机早已不是打电话.发短信那么简单了,播放音乐.视频.录音.拍照等都是很常用的功能.在iOS中对于多媒体的支持是非常强大的,无论是音视频播放.录制,还是对麦克风.摄像头的操 ...

  9. [Unity动画]01.HasExitTime & ApplyRootMotion

    参考链接: https://www.cnblogs.com/hammerc/p/4828774.html 资源下载: https://assetstore.unity.com/packages/ess ...

随机推荐

  1. Linux-----centos6.2---安装Linux的流程

      1.安装命令 # yum install mysql-server mysql 2.查看是否安装正确 # chkconfig --list mysqld 3.启动 (1).启动服务: # serv ...

  2. opencv目标检测之canny算法

    canny canny的目标有3个 低错误率 检测出的边缘都是真正的边缘 定位良好 边缘上的像素点与真正的边缘上的像素点距离应该最小 最小响应 边缘只能标识一次,噪声不应该标注为边缘 canny分几步 ...

  3. Ceph 的 'MAX AVAIL' 和 数据平衡 - Storage 6

    1. 客户环境 节点数量:4个存储节点 OSD数量:每个节点10块8GB磁盘,总共 40 块OSD Ceph 版本: Storage 6 使用类型:  CephFS 文件 CephFS数据池:  EC ...

  4. php常用操作(第二版)

    1.多个字段多重排序 function sortArrByManyField(){ $args = func_get_args(); // 获取函数的参数的数组 if(empty($args)){ r ...

  5. 同时支持EF+Dapper的混合仓储,助你快速搭建数据访问层

    背景 17年开始,公司开始向DotNet Core转型,面对ORM工具的选型,当时围绕Dapper和EF发生了激烈的讨论.项目团队更加关注快速交付,他们主张使用EF这种能快速开发的ORM工具:而在线业 ...

  6. 二次编码 深浅拷贝 is和==

    1.二次编码 ascii 不支持中文 gbk 支持中文 2个字节 包含ascii Unicode 万国码 python3 内存Unicode utf-8 可变的长度 英文 1字节 欧洲2个字节 亚洲3 ...

  7. 向net core 3.0进击——April.WebApi从2.2爬到3.0

    目录 前言 升级之路 测试 小结 前言 在之前对Swagger的变化做了调整后,就开始想着要不把之前的工程升级得了,这样就还是个demo工程,来做各种测试(当然还是因为懒),这就有了今天这个比较折腾的 ...

  8. springboot与docker整合

    一.springboot与docker整合 a.创建Dockerfile FROM java MAINTAINER "Wing"<1561815137@qq.com> ...

  9. 前端css杂记

    1em等于16px,页面默认是16px,一个字宽高都等于16px; 当行内元素display:inline的元素设置float:left浮动后,display值也被设置成block;总结:无论行内元素 ...

  10. Oracle11g入门

    数据类型 数据类型 表示 数字 number 日期时间 date 字符串 char(长度)/varchar2(长度) 约束条件 名称 约束 唯一 unique 非空约束 not null 主键约束 p ...