画面滤镜和 GLSL 着色器
GBA 原生画面的局限
Game Boy Advance 的原始屏幕是一块反射式 LCD,240x160 像素分辨率,每个像素只有 15 位色深(32768 色),而且没有背光。在原版硬件上玩画面柔和但分辨率极低,放大到手机屏幕上会看到明显的像素块和锯齿。
MyBoy 通过 OpenGL 渲染后端和 GLSL 着色器技术,让你可以对 GBA 原始画面做后处理——加扫描线、CRT 荧光屏效果、模糊、锐化等,把老游戏的视觉质感提升到一个新层次。
切换渲染后端
进入主界面设置 → 视频 → 渲染后端,你会看到两个选项:
- OpenGL(推荐):支持所有滤镜和着色器,性能更好
- 普通渲染:在没有 GPU 的老旧设备上才能用,但没有任何画面增强
绝大多数 Android 设备都带 GPU,直接用 OpenGL 就行。
启用内置视频滤镜
在「设置 → 视频 → 滤镜」里,MyBoy 提供几种内置滤镜供一键选择:
| 滤镜名称 | 效果说明 |
|---|---|
| 无(No Filter) | 原始画面,不加任何效果 |
| 扫描线(Scanline) | 加 CRT 显示器的横线效果 |
| 平滑(Smooth) | 对像素做插值,消除锯齿但画面变软 |
| 锐化(Sharp) | 保持像素锐利,不做平滑 |
| 2xBR | 一种专门给像素游戏设计的放大算法,边缘更自然 |
| CRT | 模拟老式显像管电视机的效果 |
不同游戏配不同滤镜效果差异很大,建议每种都试一下,找到自己喜欢的组合。
自定义 GLSL 着色器
完整版支持导入自定义 GLSL 着色器脚本——这是给有技术背景的玩家用的。GBA 社区已经有几十种第三方 GLSL 着色器可以下载,比如各种风格的 CRT 效果、LCD 模拟、色彩校正等。
导入方法:把 .glsl 或 .cg 后缀的着色器文件放到手机存储的特定目录下,然后在 MyBoy 的着色器设置里选择加载。
性能注意
滤镜和着色器都是有 GPU 运算开销的。在低端设备上,开多重重滤镜可能导致帧率下降。如果发现加速功能配合滤镜时速度不稳定,先关掉滤镜再试。