Unity Audio -- (5)声音的可用性考量

news2024/11/22 6:15:09

        在某些情况下,用户可能会关闭声音或者让音量降低至很小的水平,用户本身的听力情况(用户可能有听力障碍,失聪等情况)也有差异。一个好的设计者应该要考虑到项目的可用性,音频也不例外。本节我们来看看如何能对声音做文字可视化标记(Closed Caption,闭路字幕以及一个声音方向提示箭头)以提升项目的可用性。

声音可用性的最佳实践

        对于绝大多数的交互式体验应用而言,增加音频可用性选项并不是一个复杂的任务,但在项目进程的早期就要对这部分的需求进行考量。声音可用性考量的目标是在不依赖能听见声音的情况下,使用任意类型的字幕或标题来确保用户能够理解到应用的全部相关信息。为了达成这个目的,交互式体验应用至少要有:

  •         所有对话对应的字幕。
  •         重要声音时间的说明文字。
  •         字幕或说明文字在屏幕上要能轻松地被阅读到(清晰的字体,合适的大小)。
  •         字幕或说明文字要在屏幕上停留足够长的时间以便能轻松地被阅读。

        最具可用性的体验是允许用户能够自定义这些值以便他们能够选出适合自己个人需要的效果。这可以通过使用UI选项菜单来实现。

        更多的音频可用性指导原则,可以参考以下链接(声音部分):

        Game accessibility guidelines | Full listhttp://gameaccessibilityguidelines.com/full-list/10 Golden Rules on Subtitles for GamesIn this article, we take a look at the 2019 GDC talk by Ian Hamilton on the best practices for developers to accommodate the growing demand for well-executed subtitles.https://80.lv/articles/10-golden-rules-on-subtitles-for-games/

创建闭路字幕数据库(Closed Captions Database)

        本案例中我们使用简单的闭路字幕数据库脚本系统来做说明。这种方法只是Unity中实现闭路字幕的诸多方法中的一种。

        这个系统有两个主要组件:一个方向指示器(在角色旁边,箭头指向音源位置),以及一个基于角色和音源距离动态缩放的文字标签。

        1. 在工程窗口的Audio目录中,点击右键,选择Create > Closed Caption > CCDatabase。

        2. 将这个新建的CCDatabase命名为“Waterfall Scene Database”。

        3. 双击Waterfall Scene Database文件打开数据库编辑器。

        4. 拖动AmbientWaterfall音频片段到数据库编辑器的空白区域。

        5. 选中这个声音开启行编辑部分。

        6. 选择New Line。在Line域段中输入“[Water rushing]”。这样当角色靠近瀑布时,这段文字就会显示出来。

 

配置闭路字幕系统预制体(Closed Caption System prefab)

        1. 在项目窗口中,进入 Assets > CreativeCore_Audio > ClosedCaptionSystem > Prefabs > System。

        2. 从Project窗口中拖动CCSystem预制体到Hierarchy中,选中这个游戏物体。

        3.  在Inspector中,找到CC Manager(Script)组件。

        4. 找到Database属性,通过浏览选择(点击右边圆形图标)我们新建的Waterfall Scene Database,或者直接拖拽这个文件到这个属性。

        5. 用同样的方法将Tracked For Pos属性设置为Main Camera游戏物体。

添加闭路字幕到Audio Source

        数据库现在知道存在一条瀑布的闭路字幕,但它并不知道场景中和它相连接的audio source是谁。这意味着数据库并不知道什么时候该去显示这个提示信息。

        1. 选择Waterfall Audio游戏物体,在其Inspector中,选择Add Component。搜索并添加CCSource(Script)组件。

        2. 在Assets > CreativeCore_Audio > ClosedCaptionSystem > Prefabs > System目录中,定位到CCCanvas预制体,将它拖动到CC Source Canvas。

        3. 将Max Distance设置为15。

        4. 运行场景并走向瀑布。看看当靠得足够近时,屏幕上有没有出现瀑布声的提示信息。

        如果想要改变提示信息的位置,可以调整一下Root Offset值。 

