游戏中的月亮错觉_维基百科

在维基百科中,有一段话提到了:

 

The size of a viewed object can be measured objectively either as an angular
size (the visual angle that it subtends at the eye, corresponding to the
proportion it occupies), or as physical size ( its real size measured in, say, metres). Perceived size is only loosely related to these concepts, however.
在我们的眼中,一个物体的「大小」可以用角大小(它对向眼睛的角度)或实际大小(真实的大小测量,像是公尺)来量度。但是我们认知的大小和两者的关联并不大。

这一句提到了很关键的一点,就是人类知觉(Perception)认知不等于现实 。它是客观物体作用于感官而在头脑中产生的对事物整体的认识。那么在游戏中,玩家会在什么情况下经历月亮错觉,并且游戏开发者提供了怎样的解决方案呢?首先我们来看这段视频:

 

游戏中的月亮错觉_3d_02

随着玩家前进,NPC 头顶的 UI 元素会感觉像是在缩小。尤其是如果当你注意文字的右侧边缘,你会明显发现整个 UI 元素的相对运动。


你会发现,NPC 的图标元素随着玩家的靠近,在快速缩小。但如果你用尺子测量图标在屏幕上的长度,你会发现图标至始至终大小都没有变过。在这里,我们就经历了游戏中类似于月亮错觉的情况。而我个人倾向用相对大小假说来解释上述两个例子。

 

游戏中的月亮错觉_spring_03

这种情况阐明了一个物体的大小不仅是它在视网膜上的大小,还与他周遭的物体大小有关。在游戏中,当玩家看到 In-game UI 元素(存在于游戏 3D 世界中)时,我们的大脑会倾向使用 UI 元素周围的物体进行比较。如下面两帧对比图:图一中,NPC 的 UI 元素右侧是超出了后方类似于矩形的平板,我们会认为该元素大于其平板。在图二中,因为 玩家的靠近,此时 UI 元素的右边缘已经在平板的范围以内。此时,当我们比较 UI 元素和平板的大小,结论将会和图一相反。

游戏中的月亮错觉_游戏开发者_04

图一 文字右侧边缘超出了平板范围

游戏中的月亮错觉_游戏开发者_05

图二 文字右侧边缘在平板范围以内

请注意,为何我会反复强调右侧边缘。这就涉及到消除该错觉的解决方案。其实如果大家留心的话,可能会思考为何 NPC UI 图标的布局和文字是左右而不是上下?

 

游戏中的月亮错觉_解决方案_06

我个人的猜测是:如果我们使用上下布局的话,当玩家前后移动的时候,左右两个边缘都会和背景中的物体产生相对位移。但如果是左右布局的话,当玩家前后移动,右侧边缘仍会和背景中的物体产生相对位移,但是左侧物体由于贴近中间的图标,即整个 UI 元素的中轴位置,所以相对位移的情况会减弱很多。如果是正中位置,将不会产生任何相对位移(前提是玩家正面NPC沿着直线靠近)。同时,左右的布局也符合人阅读信息从左到右的习惯。


我在制作《COD:WWII》的时候,分別用两种布局做了实验。最后测试结果显示左右布局能在某种程度上削弱月亮错觉。当然,最理想的办法,就是实时根据玩家和 In-Game UI 元素的位置,相应调整其大小,保证 UI 元素的大小符合人的认知尺寸。这可以完美消除月亮错觉,但是会增加更多的损耗。


以上就是我个人的分析和猜想,欢迎各位指正和补充。