游戏文化浓度也许很高的微型博客,还有审查观察和浅显的科普杂谈。每日 7:30 准时更新。明明很向往自由,却有着严格约束,和奇怪规则的频道。

由 gledos 创作的内容,如果没有另外声明,均为 CC-BY 4.0 许可协议。

gledos 无法保证内容正确,但会一直尝试追逐正确。

管理员: @gledos_green
逆向像素画的工具

昨天寻找了各种算法后,尝试将 Antonio Neves 的 wolfram 工具移植到 Python,经过不断与 GPT-4o 与 3.5 的讨论后,总算成功移植为了 restored_pixel_art.py

不过效果与 wolfram 有差异,成功恢复的概率不高,还是得寻找其他的方法。然后找到了 Retro Diffusion 这个 AIGC,其开发者 Astropulse 在研究用 AIGC 生成像素画,但是遇到了不够清晰、颜色杂乱等问题,于是 Astropulse 也编写了 Python 脚本来处理生成的图片。

但是以上自动化的工具总是有些问题,如果无法自动处理,还是得用半自动的工具来兜底。于是 gledos 设想了个能调整网格位置和大小的工具 manual_restored_pixel_art.html,由 GPT-4o 编写,仅支持键盘鼠标。

详细内容可以查看博文〈逆向还原像素画〉,封面视频为 manual_restored_pixel_art.html 的演示。

#像素艺术
逆向像素画

社交媒体没有对像素画(Pixel Art)有优化,导致像素艺术家不得不倍数放大像素画。这样就能保持像素的锐利,防止压缩、缩放算法毁掉像素艺术。

但是社交媒体上分享的像素画,也变得难以二次编辑。就像是难以对已经编译的程序进行二次一样,可能需要需要反编译程序。而被放大、压缩、缩放算法「编译」过的像素画,也能反编译到每个像素点对点(1 px)的原始版本。

最简单上手,也是最有毅力的方法,是徒手重绘。不过这不现实,除非是少量重要的像素画。经过查找看到了有四自动逆向像素画的算法,分别是基于边缘识别的检测角点、傅立叶变换、分析调色板和 pixelRestorer(原理不明)。

傅立叶变换这个算法比较有趣,JPEG 格式的压缩就会用到傅立叶变换,原理是图片小块的形状,能用各种波形叠出来,也就能得到小容量的近似图。

因为像素画的「形状」其实是各种棱角分明的小块,所以给像素画用到傅立叶变换后,也能看到许多十字形暗带。而这个数据中存在像素长度与宽度信息,Antonio Neves 就制作了个 wolfram 工具,能自动逆向像素画。

#像素艺术
抖动的像素

在像素艺术中,「抖动」是一种常见的技巧,这是因为早期的游戏的调色板有限,甚至只有单色的屏幕,颜色之间交错,能产生平滑感。

甚至能够在 CRT 显示器或者高分辨率的 LCD 显示器下调出新的颜色,比如红色和绿色能调出黄色。知名 FC 游戏《超级马力欧兄弟》里也能看到抖动创造出的高光和阴影。

世嘉土星的半透明效果不完整,所以部分游戏是通过抖动实现的半透明,比如图中的《洛克人 X4》在世嘉土星上是不透明的网格,而 PS1 是直接的半透明效果,不过当时流行的 CRT 显示器会有一些晕染效果,实际上看起来会是半透明的效果。

这种抖动效果在现在的游戏里也能看到,比如用来表示 头发 的半透明,还有遮挡物的半透明效果,这项技术的开源实现叫做 Screen-Door Transparency

图 1:st0ven 编写的 抖动教程
图 2:单纯的红色和绿色抖动,形成的黄色。
图 3:《超级马里奥兄弟》的绿色管道截图,来自 fandom
图 4:《洛克人 X4》的截图,来自 The Sega Saturn and Transparency
图 5:《超级马力欧奥德赛》的截图,来自 Chris Wade
图 6:《CS2》的截图,来自 Ovek
图 7:Screen-Door Transparency 演示图片。

