像素游戏里的光影,多半是骗你的
![]()
文本概览:全文约 1,914 字,阅读约 5 分钟。
说起来,很多人一上来就在立绘上抠侧光、画投影,场景却还是扁的。其实“看起来像现代像素游戏”那一层,常常不是画死的,是运行时叠上去的假光。
我对照了 Orange Pixel 的 Pusca 拆他自己的《Chrono Shard》光影。他反复用的词就一个:戏法(trickery)。灯是假的,影也是假的,眼睛照样买单。
先关灯,才知道贵在哪
他在演示里把灯光和阴影渲染全关掉。同一条走廊立刻变回你心里那种像素风:干净、开敞,也有点平。
有人会更喜欢这种干净。看多了别的游戏,你又想要一点点 oomph。那一点点,不一定要真光追。
![]()
差距不在底图,而在那一层戏法开没开。
灯光:一堆会混色的圆
他的灯不是从灯源朝四面八方打射线。多数时候就是不同颜色、不同透明度的圆精灵,单独占一层叠在场景上。引擎里混合常试加色或正片叠底,以“脏不脏”为准。
单独看这一层很丑:红圈、蓝晕、条状光斑,像半透明贴纸。关键在和底层像素画布混合。混对了,贴纸变氛围;混错了,整屏脏。
最小实验:先只放一个偏暖的半透明圆在角色头顶,开关这一层截图对比。再试外圈偏冷的大圆套内圈偏暖的小圆,各两三个就够。
他习惯大圆套小圆、多色叠着试。系统多年只微调,观感变好多半是他更会用了。这套灯最早用在《Space Grunts》,后来带进《Chrono Shard》。
![]()
我觉得很多人卡错地方:别盯光层好不好看,盯混合后的最终画面。
视野:反过来画“看得见的地方”
常见做法是玩家朝外打线,撞墙就停。360 度每度一条,PC 还行,弱机容易吃紧。
他的戏法是反过来:默认整片偏黑,再把看得见的区域用会淡出的白线画亮。你可以把它想成:黑暗房间里只打开几束手电,手电扫到的才亮。你以为在画阴影,其实在画可见区。
算法大概是:
蒙版先偏黑
从玩家朝多个方向做二维射线,撞墙记长度 d
每条方向用“中间亮、两端透明”的细条精灵,长度拉到 d(亮条 = 看得见的地方)
多条叠起来就是可见区
早期逐像素画线偏慢。后来改成拉伸淡出白线,省的是逐像素,不是魔法。边缘有一点锯齿感,他不介意,还当特色。
对象也挡线的话,道具容易被自己的“影”糊住。试过事后再画一遍道具,观感仍不对,就换策略了。常见补救是关键道具画在视野层之上,否则窄通道里箱子会糊成一团。
![]()
底图还是那张像素图,压迫感靠可见范围说话。
阴影盒
有了视野还想再暗一点,他加了阴影盒:按矩形区域甩阴影。箱子、大方块还行;细节多的物件,影子就不像它自己。
两层别糊成一团黑:视野决定哪里从全黑里被挖亮;阴影盒是在已经能看见的区域里,再盖半透明黑矩形(常对齐箱子、柱子占地)。叠法可以记成:裸场景 → 灯光 → 视野 → 阴影盒。
他点名对比 Robotality 的《Pathway》:真阴影管线更漂亮,但要改图形管线,还要给资产补尺寸一类数据。独游时间换不起,他就走便宜路。
阴影同样是一堆精灵图。
以后可以改形状绘制或上着色器;跨平台时着色器容易别扭,能画精灵就能复制这套戏法,对他更稳。目前阴影主要从玩家视角算,更像视野延伸,不是每盏灯各投一影。
![]()
独游光影的正经问题,不是物理对不对,是你愿不愿意为“更对”多付大半年。
移植会逼你把戏法写快
笔记本上顺滑,不等于 Switch 上顺滑。往 Switch 搬时,CPU 上算视野和阴影开始卡帧。他被迫重写、裁剪:视野还能留,阴影可能要关。
老派程序员爱折腾这种优化,他也觉得挺有成就感。
假效果写得可移植,比绑死某块显卡更适合一个人做多年。
![]()
能抄进 HTML5、MonoGame 的戏法,比“只在本机好看”的着色器更像长期家当。
你可以怎么偷师
如果你在画场景,先问:这一层该画死在图里,还是留给运行时?
可复用的顺序是:
先有一张裸像素场景
用半透明色圆做氛围灯,盯混合结果,不盯光层本身
需要压迫感时,画可见区,别死磕真实投影
矩形阴影盒只打在大方块上;细碎物件别硬套
真要物理阴影,先算资产与管线成本
![]()
底图还是那张像素画。变贵的是你敢用便宜戏法,并且接受它不够物理。
创作改变生活,不一定从“画得更像”开始。有时是你愿意承认:游戏本来就是屏幕上的戏法,然后把手里那一个戏法做到能发版。
参考资料
https://www.youtube.com/watch?v=j8--lk6frUA: https://www.youtube.com/watch?v=j8--lk6frUA
特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.