获奖站拆解
EN

Nocturnal Dream

Nocturnal Dream 把一场清醒梦做成了一次停不下来的缩放。访客往下滚,镜头从湖边的乌鸦退进教堂,钻过锁孔走上街道,再升到城市上空,一直缩进地球、原子和细胞。访客滚过细胞之后,镜头又从乌鸦的眼睛里飞回湖边,这场梦因此没有尽头。一路上的每一样东西都是奶油色纸上的黑色线描,每一段都贴着一行像贴纸一样的大字,在和做梦的人说话。

这个站出自乌克兰的 UI/UX 设计师 Liubomyr Ulytskyi,拿到了 FWA 的当日站。

奶油色的湖面上,一只黑色的乌鸦站在芦苇丛里,远处是一座水塔和一排山,画面中央贴着黑底大字 DO YOU REMEMBER YOUR LAST DREAM?,左上角是 F TO OPEN STORAGE,右上角是 GET IN TOUCH
奶油色的湖面上,一只黑色的乌鸦站在芦苇丛里,远处是一座水塔和一排山,画面中央贴着黑底大字 DO YOU REMEMBER YOUR LAST DREAM?,左上角是 F TO OPEN STORAGE,右上角是 GET IN TOUCH

01概念

Nocturnal Dream 不卖任何东西,它是一件个人的实验作品。页面的标题问访客还记不记得自己上一个梦。站点的简介写着醒醒,你在做梦,这是一场可以互动的清醒梦,往深处滚,往近处看。右上角的 GET IN TOUCH 通向设计师自己的 LinkedIn 页面。

这场梦开始之前,访客要先等它加载完,加载画面是一片黑底,正中贴着一行大字 LET ME SHOW WHAT A REAL LUCID DREAMING LOOKS LIKE。大字下面的一行小字请访客慢慢闭上眼睛,梦还在加载,先别醒。加载完成后,下面才出现 SOUND ON 和 SOUND OFF 两个按钮,访客选一个,黑色的加载画面就像纸一样被撕开几个洞,露出底下的湖。湖边的芦苇丛里站着一只黑色的乌鸦,远处是一座水塔和一排低矮的山,画面中央贴着第一行标题 DO YOU REMEMBER YOUR LAST DREAM?。

整场梦一共 12 段,访客一直往下滚,镜头就一直往前推,场景一层套一层地换。湖边那一整幅画面原来装在教堂里的一颗水晶球里,镜头从球里退出来,走过一排排长椅,钻进一扇门上的锁孔。镜头出来时站在一条两旁是房子和枯树的街上,天上飘着几张写着 THE DAILY DREAM 的报纸。接下来镜头跳起来飞到城市上空,城市越变越小,最后成了一颗地球,地球之后是一个原子,原子之后是一个细胞。每一段都有一行自己的标题,像是梦里有一个声音在对访客说话,比如 THEY KNOW WE'RE AWARE OF THEM. BE QUIET. WE'RE GETTING OUT,又比如最后一段的 EVERYTHING IS WRITTEN. EVERYTHING BLEEDS TOGETHER.。

画面铺满了一个细胞的线描,细胞核在正中,四周是一圈圈黑色的斑点和弯曲的轮廓线,底部贴着大字 EVERYTHING IS WRITTEN. EVERYTHING BLEEDS TOGETHER.
画面铺满了一个细胞的线描,细胞核在正中,四周是一圈圈黑色的斑点和弯曲的轮廓线,底部贴着大字 EVERYTHING IS WRITTEN. EVERYTHING BLEEDS TOGETHER.

梦里还藏着一个找东西的游戏,访客按 F 打开的收藏柜里列着它的三个目标。第一个目标是靠光标在物体上找到一件隐藏的模块,第二个是靠滚动走完这场清醒梦,第三个是把六件模块都收集齐。六件模块藏在一路上的六样东西里,分别是湖边的乌鸦、教堂里的水晶球、铁吊灯和教堂的门、街上的老轿车,以及轨道上的地球。访客的光标划过画面会留下一道黑墨,只有墨迹底下才看得见钉在物体旁边的小标签,上面写着 PRESS AND HOLD TO DISCOVER。访客按住标签大约一秒,左上角跳出 MODULE HAS BEEN FOUND,这一件就进了收藏柜。

