声音

From Minecraft基岩版开发Wiki

声音(Sound)包含了游戏中所能听到的由各种音频文件所播放出的内容,例如游戏背景音乐、生物音效、方块音效、环境音效等。

音量大小可在游戏设置的“音频”一栏设置。声音分为:

  • 音乐
  • 声音
  • 环境
  • 方块
  • 敌对生物
  • 友好生物
  • 唱片机/音符盒
  • 天气
  • 文字转语音输出

9种类型。所有声音音量的通用大小可通过“主要”滑块调节。

声音布局[edit]

我的世界 中的声音以多种方式组织,可以包含多个组件。接下来我们来看一个示例json(这个文件在“定义文件”的 bgm.idk 的同位置)。

"ambient.weather.rain": {
    "category": "weather",
    "min_distance": 100.0,
    "sounds": [
      {
        "name": "sounds/ambient/weather/rain1",
        "volume": 0.02,
        "load_on_low_memory": true
      },
      {
        "name": "sounds/ambient/weather/rain2",
        "volume": 0.02
      },
      {
        "name": "sounds/ambient/weather/rain3",
        "volume": 0.02
      },
      {
        "name": "sounds/ambient/weather/rain4",
        "volume": 0.02
      }
    ]
  }

我们所需要的大部分基础内容都在这其中。让我们来看一下

  • Sound Events(即“声音事件”):样本的整体构成声音事件,该事件是涉及一个或多个声音的游戏内事件。多个声音事件可以包含相同的声音;例如,“mob.drowned.sim”和“random.swim”声音事件都包含“sounds/random/swim1”声音。
  • Sounds:这些是构成玩家在游戏中听到的所有内容的单个声音文件。游戏目前支持的声音格式有.wav、.ogg以及.fsb,详细的内容可以在音乐中查看,在游戏中最多可同时播放 32 种声音。在所给出的声音事件示例json中,我们能看到很多在此事件中会播放的声音。
  • Category:声音所对应的类别
  • Distance:距离,又称作衰减。可以使用“min_distance”和“max_distance”参数进行控制。衰减的默认值最小为 1.0 米,最大为 10,000 米。在示例中,您可以看到我们定义的最小距离为 100.0,这意味着一旦玩家距离声源 100 方块,声音就会开始淡入。
  • Volume:这里不是用来确定声音的强度,而是用音量来定义声音在游戏尝试播放声音之前可以有多远。默认情况下,侦听器必须距离声源 <= 16 个方块,然后才会尝试播放它。

定义文件[edit]

  • 文件名:sound_definitions.json
  • 文件路径:<a_res_pack>/sounds/
  • 文件格式
{
    "format_vision": "1.14.0",
    //格式版本,可省略 
    "minecraft.bgm.1": {
    //音效ID
        "category": "music",
        //分类
        "sounds": [
            {
                "name": "sounds/bgm/1",
                 //音源路径
                "stream":true
                //是否以流线播放,用于缓解时间较长的音效产生的卡顿,也决定在未播放完音效下播放同一音效是否会叠加,流线情况下不会叠加则为重新播放。
            }
        ]
    },
    "bgm.idk":{
        "category":"bgm",        
        "min_distance":100.0,
        "max_distance":100.0,
        //最小、最大距离
        "sounds":[
            {
                "name":"sounds/bgm/idk",                
                "is3D":false,
                //是否为3D音乐              
                "weight":100,
                //权重:当列表中有多个声音的时候,权重代表着播放此声音的相对概率(整数值)
                "stream":true,            
                "volume":1.0,
                //音量             
                "pitch":1.0,
                //音调            
                "load_on_low_memory":true
                //强制加载到内存(即便是在低内存的情况下),从1.16.0开始,该选项被废除
            }
        ]
    }
}

以上是声音调用文件格式。

播放方式[edit]

  • 通过指令/playsound

/playsound minecraft.bgm.1

/playsound bgm.idk

声音列表[edit]

参考[edit]

官方文档