Nebula

场景

一个场景就是一整套外观:它的图层、图层的旋钮、连线和场景颜色。在 Scenes 窗口中,你可以载入现成的场景、保存自己的场景、给场景配上自己的音乐,以及把场景作为文件分享。

载入场景

打开 Scenes,点按一张卡片。画面会切换到那个场景,然后播放你的音乐。窗口有两个标签页(在 iPhone 上是两页:向左或向右轻扫即可翻页):

搜索框(find a scene,在 iPhone 上为 Find)按名称在两个列表中查找场景。输入多个词时,必须全部匹配。卡片上会显示 loaded(已载入)表示屏幕上的场景,或显示 queued(排队中)表示它在等待下一首歌。你自己的场景的卡片还会显示它包含多少个图层和多少条连线(patches)。

在下一首歌时切换

在 Settings › Playback 中打开 Change scene on the next song(在下一首歌时切换场景)。之后你选的场景会先等待,随下一首歌淡入,而不是立刻切换。

My Scenes

你永远不需要按“存储”。最后一次更改后片刻,Nebula 就会保存当前场景。

点按卡片上的 …(或按住卡片,在 Mac 上也可以右键点按):

选项作用
Rename…(重新命名)给你的某个场景起一个新名字。已被使用的名字不会被接受。(仅限 My Scenes。)
Save a copy…(存储副本)用你选的名字在 My Scenes 中制作一个副本。对现成的场景也有效。
Music this scene starts(此场景启动的音乐)选择场景载入时播放什么。见下文。
Export…(导出)把场景保存为 .nebula 文件。

场景的音乐

场景可以自带音乐。在 Music this scene starts 下选择:

下次载入这个场景时,Nebula 就会开始播放那段音乐。自带音乐的场景卡片上会显示一个小小的音乐符号。菜单会显示当前的选择,例如 Now: Heart 80s。

导出和导入

这些场景随 Nebula 提供,位于 Nebula Scenes 中,排在默认场景旁边。

场景简介
Living Painting一幅会聆听的画:画出的线条随音乐化为烟雾,然后又落回原处。
Ink墨云随音乐绽放、卷曲。
Stellar Nursery孕育恒星的发光气体云,被低音搅动。
Starscape随音乐呼吸的深邃夜空。
Aurora北极光:光幕随低音折叠,随中音荡起涟漪。
Melody Thread一条描绘演唱旋律的丝带。
Note Nursery音符从旋律中诞生,然后飘走。
Equalizer经典的柱状均衡器,每个频段一根柱。
Fireflies一群火花随着旋转的气流飞舞;打击会迸发出新的火花。
Tesla Arcs每次打击都会跃出分叉的闪电。
Rain Pond夜晚幽暗的池塘:雨滴随节拍落下。
Plasma Globe一个玻璃等离子球,电弧在打击时闪耀。
Pin Field一片发光的针阵;节拍让涟漪向外扩散。
Bokeh Drift柔和的光斑,就像失焦的城市灯光。
Sand Plate发光的沙粒在每个和弦上聚成新的图形。
Pendulum Wave一排排发光的摆锤错开节奏,又重新排成一线。
Sync Lanterns成千上万盏灯笼闪烁,汇成螺旋状的光波。
Iron Filings发光的铁屑沿着随节拍翻转的磁铁排列。
Sequin Tide一块亮片布,闪光扫过它的褶皱。
Attractor Cloud发光的流线环绕着一个旋转的三维奇异吸引子流动。
Ring System由发光卫星组成的行星环,随每次打击呼吸。
Sunflower向日葵般的螺旋种子,每个节拍都向外涌出。
Particle Life发光的生物随和弦聚合、追逐、消散。
Slime Veins一张霓虹色的脉络网,每个节拍都向食物伸展。
Murmuration一群椋鸟整齐划一地转向,每次打击都会被撕开。
Ember Sieve发光的余烬堆积在隐藏的台阶上,然后如瀑布般倾泻。

每个场景都基于一个元素,有自己的颜色和一两条连线。在 Layers 和 Patches 中把它拆开,就能看到它是怎么做的。

.nebula 文件

一个场景就是一个小小的 JSON 文本文件,保存为 name.nebula。它的写法让人(或 AI 助手)可以读懂。

{
  "version": 1,
  "name": "Ember Field",
  "layers": [
    { "visual": "fireflies", "blend": "screen", "opacity": 0.8, "params": { "count": 8192, "rise": 0.5 } },
    { "visual": "pin-field", "blend": "normal", "opacity": 1, "params": { "colourMode": "palette", "glow": 0.4 } }
  ],
  "wires": [
    { "source": "bass", "target": { "layer": 1, "key": "height" }, "amount": 0.2, "smooth": 0.3 }
  ],
  "colours": { "list": ["#ff8c26", "#ffc24a", "#ff4a30"], "shift": 0, "speed": 1 }
}
键含义
version总是 1。
name场景在 My Scenes 中的名字。同名的会被替换。名字尽量简短。
layers1 到 8 个图层,最上面的图层排在第一个。图层 0 画在最上层。
wires可选。连线,最多 256 条。请参阅连线 › 在场景文件中。
colours可选。场景颜色:一个包含 1 到 12 种 "#rrggbb" 颜色的 list、shift(0 到 1)和 speed(0 到 4)。

每个图层都有一个 visual(元素的 id,见元素页面),以及可选的 blend(请参阅图层 › 混合模式;id 为 normal、screen、lighten、plus-lighter、difference、multiply、overlay、soft-light、color-dodge、darken、exclusion、hue、color)、opacity(0 到 1)、params(按键名给出的旋钮值)和 palette(该图层最多 12 种颜色)。

Nebula 打开文件时:未知的元素仍会生成一个图层,但会显示错误;未知的旋钮会被丢弃;菜单旋钮的值如果不在其列表中,会退回默认值。你没写的旋钮保持默认值。

提示。最底层画在黑色上。不透明度为满值的 normal 图层会盖住下面的一切,所以把 normal 给最底层(或者在低不透明度下用作色调),上面的图层则用 screen、lighten 或 plus-lighter。