访客找到的每一件模块,在收藏柜里都有自己的一页。每一件都有一张卡片、一个慢慢转动的线框模型和一到三颗星的稀有度,旁边还有一段以迷失在自己故事里的作家口吻写的短文,比如乌鸦那一段说它是 THE ONLY WITNESS THAT NEVER BLINKED,唯一一个从不眨眼的目击者。六件都找齐之后,整个画面会黑白对调,满屏飘起彩色的纸屑。

深色的收藏柜里,左边六格卡片只有第一格亮成米色,画着一只乌鸦的轮廓,中间是一只用细线织成的乌鸦线框模型,标题 THE CROW 旁边亮着一颗星,下方写着 FOUND IN LAKE
深色的收藏柜里,左边六格卡片只有第一格亮成米色,画着一只乌鸦的轮廓,中间是一只用细线织成的乌鸦线框模型,标题 THE CROW 旁边亮着一颗星,下方写着 FOUND IN LAKE

右下角那只小乌鸦是离开这场梦的另一个出口,它所在的角落做得像游戏里的弹药角,旁边是一条标着章节号的进度条和一张转动的唱片,唱片是声音开关。访客按住小乌鸦一秒,就是朝乌鸦开枪,画面会被烧穿,然后跳到 404 页。404 页的标题写着 THIS PAGE WAS ONLY A DREAM,桌上摊着一副背面画着眼睛和乌鸦的牌,访客可以点一张来抽,也可以按 S 洗牌,按 H 回到梦里。页面上没有提到的还有一个 N 键,访客按一下,整个湖边就换成夜里的样子,天和水都变黑,乌鸦变成白色。

深色的桌面上,一副背面画着眼睛和乌鸦的牌摊成扇形,上方贴着大字 THIS PAGE WAS ONLY A DREAM,下面是 CLICK PICK A CARD 和 S SHUFFLE 两个提示
深色的桌面上,一副背面画着眼睛和乌鸦的牌摊成扇形,上方贴着大字 THIS PAGE WAS ONLY A DREAM,下面是 CLICK PICK A CARD 和 S SHUFFLE 两个提示

02设计

这个站的画面只用纸和墨两样东西。底色是一种略带黄的奶油色,像旧报纸,上面布满细小的黑色颗粒,所有的场景都是黑色的细线描,只在背光的一面铺一层浅浅的灰。教堂的砖墙、书架、长椅、街上的房子和城市里的高楼,都是这样一根一根线勾出来的轮廓,很少有整块的黑色。整块的黑留给了少数几样东西,湖边那只乌鸦是一个纯黑的剪影,所以它在满屏的细线里一眼就能认出来。

标题是这个站最鲜明的版面元素,每一行都像一张贴上去的贴纸。每一行字放在一个单独的黑色长条里,用的是一款极窄的黑体大写字 PP Formula Condensed Black,字是奶油色的。几行长条错落地叠在一起,再横着贴上几条半透明的黄色胶带,有的角翘起来,露出背面的白色底纸。标题的位置每一段都换,有的在正中,有的在左下角,有的压在画面底部。这些标题里有几处没校对到的文字,DID THEY MADE YOU FORGET IT AGAIN? 的语法错了,LOOK FIMILIAR DOESN'T IT? 拼错了 familiar,另一段的 LUCID DEAMING 少了一个 R。

教堂里,一颗玻璃水晶球立在雕花的底座上,背后是一道拱门和两排书架,右上角的墙上画着一个倒五芒星和山羊头的涂鸦,左边箱子上贴着 HELLO 和 WAKE UP 两张贴纸,左下角贴着大字 DID THEY MADE YOU FORGET IT AGAIN?
教堂里,一颗玻璃水晶球立在雕花的底座上,背后是一道拱门和两排书架,右上角的墙上画着一个倒五芒星和山羊头的涂鸦,左边箱子上贴着 HELLO 和 WAKE UP 两张贴纸,左下角贴着大字 DID THEY MADE YOU FORGET IT AGAIN?

