找回密码
 立即注册
查看: 710|回复: 0

【Project Acoustics系列文章:第3回】使用Project Acoustics从头开始成立一个项目

[复制链接]
发表于 2024-7-15 18:47 | 显示全部楼层 |阅读模式
原文地址:【Project Acoustics 連載記事:第3回】Project Acousticsを使ったプロジェクトを一から作ってみた - CRIWARE Portal
第1回:CRIWARE中国:【Project Acoustics系列文章:第1回】了解Project Acoustics——为空间声学而开发的王牌引擎!
第2回:CRIWARE中国:【Project Acoustics系列文章:第2回】测验考试运行Acoustics Sample
<hr/>这里是新人长谷川。
感激大师来到我们在Unreal Fest. West 2022上的展位!
在活动中我们进行了关于这篇文章的演示,得到了广泛好评,大师的积极性也提高了。
之前我已经写了两篇关于Project Acoustics(以下简称Acoustics)的文章。
第一篇文章是对Acoustics的介绍,而第二篇文章详细介绍了如何运行微软发布的Acoustics示例项目。
请大师也都看一看。
此刻,让我们把Acoustics实装到一个实际的项目中去吧!接下来我将解释从烘烤(预计算)法式到应用效果的流程。
工作流程

此次的工作量相当多,所以首先做一个快速而简单的总结。
此次用一个模板项目来说明。

  • 启用Acoustics插件
  • 筹备Acoustics的烘烤过程
  • 设置Acoustics
  • 应用于Sound Wave
启用Acoustics插件

首先,查抄Acoustics插件是否已经启用。
要激该死插件,需要进行以下两个设置:

  • 在“所有插件”菜单中,确保Installed -> Audio -> Project Acoustics for Unreal Audio已勾选。(注意:
    如果“Project Acoustics for Unreal Audio”不在“Installed”列表中,请从“Marketplace”中安装 “Project Acoustics”)


2. 在“项目设置”中的“平台”->“Windows”->“音频”->“源数据覆盖”选择“Project Acoustics”。


烘烤空间信息的筹备

在使用Acoustics时,必需将一些Actor放在程度面上。
烘烤过程中需要“AcousticsProbeVolume”

Acoustics需要“AcousticsProbeVolume”Actor被放置在关卡上。
这个角色指定了应用Acoustics声学的空间。
在空间信息烘烤过程中,计算是在“AcousticsProbeVolume”角色所包抄的空间内进行的。
因此,范围之外的任何东西都被假定为对声学没有影响,类似于空气。


补充
可以放置多个AcousticsProbeVolume,在“细节”中的“Volume Type”中可以选择包罗(Include)或排除(Exclude)烘焙过程中的范围。 默认是“Include”。


应用空间信息的烘烤成果的“Acoustics Space”

烘烤成果中并没有关于关卡上某个位置的信息。
由于不知道烘烤成果将应用于关卡上的哪个空间,所以需要在“Acoustics Space”中指定。
此次我们将原点设置为“AcousticsProbeVolume”的绝对位置,因为它与烘烤时的位置不异。


补充
如果“AcousticsProbeVolume”没有对齐,应用的声音效果也会不合错误齐。
查抄[Debug Controls] -> [Draw Voxels]上的[AcousticsSpace]Actor,看看它是否错位。


勾选该选项可以查抄以下内容:

  • 应用烘烤成果的坐标是否匹配



  • 烘烤成果的目的地坐标是否发生了偏移
如果AcousticsSpace的位置与原点偏移,那么位置将如箭头所示发生偏移。
在错位状态下,应用的参数会发生偏移,导致声音不在本来应该共鸣的位置发生共鸣的现象。


Acoustics的设置

烘烤过程包罗四个法式。
在这篇文章中,我将引用Acoustics官方网站的内容,并以一些个人的经验作为补充。

1.  标识表记标帜对象(Objects标签)
https://learn.microsoft.com/ja-jp/gaming/acoustics/unreal-baking-objects
为了执行烘烤过程,必需定义一个空间。
因此,在Acoustics中,有两种类型的标签用于定义对象。
“Geometry”标签
暗示该对象能影响声音。
除非附加了这个标签,否则在烘烤过程中不会被考虑到。
例如,如果不想让物体(如全息图等)影响声音,可以选择不标识表记标帜它。
“Navigation”标签
指定玩家可以移动的地面。
烘烤过程会计算一个叫做探针的位置的声学属性。
这些探针是自动配置的,但需要确定配置在哪个网格体上。
所以,像是给玩家可以移动的区域打上标签是没有问题的。
也可以在一个物体上放两个标签。
比如说,有时可以给地面打上两个标签。
2.  指定材质(Materials标签)
https://learn.microsoft.com/ja-jp/gaming/acoustics/unreal-baking-materials
有几种材料可供选择,但独一的参数是吸收系数。
该值越大,声音的共鸣就越小,而值越小,声音就越容易共鸣。
3.  计算烘烤过程所需的信息(Probes标签)
https://learn.microsoft.com/ja-jp/gaming/acoustics/unreal-baking-probes
这个标签指定了Object标签中描述的探针的摆列方式。
探针的间距越大,意味着精度就越粗,但预计算的速度就越快。
尽管它是自动的,但要注意,如果放置太多的探针,计算将很难完成。
4.  烘烤措置(Bake标签)
https://learn.microsoft.com/ja-jp/gaming/acoustics/unreal-baking-bake
在最后的烘烤过程中,有两种方式进行计算:使用“Microsoft Azure”进行快速计算或在当地PC长进行计算。
当地端不花钱,所以可以随意测验考试,但是请注意,这很耗费时间。
应用于Sound Wave

最后,让我们为声音添加效果。
如果你已经看到这里,就已经差不多快完成了。

作为一个例子,我们此刻将解释导入声音文件“Voice”的情况。
打开“Voice”的详细资料,进入“衰减设置”,在“创建新资产”下选择“音效衰减”来创建一个资产。


打开“音效衰减”细节,勾选“启用源数据覆盖”,为“源覆盖插件设置”添加一个元素。


通过选择“创建新资产”下的“Project Acoustics Source Data Override Source Settings”,为所添加的元素创建一个资产。


从这个资产的细节来看,可以对Acoustics发生的声学参数(闭塞和衰减)进行调整。
总结

不知不觉中写了这么多,各位读者感觉如何呢?
但愿这篇文章能帮到那些感觉Project Acoustics示例项目太难的人。
下一篇将呈现与CRI ADX的内容。
没能参加Unreal Fest. West 2022的各位,您仍然可以在本文中体验在那里展示的演示项目。
那么我们下次再见!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
懒得打字嘛,点击右侧快捷回复 【右侧内容,后台自定义】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Unity开发者联盟 ( 粤ICP备20003399号 )

GMT+8, 2024-12-21 22:55 , Processed in 0.102284 second(s), 28 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表