相关资料:Dithering - gametechwiki【刀哥科普】十分钟看懂世嘉土星有啥黑科技【有CC字幕】Ordered dithering - Wikipedia

#游戏 #历史 #像素艺术
游戏的纹理处理

以前的 PS1 主机,硬件对纹理处理时,没有使用现代的纹理过滤方案,比如双线性过滤,而 N64 支持双线性过滤(不完整),所以相同的游戏,在两台主机上能看到明显的差异。(图 1, 2, 3)

以现在的美学来看,可能还是 PS1 的最近邻采样比较好看,因为当今的一些复古游戏,模仿的风格往往是 PS1,而不是 N64。

之后的游戏也一直沿用双线性过滤,偶尔会有一些风格化的独立游戏,使用 xBRZ, Hqx 这样的过滤方式,直接套在屏幕上,不过这就不属于纹理处理了,而是一种后处理,真正意义上使用了其他的纹理过滤方案的大型游戏,可能是《动物森友会》。

《集合啦!动物森友会》里有 自定义设计 功能,玩家可以在 32 × 32 像素大小的画布上创作衣服、旗帜或地毯等等,虽然前作也有自定义设计,但在过去,分辨率和性能都较低,所以只需要双线性过滤即可,但 Switch 是以 1080P 分辨率为基准开发游戏,在其他材质都高清化的时候,如果衣服仍然是 32 像素的材质就太糟糕了,所以任天堂开发部门选择了其他的纹理过滤方案。

luna 比对了多种不同的纹理过滤方案,最后发现这与 xBRZ 在 4 倍的情况相同,可能说明任天堂开发者重新实现了这个算法,以绕过 xBRZ 的 GPLv3 开源协议。

备注:之所以称 N64 的双线性过滤是不完整,是因为完整的过滤器需要四个点的值,而 N64 只能使用三个点

图 1, 2, 3:Squid Boi Gaming 制作的 Megaman Legends 图形对比视频
图 4:在《集合啦!动物森友会》中,像素化的图案会被过滤得「自然」。
图 5:各种纹理过滤方案
图 6:在《集合啦!动物森友会》中重现一些线条。

#游戏 #原理 #像素艺术
一些补充想法:由于 Spirit 不支持透明度通道的颜色,只有单纯的透明,所以除了像素艺术,其他的照片、绘图大概效果都不会很好吧。

像是 这样的图片,即使是单帧,效果也会挺有趣吧,只要在配置文件里设置一下图片座标,让部分图像覆盖到窗体就好。

#像素艺术
Spirit

这是一款能让游戏中的精灵在窗口上方动起来的软件,但是使用了易语言,所以 virustotal 的检测报告有超过三分之一认为这是恶意软件……

软件自带的精灵(主题)不够精致,所以我找了找素材,发现了 Sunnyside World 这套游戏素材,都是像素画风,而且非常精致。

这里使用了 ShareX 自带的图像分割器,然后使用 xnconvert 批量的对图片进行处理,因为 Spirit 不支持带有透明度的 png 图片,而是将 #ffffff 当作透明,所以需要使用工具将透明度的部分替换成 #ffffff,然后是将图像大小变更为 200% 以上,因为像素艺术在现在高分辨率的现在太小了。

还有一个问题,就是 Spirit 实际上是播放一张张图片,所以帧速低的动画会不跟鼠标,然后我就增加大量相同的帧,就像动画「一拍三」原理一样,让鼠标跟手了。

Spirit 官网地址 | 我转换的主题下载 | #软件 #主题 #工具 #像素艺术
最知名的《东方Project》像素艺术

从 2017年 与 2022年的 /r/place 活动与夏日绘板,都能找到风格相似的像素艺术,如图所示。

这是艺术家 chopper 的作品,最早能追溯到 2007年的 《ぱちゅコン! Defend the library!》这款同人游戏,2009年,chopper 将素材发送到了 pixiv,随后 夜夢 参考了这些风格制作了大量的动态鼠标指针,比如 博丽灵梦 的。

《东方Project》的像素艺术除了 chopper 的之外,atwiki 也收集了一些其他作者的作品。