场景里到处都是这种街头的小零碎。教堂里一只箱子上贴着 HELLO my name is 的名牌贴纸、一张圆形的 WAKE UP 和一张条形码标签,墙上是一个喷漆画的倒五芒星和山羊头,街上的报纸写着 THE DAILY DREAM 和 YOU ARE DREAMING,水塔上也印着字。这些贴纸、涂鸦和报纸把一场梦和一条真实的街道混在一起,贴纸一样的标题和它们是同一套东西。

界面文字换成了另一种声音,一款很小的等宽字 PP Supply Mono,全部大写,放在黑色的小方块里。每个方块前面都有一个画成键帽的字母,F TO OPEN STORAGE 和 G GET IN TOUCH 是这样,404 页上的 H BACK TO THE DREAM 也是这样,提示访客这些都可以用键盘按。收藏柜整个是深色的,网格、星级、坐标和短文都用这款等宽字排,像一台游戏机里的物品栏。

03动效

整场梦由滚动推着走,滚到哪里,镜头就停在哪里。访客往回滚,镜头也会倒着退回去,所以访客可以在任何一段停下来看,也可以来回滚动去找东西。段与段之间的过渡大多是镜头继续往前推,锁孔和城市都是这样被穿过去的。

每一段的标题都是滚到那里时才贴上去的。一行行黑色长条带着翘起来的角落出现在画面上,胶带横着压在字上。进门那一刻,黑色的加载画面也像纸一样撕成几块碎片散开。这种贴和撕的动作,和整个站像一本拼贴本的样子是一致的。

光标是这个站最主要的互动,它划过的地方都会洇开一道黑墨。墨迹边缘带着细小的颗粒,过一两秒就慢慢淡掉,光标旁边还一直跟着一张写着 SCROLL TO WAKE UP 的小标签。藏在物体旁边的标签只在墨迹底下显出来,墨一淡,标签就跟着消失,所以访客要在物体上来回涂抹才能找到它。

开枪那一下是整站最激烈的动效,整页画面会被烧穿。访客按住右下角的小乌鸦,旁边的圆环会一点点填满,填满时画面里的乌鸦就消失了。画面接着从中间烧出一个个洞,洞的边缘是一圈发亮的黄色火边,烧完之后,404 页从灰烬底下露出来。404 页上的那副牌先分成几叠,洗过一遍,再摊成一个扇形。

整页滚动大体顺畅,连续滚动两遍,平均都在每秒 58 到 59 帧。掉帧集中在教堂那一段,最慢时只有每秒 50 帧上下,站点这时会自动把渲染的分辨率调低一点,等帧率回来再调高。教堂之后的街道、城市和细胞都保持在每秒 60 帧。系统里打开减少动态效果的设置之后,站点不会有任何改变,撕开的加载画面、墨迹、烧穿的过渡都照样发生。

04工程

Nocturnal Dream 没有用任何现成的网站框架,代码是作者自己一块一块写的,画面交给 three.js 的 WebGPU 版本,用电脑的显卡实时渲染。按钮、标签和收藏柜是普通的网页元素,叠在画布上面,标题、贴纸和胶带则都是画在画布里的。站点的点击声和乌鸦叫声这类音效不是录音文件,而是浏览器现场合成出来的,所以这些音效不占下载量。

这场梦首次打开要下载约 5 MB,其中八成以上是三维模型,约 4.1 MB。最大的三个文件是一张桌子、那只乌鸦和一辆老轿车的模型,分别约 1.4 MB、1.2 MB 和 0.8 MB。站点自己的代码只有约 0.66 MB。访客选了 SOUND ON,站点才开始一边播放一边下载背景音乐,这段音乐约 4.6 MB,选 SOUND OFF 就不会下载。

