兄弟们,今天这瓜有点离谱——居然有人传九寨沟那一池子蓝蓝绿绿的水是拿颜料调出来的,还说什么“池子底下铺了彩色瓷砖”……景区那边又双叒出来辟谣了。作为一个混游戏圈的编辑,我第一反应不是气,而是乐:这不就是现实版“游戏水体渲染反面教材”吗?咱们天天在游戏里追求那种通透、层次分明的自然水面,结果到了真·自然面前,反倒有人觉得是人工贴图,属实是显卡烧傻了。行,借着这波辟谣,咱就拿游戏开发那套思路,把九寨沟这“五彩池”的天然光追特效给拆一遍。核心图就是那张你们在刷的实拍——一个池子里同时能看到蓝、翠绿、浅黄、天蓝甚至一点褐红,像不像某个3A大作里硬堆了五层颜色贴图?别急,我一个像素一个像素给你拆,全程没一点人工染料,全是物理和生物的硬活儿。

先看这张图最抢眼的那个“九寨蓝”。这颜色在游戏里要是想调出来,美术得在材质面板里把“基础色”偏蓝调,再勾上“次表面散射”,还得反复调吸收系数——因为纯水本身是无色的,蓝光纯粹是太阳光和水分子玩的花活。太阳光是一堆波长混在一起的白光,当它扎进九寨沟的湖水时,波长比较长的红、橙、黄光就像一堆没体力的前排兵,刚入水就被吸收了大半;而蓝、紫这些短波光线像灵活的刺客,被水分子各种散射、弹射,最后从水面逃逸出来砸进你眼睛里。这就解释了为什么清澈的水体总是偏蓝。九寨沟的水源几乎全是高山融雪,加上森林覆盖超过80%,水里头几乎没什么乱七八糟的有机质和浮游生物,透明度高到离谱,所以这层“蓝底色”特别正、特别透,完全不用手动拉饱和度。要是放到游戏引擎里,这相当于把水的“散射颜色”设成深蓝,“吸收颜色”设成偏红偏黄,再把浑浊度参数压到最低,才能勉强还原出这种底子。

打开网易新闻 查看精彩图片

光有底色还不够,这水鲜亮到能当桌面壁纸,中间还有一层粒子特效在暗中发力。九寨沟那片地方是典型的石灰岩喀斯特地貌,流水长年累月地溶解岩石,把大量钙、镁离子融进了水里。这些离子跟碳酸氢根一结合,直接催生出了密密麻麻的微米级钙化悬浮微粒。咱用游戏术语讲,这相当于整个水体里铺满了超高精度的“体积粒子”。这些微粒对蓝、绿光的散射能力极强,简直就是给水体硬加了一层提亮滤镜,让原本就蓝的水又多了一层冷调光泽,看起来更饱满。而且这些粒子不光是飘着好看,它们沉降到池底,成年累月堆成一层乳白色的钙华,这玩意儿就像游戏场景底部专门铺了一张高反射率的漫反射板,把照进来的光线又反刍似的弹回去,让整个水体的颜色层次瞬间丰富好几个档位。好多新手美术在做水的时候只知道调水面颜色,忘了水底材质对观感的影响,九寨沟这波天然设置堪称教科书级示范。

再看图里那些鹅黄、褐红甚至嫩绿的斑块,这要是游戏场景,妥妥得靠程序化纹理或者顶点着色来混合出随机分布。九寨沟的解法更绝——直接养藻。池底那层钙华上常年长着水绵、轮藻这类低温藻类,不同种类的藻叶绿素含量差得不是一点半点,有的偏黄,有的偏绿,有的甚至带红调。而池水又富含钙、镁离子,等于给这些藻提供了独特的化学染色环境,让它们在同一个池子里呈现出完全不同的色相。像五花海、五彩池那几个点位,你站在同一个角度往水里看,左边一片翠绿,中间突然转成蓝,右边又泛出鸭蛋青甚至琥珀色,完全就是“一池多色”的概念。这要是交给游戏场景组来实现,少说也得叠四五层带遮罩的纹理混合,再加一套基于生物分布逻辑的生成算法,想想就替显卡疼。