rd.rdlevel.cn/pages/camera.md
2026-06-18 17:16:54 +08:00

161 lines
10 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 房间与镜头
完全掌握了节奏医生的节奏设计之后,我们要把目光放在谱面的视觉呈现上了,这一节我们就从理解“房间”的概念开始。
编辑器总共支持四个房间,你可以想象成一栋房子有四层楼,每层楼最多住四个人,同时,每层楼的装修可以随意摆设互不干扰。这四层楼不一定刚刚好叠在一起,可以随时移动,互不交叠,只是高度不同。我们飞在空中从上往下看,就能看到目视所及范围内的大楼景象。同时,如果空中飘扬着其他物件,也会被我们的眼睛捕捉到,如果大楼的天花板和地板是透明的,那么地基里有什么东西也会被看到。
当我们使用**排列显示房间**事件时,房间就只能从上到下地排列在屏幕上,而如果使用**移动房间**事件,则可以随便移动。
## 排列显示房间
![排列房间设置(左)与实际效果(右)](../images/room-visible.png)
将左边的可见房间点亮为黄色,屏幕上就会显示这个房间,高度可以自定义,填写数据后房间高度将自动分配。详细的分配规则点击下方箭头展开。如果你懒得理解分配规则,只需永远保证 **不点亮多余的房间并且将存在的房间高度总和设置到100%** 即可。
### 房间分配规则
- 如果全部不填,那么
所有房间高度为 `25%`
- 否则
- 计算已填房间高度的总和 `Sum`
- 如果 `Sum = 100%`,那么
按实际数据设置房间高度,未填写的视为 `0%`
- 如果 `Sum < 100%`,那么
- 如果有未填写房间高度的房间,设个数为 `n`,那么
未填写高度的房间高度 `height = (100% - Sum) / n`,即均分未分配的房间高度;
- 否则
每个房间的房间高度 `height = height * 100% / Sum`,即等比例拉伸房间高度至高度总和为 `100%`
- 如果 `Sum > 100%`,那么
每个房间的房间高度 `height = height * 100% / Sum`,即等比例缩小房间高度至高度总和为 `100%`
下面还留有一个时长和缓速的选项这个和轨道移动的时所介绍的设置规律是完全相同的。如果填写0拍就是瞬间完成房间分配。
> 如果你想直观地看看各种移动方式的速度区别,可以[看看这里](https://easings.net/zh-cn)。
## 房间的前后关系
但实际上很多时候我们并不想就让房间这样死板地上下排布,甚至想让这些房间交叠在一起。要做到这一点,我们得先明确各个房间叠在一起的时候,它们的前后关系是怎样的。
![](../images/room-animation.gif)
首先看一个房间内,各种事件的由前往后关系是:
> [浮动文字]
[弹幕效果]
[前景图片]
[轨道4]
[轨道3]
[轨道2]
[轨道1]
[背景图片(图片)]
[背景图片(颜色)]
它们的前后顺序是不可改变的。
各个房间整体之间又有前后顺序,默认由前往后关系是:
> [显示状态牌]
[应用到:顶部]
[房间1]
[房间2]
[房间3]
[房间4]
四个房间的顺序是可以改变的,只需要在黄色版块内添加一个**重新排序房间**事件,把前后顺序拖动到想要的即可。
![](../images/room-layer.png)
## 激活其他房间
在刚打开编辑器的状态下实际上只能看到房间1。并不是另外三个房间不存在而是房间大小被设置成了`0%`。在黄色版块中找到**移动房间**事件事件放置在工作区的哪一行就是对应的哪个房间被移动。创建三个移动房间事件置于234行将“大小”设置为`(100%,100%)`,这样所有的房间都以屏幕大小叠在一起了。
还记得[这里](../pages/settheme.md)提到了**设置主题**事件吗,我们再添加一个“花房·昼”。由于黄色版块不再是空白的,设置主题的事件的右上角出现了新的按钮,这是将事件设置到具体房间的功能。
![](../images/room-theme.png)
将带有花房·昼主题的事件选择房间4预览效果会发现我们看到的依然是武士电子因为现在不透明的房间1完全遮住了房间4。删掉武士电子主题会发现背景全黑依然看不到花房。这是因为默认状态下房间并不是透明背景而是纯黑背景。
在紫色的版块找到**设置背景**事件将背景颜色选择为纯透明应用到123房间。再次预览终于能看到房间4了。“应用到”选项是可以多选的。
![](../images/room-eventselectroom.png)
有时还会有第五个按钮“顶部”,如果你理解了本节最开头的比喻的话,应用到顶部的事件是直接在大楼与你之间的空中生效的。房间怎么移动都不会影响到顶部。
![](../images/room-eventsettings.png)
经此示例,相信你已经能理解房间的基本运作原理了。
## 概述
移动房间应该是整个编辑器内灵活性最高的功能之一了。它的灵活性本身并不是基于对编辑器功能的理解的,而是更类似于对摄影或是视频制作手法的理解。我们观看电影也总是会说“镜头语言”,这话同样适用于作谱。合理的镜头运用可以极大程度提升谱面的视觉观感。
当然了,我们做谱面也并非是拍电影或者是画动画,并且大多数时候都是一个人作图,肝的数量也比较有限。在**有限的时间成本之内**最大化地设计好镜头才是最重要的。
就其功能本身而言,实际上内容和移动轨道并无太多差别,只是作用的对象分别是摄像头和房间而已。移动摄像头在紫色的版块中,移动房间在黄色的版块中。
![移动摄像头和移动房间的设置界面](../images/camera-movecameraandmoveroom.png)
如果你还不理解“位置”,“大小”,“角度”,“轴点”,“动画时长”,“缓速”的具体意思,请参考[移动轨道](../pages/moverow.md)。
> 但还是有一点需要强调在没有做任何房间类设置的情况下房间1的默认大小是`(100%, 100%)`,而其他的房间都是`(0%, 0%)`。
## 以移动摄像头为主的技巧举例
**1、**所谓的移动摄像头,画一个三维空间出来也许可以让你更好地理解。它就像是我们举着一台摄像机拍摄自己的家一样,你的手或者身子移动,那么摄像头跟着移动,拍摄下来的整体画面位置就会不同。
如果“真实运动”选择的是开启,那么摄像头就是记录房间内的画面,怎么移动都在房间内;选择关闭则是像看录像一样,移动时会露出边缘。
![拍摄房间里的爱心和海莉](../images/camera-haleyandheart.gif)
**2、**移动摄像头最基本的用法就是把摄像头跟着节奏晃来晃去,与全程静止不动的背景相比,这样会给谱面增加一些动感。这个轨道移动的弹跳设计原理是一样的,仅仅是呈现的画面效果稍显不同。
![移动摄像头让漂浮之心跳动起来](../images/camera-heart.gif)
**3、**让摄像头移动到画面中你想要突出强调的地方,例如某个轨道,或者是某个你想要展示的物件/画面。
![移动摄像头让镜头跟着心跳移动](../images/camera-haleyrow.gif)
![紧张的路吉](../images/camera-nervouslucky.gif)
## 以移动房间为主的技巧举例
**1、平移切换场景**
和移动摄像头不同移动房间你可以理解成一个情景剧的拍摄现场观众和摄像头都是固定不动的但是要更换场景时需要道具组挪开先前的场景放置新的场景。当然了这种视觉上如同PPT换页动画一般的移动房间形式也只是最基本的。
![水平移动切换房间](../images/camera-movehorizontallytochangeroom.gif)
上图的例子的实现方法实际上是在屏幕之外`(154%, 50%)`的位置放置房间2然后将房间1和房间2同时向左移动。
> 也许你们会觉得,运动是相对的,把房间左移其实和把摄像头右移完全等效,这样的想法是正确的,但要注意在移动摄像头时选择移动“**顶部**”而非某个房间的摄像头。
**2、缩放房间**
房间也是可以放大和缩小的,而且有两种不同的缩放模式。第一种是普通的缩放,需要在黄色版块放置一个“设置房间内容模式”然后将其选择为“拉伸”。另一种类似于剪裁图片,需要在**设置房间内容模式**中选择“保持长宽比”。
![拉伸与保持长宽比的区别](../images/camera-strenchmode.gif)
在拉伸的模式下,如果把画面的一部分镂空(在图片编辑软件里面显示为透明),然后在里面放置其他的画面,让他们一起运动,会产生奇妙的效果。还记得`2-1N`中科尔房间的电脑与武士房间之间放大缩小的转场方式吗?就是靠这个来实现的。
![禁 止 套 娃](../images/camera-nesting.gif)
在保持长宽比的模式下,可以做出`4-1N`这样的转场效果。
![4-1N 的转场](../images/camera-minercutscene.gif)
**4、排列显示房间**
在[这一节](../pages/room.md)我们介绍过这个功能,但是使用这个软件自带的排列显示房间有一个略显僵硬的限制:房间的上下关系是不可变更的。如果想要自己定义谁在上谁在下,那就不能再使用这个默认功能了,需要我们添加移动房间功能来实现。
![放假顺序](../images/camerafx-roomindex.png)
这样房间顺序就是和默认的相反的。
**5、剪裁预置主题**
我们在[这一节](../pages/settheme.md)中提到了可以在房间中**设置主题**来添加编辑器预制的场景。通过移动房间和摄像头可以在一定程度上改造主题的呈现效果。前文提到的跳动的浮动之心只是其中一例,多尝试尝试可以改造出更多效果。
## 演示关卡
由于移动摄像头和移动房间两个功能联系十分紧密,我们在设计演示谱面时会把两个功能融合在一起,以和逐一地文字介绍功能的形式进行区分。
如果需要先了解移动房间为主的技巧举例,可以先翻阅下一节教程,然后回来看这个演示关卡。
<div class="bv"><iframe src="https://player.bilibili.com/player.html?aid=209214426&page=6&autoplay=0" title="BPM 与偏移的校对教程" width="100%" height="100%" scrolling="no" frameborder="no" framespacing="0" allowfullscreen="true"></iframe></div>