#考据 #艺术 #历史 #主题 #东方 #像素艺术
/r/place 博物馆

这是 Reddit 在 2017 年的愚人节活动,内容是一个自由编辑的公共画板,每个账号只能改变一个像素的颜色,随后冷却 5 ~ 20 分钟。所以较大影响力的社群在画布上留下了梗图、像素角色、旗帜和世界名画等。

当然,因为包含的元素非常多,所以可能没有人能认识所有的图像,以及背后参与编辑战团队的故事。所以 Roland Rytz 创建了 The /r/place Atlas 百科网站,通过互动地图的方式,标注了大部分图像的名称简介等。

除此之外,还有人保存了 4.6 GB51.9 GB 的图像历史记录,部分 Youtube 上面的延迟摄影画布,就是来由上面的图像数据制作的。

#存档 #梗 #网站 #像素艺术
使用了 xBRZ、Hqx 缩放算法的游戏们

xBRZ、Hqx 缩放算法主要用在模拟器上,主要特点是通过形状来抗锯齿。常见的图像缩放算法有近邻取样插值与线性插值,前者只适合二倍、三倍长宽的等比例放大,后者会使图像变得模糊。而 xBRZ、Hqx 缩放算法可以使图像的边缘保持锐利(不模糊),画风独特。

Sokpop Collective 是专注于开发各种有趣画风的游戏公司,大部分游戏都有鲜明的美术特点。该公司有三款游戏使用了 xBRZ 或者 Hqx 缩放算法,如视频所示。第一款是 Popo's Tower ,这款游戏除了使用缩放算法,还使用了景深以及一些模糊的滤镜,使游戏有更多的质感。

第二款是 Pocket Watch ,这是一款 2D 游戏,所以体验上更接近 FC、GBA 模拟器使用缩放算法的质感。

第三款是 Kochu's Dream ,画面很干净,设计上也有 N64 上的《塞尔达传说 时之笛》的复古感。

但要具体分清这些游戏使用了 xBRZ 或者 Hqx 缩放算法,估计只能做实验,或者向开发者来求证了,因为这两个算法相似,仅在宽度为 1 的同色像素上有不同的处理方式,也可能开发者在原有的算法基础上重新制作了新的缩放算法。

---

2023年7月20日 更新:想起来还有一款游戏,是 3DS 和 NS 版《动森》,里面自定义是像素画,但是会经过某种算法让,让画面变得平滑。(有时会有副作用,但通常效果不错)

#游戏 #原理 #艺术 #像素艺术
Sayclub Avatars 风格以及发展简史

2000年11月,韩国 Sayclub 公司开始首次销售一种可自定义的「虚拟形象」,这为公司带来了巨大的收入。

2003年1月24日,QQ秀上线试运营,上线半年后,总收入就达到了 2500 万元。

因为 Avatars 带来了巨大的收益,所以许多韩国游戏开始将 纸娃娃系统 作为必要的系统之一,最后到现在,纸娃娃系统甚至成为了一些游戏的主要收入来源。

现在部分使用像素风格创作的 Avatars 有时就被叫做 Sayclub 风格。而元宇宙 (Metaverse) 可能就会是 Avatars 的完全形态。

#游戏 #历史 #艺术 封面图 #像素艺术
关于出现在一些 booru 画廊 等地方的猫娘计数器 [图1] 的相关信息:

2003 年,KK'sWS 绘制了最原始的版本,其名为 ねこみみかうんた 。[图2]

大概是因为传播广泛,成为了当时的日本 Anime 爱好者网站的流行元素,所以绘制「萌计数器」的人多了起来,有一个网页收集了许多这样的「萌计数器」 —— 萌えカウンターリンク集

因为 KK'sWS 分享的素材中有无数字的空白版,所以 八ツ墓 制作了基于 伪香菜 的一套萌萌的「人格」[图3] —— ゴースト時計 "猫刻"

Moe-counter —— 一个网页开源的游客计数器,主要使用了 KK'sWS 绘制的素材。

#考据 #历史 #动画 #像素艺术
 
 
Back to Top