加载画面出现得几乎是瞬间的,首次内容绘制只要 0.08 秒左右,远低于 Google 建议的 1.8 秒,这时画出来的是加载画面底部那个从 0 开始的数字。真正要等的是后面的预热,站点会在加载画面底下把 12 段场景都悄悄走一遍,让显卡提前准备好每一段要用的程序,这样访客滚动时就不会卡住。这段预热会长时间占住页面,三次打开里,声音按钮两次在十几秒内出现,有一次过了一分多钟才出现,那一次访客只能一直看着加载画面。整个加载过程里画面没有任何跳动,布局位移为 0。

只用键盘的访客走不进这场梦,最远只能停在湖边。访客按 Tab 键时,焦点只会停在 SOUND ON、SOUND OFF 和 GET IN TOUCH 三个地方。加载画面上的焦点框是深色的,压在黑底上几乎看不见。访客在 SOUND ON 上按回车可以进门,进门之后方向键、空格键和翻页键都推不动这场梦,Tab 键还会继续停在已经消失的那两个声音按钮上。F 键能打开收藏柜,方向键能在里面翻看,但找模块必须用光标涂墨,键盘做不到。

梦里的标题和那个声音说的话,读屏软件几乎一句都读不到。12 段标题都画在画布里,网页文字里只有界面上的按钮、物体旁的标签和收藏柜里的说明。首页还把语言声明成了乌克兰语,而页面上看得到的字都是英文,读屏软件可能会照乌克兰语的发音规则去念这些英文。

页面上还留着几个给作者自己用的按键。访客按下 P 键,站点会把当前画面重新渲染成一张 3840 × 1890 的大图并直接下载到访客的电脑上,屏幕上弹出一行乌克兰语的提示 Завантажено,意思是已下载。访客连续打出 WINNER 这个词,站点就会跳过整个寻找游戏,直接播放找齐六件之后的结局。这几个按键在页面上都没有说明,访客多半是误按才会碰到。

05评分与团队

奖项 出处 日期 分数
FWA of the Day The FWA 2026-10-07 84 POINTS

Nocturnal Dream 在 FWA 上得了 84 分,拿到了当日站,FWA 把它归进实验、好玩可玩和其他三个类别。这个站正属于这三类,站上没有出现任何品牌或客户的名字,也没有要卖的东西,访客能做的就是在梦里滚动和找东西。团队写在 FWA 上的说明是一段对访客说的话,大意是你以为自己醒着,其实只是在对噪音做出反应,而一个用大写字母写成的 IT 要把你从恍惚里拉出来,带你看清真实。这段话和站上那些对着做梦的人说话的标题是同一种口吻。

署名 身份 战绩
Liubomyr Ulytskyi 乌克兰的 UI/UX 设计师,在 FWA 上自我介绍以客户为导向,专注于为客户解决问题,做好看又好用的界面 FWA 4

战绩是截至写报告时的累计数,这个站只署了 Liubomyr Ulytskyi 一个人的名字,站上也没有别的署名。这位设计师在 2026 年已经拿了四次 FWA 当日站,分别在 4 月、7 月、9 月和这一次的 10 月,几乎每两三个月就有一件作品获奖。

06档案

获奖日期
2026-10-07
奖项
The FWA FOTD 2026-10-07
站点
https://www.nocturnaldream.com/
署名
Liubomyr Ulytskyi
设计取向
cinematic
技术路线
scroll
The FWA
84 POINTS,DAYS 6。https://thefwa.com/cases/nocturnal-dream
技术栈
three.js r169(WebGPU),原生 ES 模块,Web Audio
资产总计
首次打开约 5 MB,其中三维模型约 4.1 MB,打开声音后再边播边下约 4.6 MB 音乐
首屏与帧率
FCP 76–84 ms(加载画面的数字),声音按钮通常十几秒出现,有一次超过一分钟,CLS 0。连续滚动 58–59 fps