Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
c2c50ab28b | ||
|
|
fa5b88e984 | ||
|
|
f34be4d8db | ||
|
|
5097181f42 | ||
|
|
407267951d | ||
|
|
542964daa5 | ||
|
|
1bca058bf5 | ||
|
|
3828811b3f | ||
|
|
a606de738a | ||
|
|
3c8733312c | ||
|
|
2b9a5a008c | ||
|
|
39c0db4373 | ||
|
|
05ae18d2ff | ||
|
|
a51b4fea03 | ||
|
|
98b5707c60 | ||
|
|
d6bbec8601 | ||
|
|
d62a6164a0 | ||
|
|
38fa5cffcc | ||
|
|
dfb2c9cf4e | ||
|
|
08b0b338b4 | ||
|
|
74a156ab43 | ||
|
|
e61c719989 | ||
|
|
a8162f59df | ||
|
|
74e4ec7ef3 | ||
|
|
58ee445c39 | ||
|
|
22ea4b8319 | ||
|
|
bfd781a545 | ||
|
|
661cf0ff74 | ||
|
|
3928730839 | ||
|
|
c446bd296c | ||
|
|
accc3e46cf | ||
|
|
54a4b7fdc1 | ||
|
|
b44f808592 | ||
|
|
d9f1b2c3a4 | ||
|
|
13ece539ec | ||
|
|
6f386c1cf2 | ||
|
|
867738bf7a | ||
|
|
f7dfd312d3 | ||
|
|
8b4877724e | ||
|
|
4e6cc59300 | ||
|
|
caf38e002f | ||
|
|
83da1be318 | ||
|
|
1425d1b512 | ||
|
|
cd72af4043 | ||
|
|
38010a85e9 | ||
|
|
e12b104c8b | ||
|
|
dac8579656 | ||
|
|
d125e827f3 | ||
|
|
76b48c3b95 | ||
|
|
479da74bfa | ||
|
|
05c3417439 | ||
|
|
fe639f79eb | ||
|
|
4014df39e5 | ||
|
|
8b55914845 | ||
|
|
ecb95f3e8e | ||
|
|
550045f5f8 | ||
|
|
ff60b5fe12 | ||
|
|
73ef185ba3 | ||
|
|
28fb3b4a88 | ||
|
|
757ce6b6ed | ||
|
|
d82f49dbec | ||
|
|
7f58583cff | ||
|
|
be23ad1d29 | ||
|
|
c7e9e3da13 | ||
|
|
c595870e06 | ||
|
|
3568004db6 | ||
|
|
93985cea1d | ||
|
|
c512c2ff3f | ||
|
|
9c6ef4e9e3 | ||
|
|
981b70c402 | ||
|
|
0f3bed36d9 | ||
|
|
850d7d8d0f | ||
|
|
42afb16b45 | ||
|
|
70feff6119 | ||
|
|
0ead33329e |
@@ -39,7 +39,6 @@
|
||||
- [<img src="/indexicon/camera.png"/><p>镜头移动</p>](/pages/camera.md)
|
||||
- [<img src="/indexicon/roomfx.png"/><p>房间视效</p>](/pages/roomfx.md)
|
||||
- [<img src=""/><p>视觉干扰</p>](/pages/vfxpro.md)
|
||||
- [<img src="/indexicon/camerafx.png"/><p>摄像机视效</p>](/pages/camerafx.md)
|
||||
- [<img src="/indexicon/hallofmirror.png"/><p>镜厅</p>](/pages/hallofmirror.md)
|
||||
- [<img src="/indexicon/windowmove.png"/><p>窗口相关的动画</p>](/pages/WindowDance.md)
|
||||
- [<img src="/indexicon/hand.png"/><p>手</p>](/pages/hand.md)
|
||||
@@ -51,6 +50,7 @@
|
||||
- [<img src="/indexicon/custommethod.png"/><p>自定义方法</p>](/pages/custommethod.md)
|
||||
- [<img src="/indexicon/condition.png"/><p>条件</p>](/pages/condition.md)
|
||||
- [<img src="/indexicon/variable.png"/><p>表达式</p>](/pages/expression.md)
|
||||
- [<img src="/indexicon/setplaystyleandgotolevel.png"/><p>关卡播放与跳转<p>](/pages/setplaystyleandgotolevel.md)
|
||||
- 高级:第三方工具
|
||||
- [<img src="/indexicon/3rdparty_coderd.png"/><p>[Python]CodeRD</p>](/pages/3rdparty_coderd.md)
|
||||
- [<img src="/indexicon/3rdparty_rdtk.png"/><p>[C#]RhythmBase</p>](/pages/3rdparty_rdtk.md)
|
||||
|
||||
|
Before Width: | Height: | Size: 105 KiB After Width: | Height: | Size: 135 KiB |
|
After Width: | Height: | Size: 13 KiB |
|
After Width: | Height: | Size: 17 KiB |
|
Before Width: | Height: | Size: 17 KiB After Width: | Height: | Size: 42 KiB |
|
Before Width: | Height: | Size: 10 KiB After Width: | Height: | Size: 45 KiB |
|
Before Width: | Height: | Size: 48 KiB After Width: | Height: | Size: 48 KiB |
|
Before Width: | Height: | Size: 5.9 KiB After Width: | Height: | Size: 18 KiB |
|
After Width: | Height: | Size: 44 KiB |
|
After Width: | Height: | Size: 29 KiB |
|
After Width: | Height: | Size: 102 KiB |
|
After Width: | Height: | Size: 94 KiB |
|
After Width: | Height: | Size: 691 B |
@@ -101,7 +101,7 @@ metadata:
|
||||
|
||||
- 对于 落雨/JPEG失真/马赛克/海底波浪/电影噪点/暴风雪/素描/色像差/模糊/径向模糊/色调偏移:强度,缓速时长,缓速
|
||||
|
||||
- 对于 自定义屏幕块/自定义滚屏:x/y
|
||||
- 对于 自定义屏幕分隔/屏幕滚动:x/y
|
||||
|
||||
- 对于 高光:阈值,强度,颜色,缓速时长,缓速
|
||||
|
||||
|
||||
@@ -217,6 +217,8 @@
|
||||
|
||||
注意到这个缓速的一部分会超出所设置的值,所以可以先将窗口缩小到`(1%,1%)`大小,然后使用`OutElastic`缓速将窗口缩放到`(200%,200%)`大小,当窗口变大的过程中会有几帧是占满整个屏幕的,此时放一个大小为`(200%,200%)`、时长为999、缓速为`Linear`的**窗口大小重置事件**,窗口大小就会固定成全屏的了。
|
||||
|
||||
> 使用注释指令`()=>windowSize(float SizeX%, float SizeY%, float duration)`可以直接将窗口缩放到200%以上,但这个方法只能控制窗口1的大小,还没有缓速。
|
||||
|
||||
### 更多窗口(暂时不确定官方会不会修这个)
|
||||
|
||||
在谱面中放置一个窗口相关的事件(这个例子用`隐藏窗口`事件),记住这个事件的小节、节拍和在第几行,然后打开这个谱面的文件(xxx.rdlevel),找到{ "bar": <小节>, "beat": <节拍>, "y": <行数减一>, "type": "HideWindow", "show": true },这一行,<>里面应该是你记住的数据,将"y": 后面的数替换成一个大于3的数,保存并返回编辑器,重新打开这个谱面,就会发现这个事件到第4行下面了,接着当正常窗口使用就行。
|
||||
|
||||
@@ -47,7 +47,7 @@
|
||||
| **轨道特效类** | | | |
|
||||
| 隐藏轨道 | `X` | [轨道移动](../pages/moverow.md#轨道的显示与隐藏) | 改变轨道的显示和隐藏状态 |
|
||||
| 移动轨道 | `O` | [轨道移动](../pages/moverow.md#轨道的移动) | 让轨道在画面中移动,缩放,旋转等 |
|
||||
| 重排序:行 | `Shift+O` | | 将轨道移动到不同房间,或是重新对轨道进行排序 |
|
||||
| 轨道重排序~~重排序:行~~ | `Shift+O` | | 将轨道移动到不同房间,或是重新对轨道进行排序 |
|
||||
| 播放表情 | `J` | [自制角色与精灵资源](../pages/spritesheet.md#播放表情) | 改变轨道中角色的表情 |
|
||||
| 改变角色 | `Shift+J` | [轨道视效](../pages/rowfx.md#轨道涂色) | 改变轨道的角色 |
|
||||
| 轨道涂色 | `R` | [轨道视效](../pages/rowfx.md#轨道涂色) | 设置轨道的边框、涂色、透明度 |
|
||||
@@ -99,7 +99,7 @@
|
||||
| 绘制精灵图 | `R` | [使用精灵](../pages/decoration.md#绘制精灵图) | 设置精灵的边框、涂色、透明度 |
|
||||
| 播放表情 | `J` | [使用精灵](../pages/decoration.md#播放表情) | 播放精灵的表情 |
|
||||
| 显示/隐藏 | `X` | [使用精灵](../pages/decoration.md#显示/隐藏) | 显示或隐藏精灵 |
|
||||
| 重排序:精灵图 | `Shift+O` | | 将精灵移动到不同房间,或是重新对精灵进行排序 |
|
||||
| 精灵重排序~~重排序:行~~ | `Shift+O` | | 将精灵移动到不同房间,或是重新对精灵进行排序 |
|
||||
| 平铺精灵图 | `I` | [使用精灵](../pages/decoration.md#平铺精灵图) | 显示或隐藏精灵 |
|
||||
| 混合精灵图 | `B` | | 设置精灵的颜色混合模式 |
|
||||
| 注释 | `M` | [标签](../pages/tag.md#让事件摆放更有条理) | 添加注释内容或插入注释型自定义方法 |
|
||||
@@ -116,4 +116,4 @@
|
||||
| 设置主窗口 | `U` | [窗口相关的动画](../pages/WindowDance.md#设置主窗口) | 设置对话,顶部护士灯光,状态牌等内容在哪个窗口显示 |
|
||||
| 设置窗口名称 | `N` | [窗口相关的动画](../pages/WindowDance.md#设置窗口名称) | 修改窗口的标题 |
|
||||
| 设置桌面颜色 | `D` | [窗口相关的动画](../pages/WindowDance.md#设置桌面颜色) | 修改模拟移动时桌面的颜色 |
|
||||
| 注释 | `M` | [标签](../pages/tag.md#让事件摆放更有条理) | 添加注释内容或插入注释型自定义方法 |
|
||||
| 注释 | `M` | [标签](../pages/tag.md#让事件摆放更有条理) | 添加注释内容或插入注释型自定义方法 |
|
||||
|
||||
@@ -5,10 +5,10 @@
|
||||
| 特效名称 | 具体效果 |
|
||||
| :--- | :--- |
|
||||
| **摄像头类** | |
|
||||
| <font color='red'>屏幕块2x2</font> | 把屏幕块变成2x2个相同的部分 |
|
||||
| <font color='red'>屏幕块3x3</font> | 把屏幕块变成3x3个相同的部分 |
|
||||
| <font color='red'>屏幕块4x4</font> | 把屏幕块变成4x4个相同的部分 |
|
||||
| 屏幕分割 | 把屏幕块变成任意个相同的部分,注意这里是可以填写小数的 |
|
||||
| <font color='red'>屏幕分隔2x2</font> | 把屏幕分隔变成2x2个相同的部分 |
|
||||
| <font color='red'>屏幕分隔3x3</font> | 把屏幕分隔变成3x3个相同的部分 |
|
||||
| <font color='red'>屏幕分隔4x4</font> | 把屏幕分隔变成4x4个相同的部分 |
|
||||
| 屏幕分割 | 把屏幕分隔变成任意个相同的部分,注意这里是可以填写小数的 |
|
||||
| <font color='red'>水平滚屏</font> | 画面向左移动,并且从右方重复出现 |
|
||||
| <font color='red'>垂直滚屏</font> | 画面向上移动,并且从下方重复出现;需要注意:水平垂直滚屏只能存在一个 |
|
||||
| VHS | 画面带有横条和轻微抖动,有老式录像机的感觉 |
|
||||
|
||||
@@ -101,6 +101,8 @@
|
||||
|
||||
**1、**所谓的移动摄像头,画一个三维空间出来也许可以让你更好地理解。它就像是我们举着一台摄像机拍摄自己的家一样,你的手或者身子移动,那么摄像头跟着移动,拍摄下来的整体画面位置就会不同。
|
||||
|
||||
如果“真实运动”选择的是开启,那么摄像头就是记录房间内的画面,怎么移动都在房间内;选择关闭则是像看录像一样,移动时会露出边缘。
|
||||
|
||||

|
||||
|
||||
**2、**移动摄像头最基本的用法就是把摄像头跟着节奏晃来晃去,与全程静止不动的背景相比,这样会给谱面增加一些动感。这个轨道移动的弹跳设计原理是一样的,仅仅是呈现的画面效果稍显不同。
|
||||
|
||||
@@ -31,9 +31,9 @@
|
||||

|
||||

|
||||
|
||||
## 配合自定义滚屏
|
||||
## 配合屏幕滚动
|
||||
|
||||
自定义滚屏这个**预设特效**和普通的移动房间不一样,他的屏幕是上下左右接续的。但是只要是移动的屏幕,自然就可以配合浮动文字。为了方便操控文字的出现,一般也可以考虑剪裁房间的大小,并且配合遮罩。接下来就只需要安排好文字出现和消失的时机,文字就会像弹幕一样播放起来了。
|
||||
屏幕滚动这个**预设特效**和普通的移动房间不一样,他的屏幕是上下左右接续的。但是只要是移动的屏幕,自然就可以配合浮动文字。为了方便操控文字的出现,一般也可以考虑剪裁房间的大小,并且配合遮罩。接下来就只需要安排好文字出现和消失的时机,文字就会像弹幕一样播放起来了。
|
||||
|
||||

|
||||
|
||||
@@ -43,8 +43,8 @@
|
||||
|
||||
| 预设特效 | 配合效果 |
|
||||
| :--- | :--- |
|
||||
| 自定义屏幕块 | 当然是把字也分成多块,没什么特别的 |
|
||||
| 自定义滚屏 | 见上面那段 |
|
||||
| 自定义屏幕分隔 | 当然是把字也分成多块,没什么特别的 |
|
||||
| 屏幕滚动 | 见上面那段 |
|
||||
| 黑屏 | 不出意外地全黑了 |
|
||||
| 噪点、干扰 | 对浮动文字无效 |
|
||||
| 电影噪点、高光、JPEG失真、马赛克、海底波浪 | 正常地产生效果 |
|
||||
|
||||
@@ -20,6 +20,10 @@
|
||||
|
||||

|
||||
|
||||
**字体**:可以强制文本是哪种字体,有像素字体(不支持中文)、矢量字体(中文默认显示的字体)和粗体字体(`2-X`判定文字同款)。点击旁边的文件夹图标可以自行导入ttf或otf格式字体文件。
|
||||
|
||||

|
||||
|
||||
**位置**:指的是基准的位置。可以按一下准星符号再在预览画面窗口中点选位置。有条件精准找到位置的话还是建议在`X`和`Y`栏中输入具体数值。**点击右边的`%`按键可以切换屏幕像素点和屏幕百分比两种输入方式**。
|
||||
|
||||

|
||||
@@ -147,6 +151,16 @@ ea.AdvanceText 8 1;
|
||||
|
||||
有没有发现不管是颜色效果还是显示效果,在设计上都和歌词本身有着些许联系,也就让平淡无奇的歌词字幕一下子变得生动起来。
|
||||
|
||||
## 文本装饰
|
||||
|
||||
你可能已经注意到,**浮动文字**事件并没有移动文字的功能。如果想要移动文字,请移步绿色板块,点击加号创建装饰,选择“文本”。
|
||||
|
||||

|
||||
|
||||
创建一个**设置文本**事件,你会发现这个事件和浮动文字基本一样,相信你已经知道怎么用了。
|
||||
|
||||
这里的文本比起用浮动文字事件创建的文本功能更加齐全,不仅可以**移动装饰**,还可以**显示/隐藏**、**重排序:装饰**,等等。总之和精灵图差不多(如果想了解精灵图请看[这里](../pages/decoration.md#制作一个精灵)),这里就不过多赘述了。
|
||||
|
||||
## 显示对话
|
||||
|
||||
在不少剧情关卡里面角色都会有聊天的过程,这在编辑器内也是可以轻松实现的,需要的是紫色版块中的**显示对话**功能。
|
||||
|
||||
@@ -1,5 +1,22 @@
|
||||
# 更新信息
|
||||
|
||||
#### 2026-06-06
|
||||
- 更新 [VFX](../pages/vfx.md) 章节
|
||||
- 更新[镜厅](../pages/hallofmirror.md) 章节
|
||||
|
||||
#### 2026-03-25
|
||||
- 更新事件列表
|
||||
- 更新预设特效列表
|
||||
- 修正格式错误
|
||||
- 更改“设置窗口数量”译名为“设置窗口内容”
|
||||
- 补充 WindowDance 页内容
|
||||
- 更新轨道涂色属性页图片
|
||||
- 更新轨道重排序事件
|
||||
- 更新旋转轨道事件的详细内容
|
||||
- 更新默认轨道的各部分位置分布数值
|
||||
- 为改变轨道事件描述添加图片
|
||||
- 更新制作人员表
|
||||
|
||||
#### 2026-03-01
|
||||
- **变量**一节被替换为[表达式](../pages/expression.md)。
|
||||
- 为各种标题添加了容易辨识和定位的背景渐变条。
|
||||
|
||||
@@ -28,6 +28,8 @@
|
||||
|
||||
如何加入类似于`1-2亲密`的`X`记号呢?在生成一个节奏之后,点击“**切换为X字拍子设置**”就可以调节。需要注意的是:你需要在一串普通拍子开始的**同时**或是**之前**就放置好修饰拍子设置。如果在普通拍子已经响起之后再添加`X`,虽然画面上能即时生效,但是节拍音效是没法立刻改变的。
|
||||
|
||||
如果你在单发类型的轨道上放置`切换为X字拍子设置`,那么时间轴会卡住无法播放。
|
||||
|
||||
> 在没有节奏的地方放置一连串的“切换为X字拍子设置”来改变`X`的排布也可以视为一种画面演出。
|
||||
|
||||
当然,这个功能也不仅仅是为轨道加`X`,按下鼠标左键是加入`X`记号,按下鼠标右键一次是`↑`箭头记号,两次是`↓`箭头记号。按下鼠标中键一次是摇摆心跳记号,两次是抖动心跳记号。
|
||||
|
||||
@@ -20,7 +20,7 @@
|
||||
|
||||

|
||||
|
||||
**类型:**“**普通**”表示像武士一样的普通拍子节奏,“**单发**”表示像咖啡师一样的单发拍子节奏。需要注意的是,切换轨道类型的同时也会清空轨道上的所有节拍,因此建议在一开始就确定好轨道的类型。
|
||||
**类型:**“**普通**”表示像武士一样的普通拍子节奏,“**单发**”表示像咖啡师一样的单发拍子节奏。虽然现在单发和普通拍子可以共存,但需要注意的是,切换轨道类型的同时也会清空轨道上的所有节拍,因此建议在一开始就确定好轨道的类型。
|
||||
|
||||
**玩家:**P1,P2表示玩家1和玩家2,CPU表示电脑演示。
|
||||
|
||||
|
||||
@@ -15,6 +15,7 @@
|
||||
- [正宗的小绿君](https://space.bilibili.com/1782518253)
|
||||
- [kuanpan](https://space.bilibili.com/1928620300)
|
||||
- [obugs](https://space.bilibili.com/498017546)
|
||||
- [zyx](https://space.bilibili.com/2045355693)
|
||||
- 视频制作:
|
||||
- [吾夜犹明](https://space.bilibili.com/29219948)
|
||||
- [山不转水到渠成](https://space.bilibili.com/4870582)
|
||||
|
||||
@@ -110,6 +110,21 @@
|
||||
|
||||
**时长与缓速:**同其他事件。
|
||||
|
||||
## 混合精灵图
|
||||
可以将精灵图的颜色与场景混合。
|
||||
|
||||
混合模式将进行以下计算(超过255的按255算,小于0按0算,小数四舍五入):
|
||||
|
||||
假设背景色为RGB(r1,g1,b1)
|
||||
|
||||
精灵图颜色为RGB(r2.g2.b2)
|
||||
|
||||
**附加(add 线性减淡)**模式显示的颜色为RGB(r1+r2,g1+g2,b1+b2)
|
||||
|
||||
**叠加(mul 正片叠底)**模式显示的颜色为RGB(r1*r2/255.g1*g2/255.b1*b2/255)
|
||||
|
||||
**反转(inv 反色)**模式显示的颜色为RGB(rl-r2,b1-b2,g1-g2)
|
||||
|
||||
## 精灵的使用技巧
|
||||
|
||||
**1、作为场景物体**
|
||||
|
||||
@@ -86,6 +86,8 @@
|
||||
|
||||
**另存为**:保存为额外的一个文件。
|
||||
|
||||
**测试**:直接开始游玩关卡。
|
||||
|
||||
**导出以发布**:导出以发布:将谱面导出为 .rdzip 文件,或将谱面上传至创意工坊。
|
||||
|
||||
**退出**:退出编辑器,记得先保存。
|
||||
|
||||
@@ -1,22 +1,25 @@
|
||||
# 镜厅
|
||||
|
||||
游戏的画面是一帧一帧地播放的。为了确保游戏的画面一直在更新,在绘制一帧画面之前,游戏会将已经绘制过的画面重置为全黑。
|
||||
## 镜厅的本质
|
||||
正常情况下,游戏每一帧绘制前都会清空屏幕(填充黑色),然后重新绘制所有物件。这保证了上一帧的画面不会残留。
|
||||
**但是如果不重置呢?**
|
||||
镜厅(Hall of Mirror) 就是关闭这个清空操作。上一帧的画面保留在屏幕上,新画面直接叠加在上面。
|
||||
|
||||
## 基础效果
|
||||
你可以尝试:
|
||||
- 添加一个会移动的轨道或精灵(如一个向右匀速移动的豆子盒)
|
||||
- 在预设特效中添加"镜厅"
|
||||
- 播放关卡
|
||||
你会发现,方块不再是一个清晰的个体,而是一条向右延伸的 "尾巴"。
|
||||
这是每一帧的方块叠加在一起形成的拖影。
|
||||
> 镜厅在 "主题设置" 和 "预设特效" 中都有,但请使用预设特效版本。主题设置是全局开关且难以与其他特效组合,预设特效可以灵活控制。
|
||||
|
||||
相信你已经有了初步的感觉。镜厅就是这样,原来一帧的画面仍然保留在屏幕上,只是游戏重新绘制的画面直接覆盖在了原画面之上,从而造成一种“拖影”的效果。
|
||||
这本是一种“bug”,但如果稍加利用,或许会有出其不意的效果。
|
||||
如果不加控制,每一帧都叠加新画面,屏幕很快会被完全填满。我们需要一种机制让旧的画面逐渐淡出。
|
||||
|
||||
## 抑制方法
|
||||
|
||||
### 画面的覆盖
|
||||
### 亮度衰减
|
||||
|
||||
既然画面是一层一层叠在上面,如果要“修复这个 bug”,那就得咱们手动去将整个屏幕更新。
|
||||
但是如果直接覆盖一个特定的颜色或者背景,那好像和直接设置背景没什么区别,镜厅就没有存在的意义了。
|
||||
那半透明呢?
|
||||
画面会被覆盖,但是覆盖程度取决于透明度。
|
||||
我们来做个小实验:假设现在有一个像素的亮度为 100,每一帧向右移动 1 像素,在镜厅的效果下会导致它在每一帧一直留存,但是现在有一个手段,能够在每一帧画完之前整个画面的亮度降为原来的一半,那这个像素的实际亮度是怎样的呢?
|
||||
假设一个亮度为 100 的像素每帧向右移动 1 像素,且每帧绘制前整个画面亮度衰减为原来的 50%:
|
||||
|
||||
| 帧 | 亮度 ||||
|
||||
|-|-:|-:|-:|-:|
|
||||
@@ -25,88 +28,111 @@
|
||||
|3|25|50|100|
|
||||
|4|12.5|25|50|100|
|
||||
|
||||
理解了这个之后,你就可以着手做出这样的效果:
|
||||
衰减率决定拖尾长度。
|
||||
节奏医生没有直接的 "衰减率" 参数,但可以通过以下方式模拟:
|
||||
|
||||

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

|
||||

|
||||
|
||||
### 画面的扭曲
|
||||
|
||||
同样的,也可以
|
||||
|
||||
---
|
||||
|
||||
|
||||
镜厅一共能在两个地方找到,一是设置主题中的 “镜厅”,二是预设特效中的“镜厅”。**但最好使用预设特效中的**。
|
||||
|
||||
如果只是直接使用镜厅加上预设特效,效果一般只会越来越阴间,所以我们一般会使用预设特效里的“晕影”和“闪烁晕影”或者半透明的背景或半透明的后背景板闪光(由于设备性能差别,镜厅的效果显示可能每个人会有所不同,我一般使用20的透明度)来起到抑制的效果,同时这样也能直接做出最简单的拖尾效果。
|
||||
|
||||
|
||||
拖尾效果(可以注意到镜厅留下了痕迹 ,如果想去除就需要再加上其他的效果,比如-1强度的高光)。这里再附上一些特效在遮罩后的组合(默认都已经打开了镜厅)。
|
||||
|
||||

|
||||

|
||||

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

|
||||
|
||||
一般来说直接用这些效果是不会太好的,用的时候会使用更多其他的特效进行组合。
|
||||
### 位移扭曲
|
||||
除了亮度衰减,还可以让历史画面发生位移,产生流动感。
|
||||
|
||||
### 反色(HOMVERT)
|
||||
---
|
||||
|
||||
镜厅+反色的结果往往是会让眼睛难以承受的高频闪烁,因此直接使用是禁止的,但是加上一点遮罩就可以避免这种结果。
|
||||
#### 基础位移效果
|
||||
在镜厅基础上添加屏幕滚动:x = 1, y = 1
|
||||
配合 20% 透明度黑色背景
|
||||
元素朝左上方向流动的同时会一直复制画面本身叠印起来。
|
||||

|
||||

|
||||
|
||||

|
||||
#### 屏幕分隔扭曲
|
||||
添加屏幕分隔特效:x = 2, y = 2
|
||||
画面被划分为 2×2 的块,同时会叠上原来的画面。
|
||||

|
||||
|
||||
另外,值得一提的是护士语音自带的灯光实际上是一片反色的区域,因此如果使用了镜厅,就要注意是否产生了镜厅反色(实在没办法也可以用音效代替直接使用语音来避免出现灯光)。
|
||||
### 区域控制
|
||||
镜厅是全屏效果,但有时你只想部分区域有拖影,或者需要保护某些区域不被拖影污染。
|
||||
|
||||
### 背景
|
||||
---
|
||||
|
||||
如果直接使用背景加上镜厅使用是不会有效果的,但如果我们把背景的颜色设成半透明在加上镜厅就能在保留背景的情况下加上镜厅的效果。
|
||||
#### 反色遮罩
|
||||
镜厅 + 反色(HOMVERT)会产生高频闪烁,极其伤眼,**禁止直接使用**。
|
||||
通常使用镜厅 + 反色 + 20% 透明度黑色背景的组合。
|
||||
黑色背景作为遮罩层,可以降低反色区域的对比度,消除闪烁
|
||||
> 护士语音自带的灯光是反色区域,使用镜厅时需注意,或用音效代替语音避免灯光。
|
||||
|
||||

|
||||

|
||||
|
||||
如果图片本身有透明部分,则镜厅的效果会只在透明的部分显示。
|
||||
#### 背景遮罩
|
||||
直接使用背景 + 镜厅无效果(背景完全覆盖,没有透明区域供镜厅显示)。
|
||||
设置背景为半透明(如 50% 透明度),镜厅效果只在背景的透明部分显示
|
||||
> 如果图片本身有透明通道(如 PNG),镜厅会自动只在透明区域产生拖影。
|
||||
|
||||

|
||||
|
||||
### 顶部镜厅
|
||||
|
||||
预设特效里的镜厅除了四个房间外,还可以选择在“顶部”生效,这样就能做出只用房间做不出的效果,或者通过缩放和移动房间让整个房间受到镜厅影响。我们可以利用这个干很多事。
|
||||
### 房间控制
|
||||
预设特效中的镜厅有两个作用域:
|
||||
- 四个房间:仅影响关卡内的游戏区域
|
||||
- 顶部:影响整个屏幕,包括 UI 和边框
|
||||
|
||||
#### 顶部镜厅
|
||||
##### 边框绘制
|
||||
使用顶部镜厅 + 特定物件移动
|
||||
拖影会在屏幕边缘形成 "画框" 效果
|
||||

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

|
||||
|
||||
直接在使用主题的房间使用镜厅是不会有效果的,但如果设置透明背景再使用顶部镜厅就能起到作用(需要注意的是,有些主题设置的时候会自动设置一些效果,可以在设置主题后0.0001拍再设置其他效果来避免与主题冲突)。
|
||||
#### 房间透明化
|
||||
直接使用主题 + 镜厅无效果(主题背景不透明)。
|
||||
设置主题后,在 0.0001 拍时添加其他特效(避免与主题自动设置冲突)
|
||||
设置透明背景 + 顶部镜厅
|
||||
或者将主题放在单独房间,将该房间设为半透明,轨道物件叠加在上方
|
||||
|
||||

|
||||
|
||||
对于本身没有透明部分的主题,我们可以把主题单独放在一个房间然后把那个房间半透明化,之后把轨道单独叠在那个房间上面来达成效果。
|
||||
## 组合
|
||||
镜厅不是单独使用的特效,而是基础层。真正丰富的效果来自组合。
|
||||
|
||||
### 透明化
|
||||
### 控制维度
|
||||
|
||||
虽然在大部分情况下使用了镜厅就意味着房间的背景不再能透明,但在少数特效影响下的情况是可以的。
|
||||
维度 | 特效示例 | 作用
|
||||
---- | -------------------- | -----------------
|
||||
衰减 | 黑色背景透明度、晕影 | 控制拖尾长度
|
||||
位移 | 滚屏、海底波浪 | 让拖影流动 / 扭曲
|
||||
颜色 | 高光、反色、VHS | 改变拖影色彩
|
||||
遮罩 | 背景透明度、屏幕分隔 | 限制镜厅作用区域
|
||||
|
||||

|
||||

|
||||
### 经典组合参考
|
||||
- 拖尾基础:镜厅 + 20% 黑色背景 + 晕影
|
||||
- 流动拖尾:镜厅 + 海底波浪 (0% 强度) + 20% 黑色背景
|
||||
- 方块拖影:镜厅 + 屏幕分隔 (2×2) + 晕影
|
||||
- 蓝色光晕:镜厅 + 蓝色高光 + 晕影
|
||||
- 复古故障:镜厅 + VHS + 电影噪点
|
||||
- 雨夜效果:镜厅 + 落雨 (负数强度) + 高光 (负数强度)
|
||||
### 透明化特例
|
||||
某些特效会让背景在镜厅下保持透明:
|
||||

|
||||

|
||||

|
||||

|
||||
|
||||
也有一些特效会让背景半透明。
|
||||
|
||||

|
||||

|
||||
|
||||
与之相对的,也有部分特效会让镜厅无法透明,加上其他的特效也一样。
|
||||
|
||||

|
||||

|
||||
|
||||
### 特殊效果
|
||||
|
||||
镜厅其实不只能用来做特效,也可以用来做一些特殊的效果。比如用来画画或者猜单词,当然这些都是一般用不到且比较难实现的,放在这里只是让你们知道一下。
|
||||
|
||||
### 组合
|
||||
|
||||
上面提到的都是镜厅的一些基本的用法。但做谱的时候不可能只用这些效果,这样是做不出花样来的。要做出更多变数,就要尝试更多的组合,甚至把组合再组合,这样就能做出很多不同的效果。在想不到怎么做特效的时候这是个很好用的方法试的时候也要注意效果不能太伤眼,也不是叠的特效越多越好。丰富谱面的内容才是第一目的。
|
||||
|
||||
与此同时,我们也要知道,镜厅只是做谱时的一种手段,做特效如果只是一味的试各种特效还不去了解其他方面,是没法提高的。希望你们做谱的时候能够合理使用镜厅,让内容更丰富。
|
||||
某些特效会强制背景不透明:
|
||||

|
||||

|
||||
|
||||
## 一些陈旧的示例
|
||||
|
||||
@@ -147,13 +173,13 @@
|
||||
|
||||

|
||||
|
||||
### 镜厅 + 屏幕块
|
||||
### 镜厅 + 屏幕分隔
|
||||
|
||||
这个需要配合晕影使用,不然也会直接崩坏。
|
||||
|
||||

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

|
||||
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
|
||||

|
||||
|
||||
如果不对其添加任何其他设置,那么轨道就会自动变成 `—x—x—x————♥` 的模式,像`4-1`这关的矿工一样,也就是在1,3,5,7拍有按压的动画效果。当然你可以在“设置X标记”这个项目里面选择跳过节拍的形式,默认有三种情况,如果想使用“切换为修饰拍子设置”来自由决定跳过也是可以的,先在“设置X标记”里面选择NO,然后设置好自己决定的修饰拍子就行了。
|
||||
如果不对其添加任何其他设置,那么轨道会延续上一个“切换为修饰拍子设置”的模式,当然你可以在“设置X标记”这个项目里面选择跳过节拍的形式,默认有三种情况,比如选`—x—x—x`轨道就会自动变成 `—x—x—x————♥` 的模式,像`4-1`这关的矿工一样,也就是在1,3,5,7拍有按压的动画效果。
|
||||
|
||||
```rdview 7 3
|
||||
eb.AddClassicBeat 3 1[tick=3,hold=0.3,swing=0.5];
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
|
||||
制作一个自制谱的第一步就是导入一首音乐。虽然编辑器本身对音频文件格式无严格要求,但还是**请使用.ogg格式的音频文件**,以减少出BUG的可能性,对后续的调整偏移和选关界面试听也有帮助。如果你需要.ogg格式但是手头只有.mp3可以使用[aconvert](https://www.aconvert.com/cn/audio/mp3-to-ogg)等软件转换。**音乐的文件名尽量只包含字母、数字和半角符号**。
|
||||
|
||||
点击左上角的**菜单→新关卡**来创建新关卡,编辑器会帮我们选择到默认位置(C:\用户\你自己的用户名\文档\Rhythm Doctor)。如果你有长期做谱的需求,建议另取一个独立文件夹,会方便管理。在这个文件夹里创建的文件夹,就代表着你制作的不同的谱面。创建文件夹后进入,输入好谱面文件名,点击确定,就成功创建了一个谱面。
|
||||
点击左上角的**菜单→新关卡**来创建新关卡,编辑器会帮我们选择到默认位置(`C:\用户\你自己的用户名\文档\Rhythm Doctor`)。如果你有长期做谱的需求,建议另取一个独立文件夹,会方便管理。在这个文件夹里创建的文件夹,就代表着你制作的不同的谱面。创建文件夹后进入,输入好谱面文件名,点击确定,就成功创建了一个谱面。
|
||||
|
||||
> 在编辑已保存的关卡时,编辑器会每隔 5 分钟在此关卡相同目录生成一个 `backup.rdlevel` 备份文件并覆盖原有 `backup.rdlevel` 文件,如果做到一半编辑器崩了没保存就可以打开这个文件来恢复数据。
|
||||
|
||||
@@ -20,7 +20,7 @@
|
||||
|
||||
## 调整曲速和偏移
|
||||
|
||||
接下来一点十分重要,那就是调节BPM,也就是一分钟有多少拍的意思,只有设置对了BPM才能让游戏节奏和音乐速度保持一致。排除掉一些变速曲我们可以用[ArrowVortex](https://arrowvortex.ddrnl.com/)。或者你不想额外下载软件的话,也有一些在线网站可以测试,比如[all8](https://www.all8.com/tools/bpm.htm)。
|
||||
接下来一点十分重要,那就是调节BPM(Beats Per Minute,每分钟节拍数),只有设置对了BPM才能让游戏节奏和音乐速度保持一致。如果你在制作的曲目是匀速的,可以使用一些软件如 [ArrowVortex](https://arrowvortex.ddrnl.com/),或是一些在线网站,比如[all8](https://www.all8.com/tools/bpm.htm)。
|
||||
|
||||
调整好BPM之后还需要调整偏移。我们看一下下面波形图案,点击`‐`和`+`两个按钮进行缩小和放大。
|
||||
|
||||
|
||||
@@ -49,18 +49,21 @@ eb.PulseFreeTimeBeat 9 0[pulse=9];
|
||||
|
||||
## 切分音(Syncopation)
|
||||
|
||||
切分音的概念不难理解,拍子的数量仍然为七个,但是最后一个拍子响起的时间是在6.5拍的时候,即提早了半拍。这少的半拍时间是可以发生在任意相邻两拍之间的。早期版本的编辑器需要使用自由拍来制作切分音,现在在**切换为X字拍子设置**里,点亮激活拍子下方的`->>>>>-`符号,就会将这一拍的时间缩短一半。每个轨道最多只能设置一个切分音位置。
|
||||
切分音的概念不难理解,拍子的数量仍然为七个,但是最后一个拍子响起的时间是在6.5拍的时候,即提早了半拍。这少的半拍时间是可以发生在任意相邻两拍之间的。早期版本的编辑器需要使用自由拍来制作切分音,现在在**切换为X字拍子设置**里,点亮激活拍子下方的`> > >`符号,就会将这一拍的时间缩短一半并自动添加提示音。每个轨道最多只能设置一个切分音位置。
|
||||
|
||||

|
||||
|
||||
**如何提示**
|
||||
添加完后会发现多了几个选项,各个选项效果如下:
|
||||
|
||||
> 1. 将轨道边缘染成黄色(参考颜色: `#FFFF00FF` )
|
||||
> 2. 在切分发生前的奇数拍使用“切分音嘟声-低”音效
|
||||
> 3. 在切分发生后的第一拍使用“切分音嘟声-中”音效
|
||||
> 4. 在第7拍使用“切分音嘟声-高”音效
|
||||
**摇摆**:设置切分后的按拍点距离原来的提前了(拍长*摇摆)拍。
|
||||
|
||||
需要额外注意的是,无论拍子之中是否有`X`,切分的第一个提示音、最后一个提示音以及可能存在的切分中音效都要保留,只有剩下的切分低音效是可以自行选择放置与否的。
|
||||
**音量&音高**:设置提示音的音量和音高。
|
||||
|
||||
**样式**:设置提示音的样式,鸣声是剧情模式里用到的,嘟声则是社区创造的,用哪种都可以。
|
||||
|
||||
**修饰拍子出现/消失音效**:只在使用鸣声样式才会有,用来提示切分音的出现和消失,嘟声则不需要。
|
||||
|
||||
需要额外注意的是,无论拍子之中是否有`X`,切分出现/消失和切分后第一拍的音效必须保留,只有剩下的音效是可以自行选择放置与否的。
|
||||
|
||||
## 八拍子(8 Beats)
|
||||
|
||||
@@ -83,7 +86,7 @@ eb.PulseFreeTimeBeat 8 1[pulse=9];
|
||||
> 1. 将轨道边缘染成红色(参考颜色: `#FF0000FF` )
|
||||
> 2. 在第1拍使用 `beep_mid.ogg` 自定义音效
|
||||
|
||||
不要使用内置的 `sndBeepMid` 音效!
|
||||
也可以使用内置的 `sndBeepMid` 音效。
|
||||
|
||||
八拍子也可以是摇摆拍,只需要将所有偶数拍选择并拖动即可变成摇摆拍:
|
||||
|
||||
|
||||
@@ -170,7 +170,7 @@ eb.AddOneshotBeat 5.25 2[tick=0.75];
|
||||
eb.AddOneshotBeat 3[];
|
||||
es.SayReadyGetSetGo_Get 1 1[];
|
||||
es.SayReadyGetSetGo_Set 2 1[];
|
||||
es.SayReadyGetSetGo_Go 3 1[];
|
||||
es.SayReadyGetSetGo_One 3 1[];
|
||||
```
|
||||
|
||||
如果相同拍长的方块单发拍连续出现了多次,无需为每次出现添加完整的护士提示。可以逐步减少护士提示,直到完全没有护士提示,只剩下特殊提示音。
|
||||
|
||||
@@ -12,6 +12,8 @@
|
||||
|
||||

|
||||
|
||||
> 此图片已过时,正确的请看下面:
|
||||
|
||||
<div class="theme-positions" id="theme-positions">
|
||||
<div class="column ccharacter"></div>
|
||||
<div class="column c1"></div>
|
||||
@@ -158,7 +160,7 @@
|
||||
|
||||

|
||||
|
||||
将`轨道`转到`角度`度是**合并**,no key是选择是否有烟雾。
|
||||
将`轨道`转到`角度`度是**合并**。
|
||||
|
||||
### 分割
|
||||
|
||||
@@ -166,7 +168,7 @@
|
||||
|
||||
将`轨道`从主轨道上**分割**出来,并旋转到`角度`度。
|
||||
|
||||
## 重排序:行
|
||||
## 轨道重排序~~重排序:行~~
|
||||
|
||||
将轨道转移到其他房间,或者改变轨道的层级
|
||||
|
||||
|
||||
@@ -182,12 +182,12 @@ g 7 1 1 1{
|
||||

|
||||

|
||||
|
||||
`摇晃`就是像`4-4`那关一样的摇晃效果。
|
||||
|
||||
选中一个单发拍子,按住`Shift + H`,会发现多出了一个爱心脉冲的修饰符。启用这个修饰符,可以将单发拍的形状变成`2-X`结尾的超大爱心。
|
||||
|
||||

|
||||
|
||||
> 此外像`4-4`关的抖动轨道单发拍子,需调用自定义方法来完成,语句为`wobblyLines = true`。如果你还不明白自定义方法是什么,需要先翻到[自定义方法](../pages/custommethod.md)看看。考虑到这玩意问的人比较多,所以就先写在此处了。
|
||||
|
||||
## 演示关卡
|
||||
|
||||
最后依然是呈上一个示范谱面。
|
||||
|
||||
@@ -18,6 +18,8 @@
|
||||
|
||||
> 当你把透明度调节为`0%`并打开轨道边框时,就会看到轨道线是插入进人物和心脏的像素图的。
|
||||
|
||||
**心:**修改心脏的贴图,比如马克的分心、万圣节的南瓜心、被网好卡菌感染的紫心等。
|
||||
|
||||
**时长与缓速:**和其他特效中的完全一致,不过多赘述。
|
||||
|
||||
> 如果你想直观地看看各种移动方式的速度区别,可以[看看这里](https://easings.net/zh-cn)。
|
||||
|
||||
@@ -0,0 +1,54 @@
|
||||
# 关卡播放与跳转
|
||||
|
||||
## 设置播放方式
|
||||
|
||||
**设置播放方式**(在紫色板块中),作用是设置关卡的播放方式,比如说,跳转到某个小节,或者循环播放某个小节。
|
||||
|
||||

|
||||
|
||||
**下一小节**是将要跳转到的小节,如果勾选了`相对`,那么这个数字就是相对于当前小节的数字。
|
||||
|
||||
> 比如说,当前小节是第3小节,**下一小节**填写了4,则若勾选`相对`将跳转到第7小节,不勾选`相对`则跳转到第4小节。
|
||||
|
||||
播放方式有以下几种:
|
||||
|
||||
- **正常**:正常播放完当前小节,然后跳转。
|
||||
- **循环**:循环播放当前小节。(如果选择**循环**,则没有**下一小节**)
|
||||
- **延长**:~~据笔者实验,似乎是无限延长当前小节~~笔者不确定它的作用,待补充。
|
||||
- **立即**:播放完这一拍之后,立即跳转。
|
||||
- **超级立即**: 立即跳转。
|
||||
- **延长下一拍**:~~据笔者实验,似乎与**正常**差别不大,但若在小节最后一拍,不会跳转~~笔者不确定它的作用,待补充。
|
||||
|
||||
## 前往关卡
|
||||
|
||||
**前往关卡**(也在紫色板块中),顾名思义,就是前往某个关卡。(为了方便叙述~~偷懒~~,下文中将**当前关卡**称为**a关卡**,**要前往的关卡**称作**b关卡**)但要注意,a关卡和b关卡需在同一文件夹中。导出a关卡时,b关卡会打包进a关卡的rdzip里。
|
||||
|
||||
**前往关卡**事件有两个用法,一个是直接`前往关卡`,另一个是先`设置下一个`关卡再`前往下一个`关卡。后者需要两个**前往关卡**事件。
|
||||
|
||||
你可能会问,为什么要用两个事件,先`设置下一个`再`前往下一个`~~,这不是脱裤子放屁吗~~?这是因为,只有先`设置下一个`关卡,才能有`跳过`功能。这里我们先按下不表,详见后文[制作教程关卡](#制作教程关卡)。
|
||||
|
||||

|
||||
|
||||
**淡入**:设置是否淡入。
|
||||
|
||||
**立即开始**:设置在b关卡开始前,是否显示`按空格键开始`的画面。
|
||||
|
||||
**保留失误**:这条很好理解,设置是否将a关卡的失误数带入b关卡。
|
||||
|
||||
**阻止重启按钮**:这条的名称可能有点迷惑。它的作用实际上是:在**已经跳转到b关卡后**,当点击重启按钮时,如果它被勾选,那么将**从a关卡开始**,而不是从b关卡开始;反之,如果它未被勾选,则从b关卡开始。
|
||||
|
||||
## 制作教程关卡
|
||||
|
||||
为什么把这两个事件一起介绍呢?原因就是,它们最常见的场景都是在**教程关卡**中使用。什么是**教程关卡**?相信只要你玩过主线,对它不会陌生,它是在正式关卡开始前,对**新出现的机制或节奏**的介绍与教学。一般都长这样:
|
||||
|
||||

|
||||
|
||||
想要实现在教程结束之后跳转到正式关卡,就需要用**前往关卡**事件。
|
||||
|
||||
你想必知道,官方的**教程关卡**都可以在菜单里`跳过`,要实现这个功能,就得在关卡开头放上`动作`为`设置下一个关卡`的**前往关卡**事件,并且勾选**允许跳过按钮**。再在结尾放上`动作`为`前往下一个关卡`的**前往关卡**事件。
|
||||
|
||||
那么,**设置播放方式**在**教程关卡**中有什么用呢?如果你节奏感一般~~像我一样~~,可能就会发现,官方的**教程关卡**中,如果你在一段中失误太多,就会重新开始这一段。这就需要用到**设置播放方式**,以跳转到之前的小节。当然,也要结合上之前学过的[条件](../pages/condition.md),以判断失误数是否超过某个值。([atLeastNPerfects](https://docs.qq.com/sheet/DQUJxb0puSFFOVWpz?tab=000003)可能会派上用场)
|
||||
|
||||
> 最后,做个关于关卡设计的提醒:制作**教程关卡**时,请添加`晕影`或`闪烁晕影`特效并添加`轨道涂色`,以确保`轨道`清晰可见。
|
||||
|
||||

|
||||
@@ -16,7 +16,7 @@
|
||||
|
||||
甚至轨道可以大部分位置都不可见。比如制作只显示脉冲心跳部位的单发拍子,并做成纯色等。
|
||||
|
||||
> 调用自定义方法`invisibleHeart = true`可以让轨道上的心脏消失。如果不选择角色,那么就只剩下一根线了,在一些极简色块画风的关卡里效果拔群。
|
||||
> 使用轨道涂色或调用自定义方法`invisibleHeart = true`可以让轨道上的心脏消失。如果不选择角色,那么就只剩下一根线了,在一些极简色块画风的关卡里效果拔群。
|
||||
|
||||
## 背景和前景图片
|
||||
|
||||
|
||||
@@ -1,11 +1,103 @@
|
||||
# 基础 VFX 效果
|
||||
|
||||
本节将介绍几种最常用、最容易上手的视觉特效。这些特效不需要复杂的组合,单独使用就能为你的关卡增色不少。如果你是第一次接触节奏医生的谱面制作,建议先从这里开始。
|
||||
|
||||
## 震动
|
||||
|
||||
震动是最直觉的反馈手段——玩家按对了拍子,画面跟着"咚"一下,手感立刻就上来了。
|
||||
|
||||
编辑器中提供了几种震动方式,可以在紫色版块中找到:
|
||||
|
||||
| 震动类型 | 效果 |
|
||||
| :--- | :--- |
|
||||
| **屏幕震动** | 整个画面抖动,分为轻微、中等、剧烈三档 |
|
||||
| **自定义震动** | 自由度更高,有多种模式 |
|
||||
| **按键震屏** | 每次按拍时画面抖动一下,适合强调节拍的"打击感" |
|
||||
| **心跳震屏** | 每次脉冲时画面轻微抖动,适合营造心跳般的律动感 |
|
||||
| **重低音震动** | 大幅度色像差 + 大幅度屏幕缩放,视觉冲击力最强 |
|
||||
|
||||
> 震动虽然好用,但也不要每个拍子都加。在一整段密集节奏里全部堆震动,画面会晃得让人头晕。建议只在重拍或者情绪转折点使用,这样才能"震"到点上。
|
||||
|
||||

|
||||
|
||||
## 闪光
|
||||
|
||||
闪光和震动类似,也是一种即时的视觉反馈。按下拍子的瞬间闪一下白光,能让玩家清晰地感受到节奏的落点。
|
||||
|
||||
在紫色版块中可以找到两种闪光:
|
||||
|
||||
**闪烁:** 最简单的闪光,屏幕白色一闪,分为短、中、长三种时长。适合用在副歌进入、重拍等需要强调的时刻。
|
||||
|
||||
**自定义闪烁:** 可以自由设置闪烁的颜色、透明度变化、持续时间和缓速模式。其中有一个"闪烁版"选项,可以控制闪烁出现在前景图之上还是背景图之上,灵活度很高。最下面的“减弱闪烁强度”则是当玩家开启“减弱闪烁强度”时使用这个设置的闪烁。
|
||||
|
||||
> 频繁闪烁的谱面请务必加上癫痫警告!
|
||||
|
||||
闪光通常配合节拍或者轨道一起使用效果最好。比如在副歌开始时闪一下,或者在长按拍子结束时闪一下,都能让画面和音乐的配合更加紧密。
|
||||
|
||||
## 预设 VFX
|
||||
|
||||
预设特效是编辑器内置的一大类视觉效果,种类非常丰富,从轻微的画面调整到强烈的精神污染应有尽有。你可以在紫色版块的**预设特效**中找到它们。
|
||||
|
||||
这里列举一些初学者最常用的预设特效:
|
||||
|
||||
### 摄像头类
|
||||
|
||||
| 特效 | 效果 |
|
||||
| :--- | :--- |
|
||||
| **屏幕分隔** | 把画面分成若干个相同的部分,可以填写小数 |
|
||||
| **屏幕滚动** | 画面向指定方向循环滚动 |
|
||||
| **过场模式** | 屏幕上下出现黑条,像游戏过场动画的感觉 |
|
||||
| **按键低重音** | 每次按拍后画面产生震动和色像差 |
|
||||
| **鱼眼** | 中间比边缘更大的鱼眼镜头效果,强度可以是负数 |
|
||||
|
||||
### 画风突变类
|
||||
|
||||
| 特效 | 效果 |
|
||||
| :--- | :--- |
|
||||
| **亮度** | 改变画面亮度,小于等于0相当于黑屏 |
|
||||
| **对比度** | 改变色彩对比度,负数相当于反色 |
|
||||
| **饱和度** | 改变色彩饱和度,负数相当于反色 |
|
||||
| **灰度** | 画面变成黑白灰的 |
|
||||
| **怀旧** | 画面发黄,复古感 |
|
||||
| **模糊** | 让画面变得模糊 |
|
||||
| **像素化** | 画面变成像素格 |
|
||||
| **色调偏移** | 改变画面色调,每隔100%是一个色调循环 |
|
||||
| **色像差** | 类似红蓝3D眼镜不戴时看到的效果 |
|
||||
| **晕影** | 边缘变暗的效果 |
|
||||
|
||||
### 添加物类
|
||||
|
||||
| 特效 | 效果 |
|
||||
| :--- | :--- |
|
||||
| **落雨** | 屏幕上出现下雨效果 |
|
||||
| **飘雪** | 屏幕上方落下雪花 |
|
||||
| **落花** | 屏幕上方落下花瓣 |
|
||||
| **气球** | 屏幕下方飘出气球 |
|
||||
| **纸屑** | 屏幕上方落下各种颜色的纸屑 |
|
||||
|
||||
> 预设特效可以叠加使用,但也要适度。堆太多特效不仅会让画面变得混乱,还可能造成性能问题。初学者建议每次只叠加2-3个特效,观察效果后再决定是否继续添加。
|
||||
|
||||
完整的预设特效列表可以参考[预设特效附录](../pages/appendix_vfxs.md)。
|
||||
|
||||
## 反色
|
||||
|
||||
## 镜像
|
||||
反色就是把画面上所有颜色变成它的互补色——黑变白、白变黑、红变青、蓝变黄。这是一个简单但效果非常明显的特效。
|
||||
|
||||
实现反色有几种方式:
|
||||
|
||||
1. **对比度或饱和度设为负数:** 在预设特效中,将对比度或饱和度的值设为负数,就能达到类似反色的效果。
|
||||
2. **使用颜色反转事件:** 直接在紫色版块中使用颜色反转事件,一步到位。
|
||||
|
||||
反色通常用于表达情绪突变、场景切换或者节奏上的高潮段落。例如在一段平静的音乐之后突然反色,能给玩家带来强烈的视觉冲击。
|
||||
|
||||
> 反色不要用得太频繁。快速交替的反色会造成高频率闪烁,非常伤眼,属于视觉干扰的范畴。如果确实需要频繁反色,请参考[视觉干扰](../pages/vfxpro.md)中的注意事项。
|
||||
|
||||
## 镜像
|
||||
|
||||
镜像效果可以让画面左右对称或者上下对称,产生一种"照镜子"的感觉。这个效果在编辑器中可以通过**屏幕翻转**事件来实现。
|
||||
|
||||
镜像最典型的用法是配合场景设计。比如在一个对称的舞台背景中使用镜像,可以让画面看起来更加整齐华丽。又或者在某些特定的节拍点上突然镜像再恢复,能产生一种"时空错乱"的视觉效果。
|
||||
|
||||
镜像也可以和移动房间配合使用。把房间缩小并镜像,就可以在屏幕边缘做出类似"画中画"的效果,丰富画面的层次感。
|
||||
|
||||
> 镜像本身是一个比较克制的特效,单独使用时不会太伤眼。但如果和其他特效(尤其是镜厅、放克等)叠加,效果可能会变得非常夸张,使用时请注意测试。
|
||||
@@ -1,6 +1,9 @@
|
||||
# 视觉干扰
|
||||
|
||||
> 在关卡中出现对比度较高画面快速交替,如红蓝、黑白快速闪烁,必须开启癫痫警告。使用“放克”特效,必须开启癫痫警告。使用“干扰”特效较多,建议开启癫痫警告。一秒出现3次以上快速闪烁,建议开启癫痫警告。
|
||||
> 在关卡中出现对比度较高画面快速交替,如红蓝、黑白快速闪烁,必须开启癫痫警告。
|
||||
> 使用“放克”特效,必须开启癫痫警告。
|
||||
> 使用“干扰”特效较多,建议开启癫痫警告。
|
||||
> 一秒出现3次以上快速闪烁,建议开启癫痫警告。
|
||||
|
||||
> 即使开启了癫痫警告,也不要设计出会伤害视力的干扰效果。
|
||||
|
||||
@@ -43,30 +46,4 @@
|
||||
|
||||
很多预设特效都自带一点画面干扰的倾向,而将这些效果叠加就能加剧干扰效果,如果再叠加上一节所述的镜厅效果则会更加一发不可收拾。堆预设特效可以玩玩,但也要适度。
|
||||
|
||||
除镜厅外,放克特效也是要谨慎使用的,过大的饱和度会让眼部急剧不适,往往可以放在整个场景的最底层空区域进行一个小面积适度的铺设。
|
||||
|
||||
下面举几个例子:
|
||||
|
||||
**竖直滚屏+VHS+电影噪点+高光**
|
||||
|
||||
带来信号干扰、丢失的感觉
|
||||
|
||||
**顶部镜厅+摄像头/房间动画**
|
||||
|
||||
旋转,跳跃,残影,你画面拉出了完美的拖尾
|
||||
|
||||
**屏幕翻转+颜色反转+滚屏**
|
||||
|
||||
画面你别乱跑
|
||||
|
||||
**短暂的噪点/干扰**
|
||||
|
||||
默数拍子开启
|
||||
|
||||
**放克+落雨+灰度+慢游戏速度**
|
||||
|
||||
听话,别把灰度去掉
|
||||
|
||||
**25%白色前景闪烁+暴风雪+雪花+VHS+关闭竖直滚屏+电影噪点+JPEG失真+落雨+快游戏速度**
|
||||
|
||||
最后的绝望(《冰与火之舞》 “XH-X 最后的希望”类似效果)
|
||||
除镜厅外,放克特效也是要谨慎使用的,过大的饱和度会让眼部急剧不适,往往可以放在整个场景的最底层空区域进行一个小面积适度的铺设。
|
||||
@@ -101,7 +101,7 @@ metadata:
|
||||
|
||||
- 对于 落雨/JPEG失真/马赛克/海底波浪/电影噪点/暴风雪/素描/色像差/模糊/径向模糊/色调偏移:强度,缓速时长,缓速
|
||||
|
||||
- 对于 自定义屏幕块/自定义滚屏:x/y
|
||||
- 对于 自定义屏幕分隔/屏幕滚动:x/y
|
||||
|
||||
- 对于 高光:阈值,强度,颜色,缓速时长,缓速
|
||||
|
||||
|
||||
@@ -1313,3 +1313,18 @@ del {
|
||||
transition: background-color 0.3s, transform 0.2s;
|
||||
z-index: 20;
|
||||
}
|
||||
|
||||
.controlSpan {
|
||||
border-radius: 8px;
|
||||
box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
|
||||
cursor: pointer;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
font-family: "d9", sans-serif;
|
||||
font-size: 16px;
|
||||
height: 30px;
|
||||
width: 30px;
|
||||
transition: background-color 0.3s, transform 0.2s;
|
||||
z-index: 20;
|
||||
}
|
||||
|
||||