玩家求助:“我玩mc的时候,无论如何总是会莫名其妙的触发那个环境音效,而且每一次都是最吓人的那个,每次都把我吓得虎躯一震……所以有什么办法关掉这个音效?”
几乎每个人都有过这样的经历:每当自己越处于黑暗之中,《我的世界》总能恰到好处地给你一个诡异的音效,让你后颈发凉、头皮发毛、手脚发汗、在那一瞬间感受到无与伦比的恐惧。
问题是:你有没有想过,Minecraft是怎样做到这件事的?
01
种“诡异”的环境音效;
其实在《我的世界》有一种特别的音效,叫做环境音效。这是一种在某种特定的情景下才可以听到的声音。例如环境的变化、天气的变化、空气的变化、阳光明亮的变化等等。目前已知的Minecraft一共存有种不同的环境音效,作用在不同的环境当中。
按照其环境音效的作用划分,分为三大类:洞穴、水下、下界。其中洞穴音效19种,水下音效22种,下界音效则高达种。所以你明白了么?为什么地狱是如此的阴森恐怖?其实除了恶*等怪异的音效和生物之外,环境音效的渲染,是造成你恐惧最重要的一个因素。
02
Minecraft的氛围检测机制;
氛围是什么,在特定环境中给人强烈感觉的景象,带来一种生理的暗示。比如黑色会让你感到恐惧和压抑,白昼会让人感到放松和安全。这是人类最为主观的一种感受。理论上来说,一款游戏可以恰到好处的检测出这氛围,这就让人难以理解了。
而在《我的世界》中就有这么一种很高级的“模拟氛围”的机制,(说高级,其实也非常简单)Minecraft把“氛围”改写成了1-这个区间值,并且将这个值与亮度和方块透明度进行强关联。当亮度越低、周围的非透明方块越多,那么氛围值就会急剧上升,并且最终达到。这个时候系统会随机播放一种音效,以洞穴音效为例,系统会随机地从19种洞穴音效抽取一种进行播放。
在wiki中便记载着这样一串代码,用以模拟氛围机制。该代码会在以玩家为中心在17*17*17范围的随机选取方块,检测该方块的亮度值、是否为透明方块等等。每个游戏刻运行一次代码,用以检测并确定最终的氛围值,以确定是否播放“诡异的环境音效”。
03
怪异的噪声;
“怪异的噪声”是什么?有人说,这是地下生成了史莱姆形成了怪异的噪声;有人说这是地底某种未知诡异的生物发出的音效;有人说,这其实Herobrine。
或许你已经看出,我们上面提到的氛围算法,其实是针对洞穴的。如果此时你打开了JAVA版字幕的,屏幕的右下方会提示“怪异的噪声”。曾经很多人认为这是地下传来的某种奇怪生物的音效,但其实它真正的作用其实同样是在渲染气氛。以至于这么多年,若非有人告诉你,你永远也不知道这种怪异的噪声来自何方。
但其实“怪异的噪声”只是在告诉你:你已经激活了洞穴环境音效。恐怖、诡异、惊悚的背景音效渲染+怪异的字幕提醒。开始逐渐让你在《我的世界》生存变得不安了起来。
所以为什么《我的世界》总能恰到好处的,让人感到恐惧?因为Mojang做出了一个极为聪明的模拟“氛围”伪代码。mc就这样变成了一款恐怖游戏!