关于鲤跃龙门
One world, one koi, 71 renderers, no image files.
一卷画平铺在案上;往下滚,画里的山水像立体书一样一层层站起来,再鼓成真正的三维。一尾红鲤离开石池,顺溪而上;在龙门下,千百尾鲤鱼跃起又落回;天暗下来,雨落下来。它在跃到最高处时,时间停了一下——雨滴悬在空中,镜头绕着它转。一道雷落下,它化成龙,穿过雷云,第一次看见云上的金色;夜里,它回到那方小池的上空,池里的两尾鲤抬起头。最后画卷合上。
整个世界只有一个:石池、溪、竹林、朱红的桥、瀑布、两根石柱、峰林、云海、上百尾鲤鱼和一条龙,全部由代码生成,没有一张贴图、一个模型文件。滚动就是时间,往回滚,故事倒着放。
二维和三维不是两套画面。同一个三维世界在顶点着色器里沿视线被压成一层层纸片(每张保留 4% 的厚度),太阳照在纸片上,前面的投影落在后面;开头和结尾,纸片还会绕着脚下的折线躺倒在纸面上——那就是一本立体书合上的样子。任何时刻按 F,都可以把眼前这一刻压平或展开。
每一种画法都是一段手写的 GLSL,拼进同一条管线:阴影贴图、多目标 G-buffer、可选的顶点变形、读取全部缓冲的后期。画法之上还有一层“电影”:风暴的云、雨、闪电、云上的黄昏、月夜、空气透视、穿过石柱的光柱、冲击波与宽银幕黑边——它读取每一种画法的天空遮罩与深度,所以对七十一种画法一视同仁。画法之间的转换有十种:墨晕、焚烧、卷轴、一滴水、碎玻璃,以及在三维里进行的扫描面、涟漪、体素、水位与点云。
全部 71 种画法
- I · 动画 Animation · 7
- 01赛璐璐 Anime Cel
- 02技术插图 Gooch
- 03美漫 Comic Book
- 04漫画网点 Manga
- 05线描 Ligne Claire
- 06剪影 Silhouette
- 07新海诚 Shinkai Light
- II · 绘画 Painting · 12
- 08手绘动画 Painted Anime
- 09水彩 Watercolor
- 10水墨 Sumi-e
- 11油画 Oil Impasto
- 12点彩 Pointillism
- 13梵高 Van Gogh
- 14素描 Pencil Hatching
- 15炭笔 Charcoal
- 16彩铅 Colored Pencil
- 17浮世绘 Ukiyo-e
- 18粉笔 Chalkboard
- 19透纳 Turner Sublime
- III · 印刷 Print · 7
- 20孔版 Risograph
- 21四色网点 CMYK Halftone
- 22麻胶版画 Linocut
- 23蓝晒 Cyanotype
- 24波普丝网 Pop Art
- 25喷漆模板 Stencil Graffiti
- 26铜版雕刻 Engraving
- IV · 工艺 Craft · 11
- 27黏土定格 Claymation
- 28剪纸 Paper Cut
- 29折纸 Origami
- 30针织 Knitted
- 31彩色玻璃 Stained Glass
- 32青花瓷 Blue & White
- 33金缮 Kintsugi
- 34大理石 Marble Statue
- 35漆器 Lacquer & Maki-e
- 36马赛克 Mosaic
- 37琉璃 Liuli Glass
- V · 数字 Digital · 17
- 38像素画 Pixel Art
- 39PS1 PlayStation 1
- 40Game Boy Game Boy
- 41字符画 ASCII
- 42矢量显示器 Vector Display
- 43蓝图 Blueprint
- 44全息投影 Hologram
- 45合成波 Synthwave
- 46热成像 Thermal
- 47夜视仪 Night Vision
- 48X 光 X-Ray
- 49激光雷达 LiDAR
- 50故障 Glitch
- 51单色抖动 1-Bit
- 52体素 Voxel
- 53等高线 Topographic Map
- 54霓虹 Neon
- VI · 光学 Optics · 7
- 55黑色电影 Film Noir
- 56移轴微缩 Tilt-Shift
- 57银版照相 Daguerreotype
- 58红外彩色胶片 Aerochrome
- 59水下 Underwater
- 60红蓝立体 Anaglyph 3D
- 61电影 Cinematic
- VII · 东方 Eastern · 10
- 62青绿山水 Blue-Green Landscape
- 63皮影戏 Shadow Puppets
- 64年画 New Year Print
- 65敦煌壁画 Dunhuang Mural
- 66工笔 Gongbi
- 67剪纸窗花 Window Paper-Cut
- 68缂丝 Kesi Tapestry
- 69刺绣 Silk Embroidery
- 70泼墨泼彩 Splashed Ink & Colour
- 71金碧山水 Gold & Blue-Green
操作
滚轮 · ↑ ↓ · 空格故事前进 / 后退;空格跳到下一章(往回滚,故事倒着放)
← → · [ ]换画法;A 交还给故事
F把此刻压成二维纸片,或把二维展开成三维
拖动转动镜头(松手会慢慢回来);在池边移动指针,红鲤会游过来
G总览:此刻的画面,全部画法同时运行
C · H · S查看当前画法的 GLSL · 隐藏界面 · 声音(合成的风、水、雷与钟)
WebGL 2 · 手写 GLSL · 无框架。低处 是这里的另一部分:一个关于低落与地形的双语博客。