rd.rdlevel.cn/pages/hallofmirror.md
2026-06-06 11:52:01 +08:00

8.7 KiB
Raw Blame History

镜厅

镜厅的本质

正常情况下,游戏每一帧绘制前都会清空屏幕(填充黑色),然后重新绘制所有物件。这保证了上一帧的画面不会残留。
但是如果不重置呢?
镜厅Hall of Mirror 就是关闭这个清空操作。上一帧的画面保留在屏幕上,新画面直接叠加在上面。

你可以尝试:

  • 添加一个会移动的轨道或精灵(如一个向右匀速移动的豆子盒)
  • 在预设特效中添加"镜厅"
  • 播放关卡 你会发现,方块不再是一个清晰的个体,而是一条向右延伸的 "尾巴"。 这是每一帧的方块叠加在一起形成的拖影。

镜厅在 "主题设置" 和 "预设特效" 中都有,但请使用预设特效版本。主题设置是全局开关且难以与其他特效组合,预设特效可以灵活控制。

如果不加控制,每一帧都叠加新画面,屏幕很快会被完全填满。我们需要一种机制让旧的画面逐渐淡出。

抑制方法

亮度衰减

假设一个亮度为 100 的像素每帧向右移动 1 像素,且每帧绘制前整个画面亮度衰减为原来的 50%

亮度
1 100
2 50 100
3 25 50 100
4 12.5 25 50 100

衰减率决定拖尾长度。
节奏医生没有直接的 "衰减率" 参数,但可以通过以下方式模拟:

半透明黑色背景覆盖

添加一个黑色背景板
设置透明度为 20%(即每帧覆盖 20% 不透明黑色,相当于 80% 亮度保留)
在元素移动时,原来留下的影子会逐渐被黑色覆盖,形成拖影的效果。

在医院走廊奔跑的科尔

晕影特效

添加预设特效"晕影"或"闪烁晕影"
晕影会从边缘向中心逐渐覆盖,产生柔和的拖影抑制
蓝色高光 + 晕影

位移扭曲

除了亮度衰减,还可以让历史画面发生位移,产生流动感。


基础位移效果

在镜厅基础上添加屏幕滚动x = 1, y = 1
配合 20% 透明度黑色背景
元素朝左上方向流动的同时会一直复制画面本身叠印起来。
x=1,y=1 的屏幕滚动 + 20 透明度的黑色背景
0% 强度海底波浪 + 20 透明度的黑色背景

屏幕分隔扭曲

添加屏幕分隔特效x = 2, y = 2
画面被划分为 2×2 的块,同时会叠上原来的画面。
2x2 屏幕分隔 + 晕影

区域控制

镜厅是全屏效果,但有时你只想部分区域有拖影,或者需要保护某些区域不被拖影污染。


反色遮罩

镜厅 + 反色HOMVERT会产生高频闪烁极其伤眼禁止直接使用
通常使用镜厅 + 反色 + 20% 透明度黑色背景的组合。
黑色背景作为遮罩层,可以降低反色区域的对比度,消除闪烁

护士语音自带的灯光是反色区域,使用镜厅时需注意,或用音效代替语音避免灯光。

镜厅 + 反色 + 20 透明度背景的效果

背景遮罩

直接使用背景 + 镜厅无效果(背景完全覆盖,没有透明区域供镜厅显示)。
设置背景为半透明(如 50% 透明度),镜厅效果只在背景的透明部分显示