添加一个瀑布声音方向指示器

        假设我们想要在一个很大的场景中引导玩家找到瀑布。对于听力正常的玩家来说,这并不是一个大问题。但如果玩家要关闭声音玩或者玩家有听力障碍,则这个任务就很难完成了。

        我们可以通过添加一个可视化的声音提示(audio cues)来解决这个问题。

        1. 选择Waterfall audio source,在CC Source上,勾选Always Tracked。

         2. 运行场景看看效果。

        我们会看到角色旁边出现了一个箭头指向了瀑布。需要注意的是,这个指示箭头应当只对重要的声音使用。这个指示箭头会在闭路字幕出现时消失。

探索:为其它Audio Source增加闭路字幕

        尝试为场景中其它Audio Source添加闭路字幕。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/519308.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

由于找不到msvcr100.dll,msvcr100.dll丢失怎样修复

在我们打开游戏或者软件的时候,电脑提示由于找不到msvcr100.dll文件,无法执行此代码是什么意思?msvcr100.dll为什么会丢失,又该如何修复呢?相信这些问题困扰着不少小伙伴,昨天是准备玩吃鸡游戏的时候&#…

被面试官故意刁难,太难了...

今年的金三银四,我和大多数的同行一样加入了升职涨薪的潮水,我早在2个月前就开始准备,我觉得自己在技术方面完全没有问题,于是这两个月我每天在公司摸鱼2小时,回家刷2小时,前前后后刷了几千到面试题&#x…

【LeetCode困难】1263. 推箱子

「推箱子」是一款风靡全球的益智小游戏,玩家需要将箱子推到仓库中的目标位置。 游戏地图用大小为 m x n 的网格 grid 表示,其中每个元素可以是墙、地板或者是箱子。 现在你将作为玩家参与游戏,按规则将箱子 ‘B’ 移动到目标位置 ‘T’ &am…

设计模式|代理模式

代理模式介绍 ​代理模式指为其他对象提供一种代理,以控制对这个对象的访问。在某些情况下,一个对象若不能直接引用另一个对象,而代理对象可以在客户端与目标对象之间起到中介的作用。 代理模式使用场景 普通代理 普通代理模式是指在代理模…

C++的string类使用介绍

string类 1.为什么要学习string类?1.1.C语言中的字符串1.2. 日常中 2. 标准库中的string类2.2 string类(对于单字节的字符)的常用接口说明①string常见的构造函数②string类对象的容量操作③string类对象的访问以及遍历操作④string类对象的修改操作⑤string类非成员…

OrCAD怎样把原理图输出为DXF格式

OrCAD怎样把原理图输出为DXF格式 又有段时间没分享文章了,想想主要还是自媒体写点内容确实不容易,要不断坚持下来更不容易,一直以来也就是凭着“乐于分享”的心在不定时更新。 今天分享的主题是:OrCAD怎样把原理图输出为DXF格式…

标准CSO

