c# - 如何播放特定 child 的音频?

标签 c# audio unity3d

假设我有一个GameObject,上面有2个或更多 child ,每个 child 都附有AudioSource,如下所示:

PowerUp
    Audio 1
    Audio 2
    Audio 3

如何确定要播放的音频?我知道您可以访问诸如gameObject.GetComponentInChildren<AudioSource>().Play();之类的子值,但是那不可以一次播放所有3个音频剪辑吗?

是否可以执行类似(我知道这不存在)gameObject.GetChildren."Name".Play()的操作?

最佳答案

要从特定 child 那里获得音频,可以使用Find首先找到 child ,然后按以下方式访问音频:

GameObject child = this.transform.Find("CHILD_NAME").gameObject;
child.GetComponent<AudioSource>().Play();

假设“this”是父对象

关于c# - 如何播放特定 child 的音频?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33767162/

相关文章:

flash - Flash/ActionScript 3声音延迟

c# - 发布后人们是否可以访问源代码?

c# - 检查是否在 Unity3D 2019.3.05f 中的检查器中分配了 GameObject

c# - 正确制作 GameObject “attach”?

c# - 在 C# 中,如何获得嵌套匿名数组和对象的递归值相等性?

C# SQL Server 存储过程参数返回列表

c# - 如何使用Unity解决嵌套依赖关系?

c - 从基础知识在 C/Matlab 中生成正弦波的麻烦

c# - 如何从其他 View 模型调用主视图模型中的函数?

c# - 如何重新采样 wav 文件