如果图片本身有透明通道(如 PNG镜厅会自动只在透明区域产生拖影。

镜厅的效果附在了每个方块后面

房间控制

预设特效中的镜厅有两个作用域:

  • 四个房间:仅影响关卡内的游戏区域
  • 顶部:影响整个屏幕,包括 UI 和边框

顶部镜厅

边框绘制

使用顶部镜厅 + 特定物件移动
拖影会在屏幕边缘形成 "画框" 效果
用顶部镜厅来画边框

万花筒

顶部镜厅 + 旋转 / 缩放房间
整个画面产生对称的镜像拖影

房间透明化

直接使用主题 + 镜厅无效果(主题背景不透明)。
设置主题后,在 0.0001 拍时添加其他特效(避免与主题自动设置冲突)
设置透明背景 + 顶部镜厅 或者将主题放在单独房间,将该房间设为半透明,轨道物件叠加在上方

组合

镜厅不是单独使用的特效,而是基础层。真正丰富的效果来自组合。

控制维度

维度 特效示例 作用
衰减 黑色背景透明度、晕影 控制拖尾长度
位移 滚屏、海底波浪 让拖影流动 / 扭曲
颜色 高光、反色、VHS 改变拖影色彩
遮罩 背景透明度、屏幕分隔 限制镜厅作用区域

经典组合参考

  • 拖尾基础:镜厅 + 20% 黑色背景 + 晕影
  • 流动拖尾:镜厅 + 海底波浪 (0% 强度) + 20% 黑色背景
  • 方块拖影:镜厅 + 屏幕分隔 (2×2) + 晕影
  • 蓝色光晕:镜厅 + 蓝色高光 + 晕影
  • 复古故障:镜厅 + VHS + 电影噪点
  • 雨夜效果:镜厅 + 落雨 (负数强度) + 高光 (负数强度)

透明化特例

某些特效会让背景在镜厅下保持透明: 镜厅 + 负数强度的落雨
镜厅 + 负数强度的高光
镜厅 + VHS
镜厅 + 电影噪点

某些特效会强制背景不透明:
镜厅 + 暴风雪(同时有 VHS 效果但并没有透明)
镜厅 + 素描(同时有 VHS 效果但并没有透明)

一些陈旧的示例

镜厅 + 悬浮物

添加诸如矩阵,落雪,落花等不断漂浮移动的特效,它们都会拖出长长的一条轨迹出来,直到屏幕被占满。

落雪 + 矩阵 + 落花

镜厅 + 落雨

落雨效果的雨滴是高密度向左下滴落的,如果加上镜厅,雨点会很快将屏幕涂满白色,此时再有其他的物件在屏幕上,也会拖挂一个朝向左下角的尾巴。但是其他物件不会再屏幕上拖尾太长,因为它们马上又会被带镜厅的雨滴给覆盖掉。

落雨 + 矩阵 + 落花

镜厅 + 彩色冲击波

冲击波会在镜厅的影响下变成彩色条带,而且还会随着按拍的次数叠加。

彩 色 冲 击 波

镜厅 + JPEG失真

画面割裂开并持续向左滚动。

你 屏 坏 了

镜厅 + 海底波浪

这种屏幕扭动类的会逐渐变得更加扭曲。

扭 曲 树 精 影 流 之 主

镜厅 + 滚屏

直接崩坏。

巨 硬 报 错

镜厅 + 屏幕分隔

这个需要配合晕影使用,不然也会直接崩坏。

千 人 一 面

要注意屏幕分隔是可以填写小数的,例如填写x = 1.05, y = 1,自定义闪烁透明度15%~0%

镜厅 + 高光

火光冲天。

核 反 应 堆

但是如果叠加上屏幕滚动和晕影就会出现奇效。

超 电 磁 炮

镜厅 + 晕影

晕影效果可以大幅度地减弱镜厅的拖尾,让画面拖动变得柔和很多。

镜厅 + 闪烁

添加屏幕闪烁可以把屏幕上所有的滞留画面都暂时清除干净,但如果不关掉镜厅本身,接下来很快屏幕还是会被镜厅填满。但要注意,在自定义闪烁中设置的结束时的颜色,会余留在屏幕背景上。

分别添加绿,蓝,红,紫的闪烁

镜厅 + 设置背景

虽然背景的优先级很靠后,但是实际上背景图片会盖住镜厅效果,只有背景图中透明的部分才能看到镜厅所造成的拖尾。

另外,给背景设置一定的透明度也可以有效降低镜厅产生的目害。

镜厅 + 移动房间

虽然背景本身不会受镜厅的影响,但是如果把整个房间缩放和移动,那么房间整体就会在最后方的黑屏上开始堆叠起来。

镜厅 + 颜色反转

罗老师,别这样。

这么做的后果是屏幕会高频率反色闪烁,非常伤眼。