Cheng R, Jin Y. A competitive swarm optimizer for large scale optimization[J]. IEEE transactions on cybernetics, 2014, 45(2): 191-204. 1.1 背景介绍 CSO(competitive swarm optimizer)算法是在PSO(particle swarm optimization&a…

医日健“数智药房”解锁购药新模式

“现在买药这么方便,半夜拉肚子过来自助付款、自助取药,还能连线医生,很快就买好了药。”上海市宝山区消费者王先生惊喜地说。近日,宝山区一国大药房医日健 “智慧药房”正式上线营业,该药房实现自助式、无接触就医购药…

如何添加团队成员到你的项目

本文介绍在YonBuilder移动开发中,如何把你的团队成员添加到你的应用中,让团队成员也具备应用的相关配置,代码拉取,打包编译等功能权限。 简单来说把「团队成员添加到你的项目」,一共需要三步大流程操作,具…

基于AT89C51单片机的篮球比赛计时计分器

点击链接获取Keil源码与Project Backups仿真图: https://download.csdn.net/download/qq_64505944/87778138?spm1001.2014.3001.5503 源码获取 主要内容: 比赛的计分和计时的工具大多是很简陋的比分牌,十分的不方便。而且大多由于缺少24秒…

Meta-learning综述

文章目录 几个概念1)监督、无监督、弱监督学习(Weakly Supervised Learning)以及 自监督学习(Self-supervised Learning)2)域偏移、域适应、域泛化3)N-way K-shot(Few-shot learning…

【Java虚拟机】JVM诊断神器Arthas入门实操

1.Arthas简介快速入门 阿里开源的Java诊断工具,它可以在运行时对Java应用程序进行动态诊断和调试 当你遇到以下类似问题而束手无策时,Arthas可以帮助你解决 这个类从哪个 jar 包加载的?为什么会报各种类相关的 Exception?我改的代…

国考省考行测:数字推理题2

国考省考行测:数字推理题2 2022找工作是学历、能力和运气的超强结合体! 公务员特招重点就是专业技能,附带行测和申论,而常规国考省考最重要的还是申论和行测,所以大家认真准备吧,我讲一起屡屡申论和行测的重要知识点 …

改进YOLOv8 | 特征融合篇 | YOLOv8 应用 BiFPN 结构 | 《 EfficientDet: 可扩展和高效的目标检测》

模型效率在计算机视觉中变得越来越重要。在本文中,我们系统地研究了目标检测中的神经网络架构设计选择,并提出了几种关键的优化方法来提高效率。首先,我们提出了一种加权双向特征金字塔网络(BiFPN),它可以实现简单快速的多尺度特征融合;其次,我们提出了一种复合缩放方法…

从期望最大化(EM)到变分自编码器(VAE)

本文主要记录了自己对变分自编码器论文的理解。 Kingma D P, Welling M. Auto-encoding variational bayes[J]. arXiv preprint arXiv:1312.6114, 2013. https://arxiv.org/abs/1312.6114 1 带有潜在变量的极大似然估计 假设我们有一个有限整数随机数发生器 z ∼ p θ ( z ) …

Linux | 学习笔记(适合小白)上

操作系统概述: 计算机是由硬件和软件这两个主要部分组成的操作系统是软件的一类,主要作用是协助用户调度硬件工作,充当用户和计算机硬件之间的桥梁常见的操作系统:PC端:Windows,Linux,MacOS&…

电子邮件市场中,如何使用您的Gmail?

Gmail凭借其直观的界面、慷慨的免费存储空间(与其他Google工具共享15 GB,如Google Drive和Photos)以及作为常规Gmail账户附加的各种免费生产力工具,在电子邮件市场占据主导地位。但是,人们对Google如何使用您的电子邮件…

决策引擎平台建设方案

文档修订历史 时间版本主要内容2023.05.12v1.0.0初始化 1. 概述 1.1 需求 1.1.1 需求背景 当同一个业务场景中,有非常多的业务分支后,需要有非常多的 if 判断,来承载这些简单的业务逻辑,但随着业务的发展,业务逐渐…

Java --- redis7之大数据统计之Bitmap

目录 一、大数据统计之Bitmap 1.1、面试题 1.2、京东签到领取京豆 一、大数据统计之Bitmap 1.1、面试题 1、日活统计 2、签到打卡 3、最近一周的活跃用户等 1.2、京东签到领取京豆 一个月的签到天数,连续签到数 方案1:使用MySQL来实现(小项目) …

NTLM 中继攻击的几种非主流玩法

在企业组织中的常见的一种安全风险是凭证重用,当攻击者攻击 NT LAN Manager 身份验证协议(以下简称 NTLM 身份验证)时就会出现这样的风险,而这个协议通常会在 微软的 活动目录 中默认启用。 NTLM 认证中的不安全性已经被安全研究人员发现超过15年了。该…