畫質升級指南 RETRO UPSCALE GUIDE · HK

整數倍縮放與非整數倍縮放對像素藝術還原的影響

解釋整數倍縮放的數學原理,以及為何非整數倍縮放會導致像素藝術在液晶屏幕上出現抖動與偽影,並討論填滿屏幕與像素完美之間的取捨。

240p 到 4K 的數學:整數倍縮放原理決定像素的命運

將一部任天堂紅白機(Famicom)的 240p 訊號接上 4K 電視,如果直接讓電視自己放大,畫面上的馬里奧會出現大小不一的方格,水平線條會閃爍,整張臉像在抖動。問題根源是電視的非整數縮放。解決方案是「整數倍縮放原理」:每個原始像素被複製為整數個輸出像素,確保所有像素大小完全一致。

240p 不是現代電視標準。大部分電視會誤判它為 480i,然後用非整數比例強行拉伸。結果是同一條直線,一部分像素被放大 3.2 倍,另一部分放大 3.8 倍,閃爍與偽影由此產生。專業升頻器如 OSSC 或 RetroTINK 4K 所做的事情,就是用整數倍縮放繞過這個錯誤。

整數倍縮放原理:240p 到 4K 的完美鏈條

整數倍縮放(Integer Scaling)的數學非常簡單:輸入解像度乘以整數,等於輸出解像度。以 240p 為例:

  • 2x = 480p
  • 3x = 720p
  • 4x = 960p
  • 5x = 1200p
  • 6x = 1440p
  • 9x = 2160p(即 4K)

240 × 9 = 2160,4K 屏幕是 240p 的完美整數倍。使用 RetroTINK 4K 設定 Integer Scaling (Sharp Pixels) 模式,輸出 2160p,每個原始像素被複製為 9×9 個像素,像素網格整齊劃一,沒有模糊,沒有閃爍。

非整數縮放(Non-integer Scaling)則不然。如果電視將 240p 強拉到 1080p,倍率是 4.5 倍(1080 ÷ 240 = 4.5)。有些掃描線被放大 4 條像素,有些被放大 5 條,像素大小不一致,畫面就會出現水平抖動。這種現象稱為像素抖動(Pixel Jitter),是非整數縮放最常見的偽影。

非整數縮放像素抖動:為甚麼你的舊遊戲在閃爍

非整數縮放像素抖動(Non-integer Scaling Pixel Jitter)的物理原因是液晶屏幕的固定像素網格無法分割。當倍率不是整數時,部分原始像素必須分配到更多或更少的輸出像素。這個分配在每條掃描線上都可能不同,導致水平線條的粗細在畫面滾動時不斷變化。

用 240p Test Suite 的格線圖案測試最清楚:整數倍縮放下,所有格線寬度一致;非整數倍下,格線一條粗一條幼。畫面移動時,粗幼線會交替位置,造成視覺上的閃爍。OSSC 的 Line3x(720p)和 Line5x(1200p)是純整數倍線,延遲少於 0.1 毫秒,像素時鐘精度與原始主機同步,不存在這種問題。

電視的升頻引擎通常使用雙線性插值(Bilinear Interpolation)來填補非整數倍的空隙。這會進一步模糊像素邊界,破壞像素藝術(Pixel Art)的硬邊。像素藝術還原(Pixel Art Restoration)的核心要求就是保持每個像素的獨立邊界。整數倍縮放是唯一能做到這一點的方法。

整數倍縮放黑邊問題:填滿屏幕還是保持像素完美

黑邊從何而來

整數倍縮放黑邊問題(Integer Scaling Black Border Problem)是懷舊玩家最常見的取捨。以 240p 輸入、1080p 輸出為例:240p 的 4x 整數倍是 960p,不是 1080p。如果你的屏幕是 1080p,960p 的畫面上下會留下黑邊。等比例縮放(Aspect Ratio Correction)會拉伸至滿屏,代價是非整數倍導致的像素抖動。

在 4K 屏幕上,這個問題幾乎消失。240p 的 9x 整數倍正好是 2160p,完美填滿,沒有黑邊。480p 的 4x 整數倍是 1920p,接近 4K 的 2160p,上下僅有少量黑邊,對多數玩家來說可以接受。

如果你的電視是 1440p 屏幕,240p 的 6x 整數倍等於 1440p,也是完美填滿。RetroTINK 5X-Pro 最高輸出 1440p。這不是巧合:1440p 對 240p 和 480p 都是友善的整數倍目標解像度。

整數倍縮放與等比例縮放的選擇

區分方法是看你的優先級:

  • 整數倍縮放:像素大小一致,畫面銳利,可能有黑邊。
  • 等比例縮放:畫面填滿屏幕,比例不變形,但像素大小不均,可能閃爍。

對像素藝術為主的遊戲(紅白機、超任、SEGA Saturn 的 2D 遊戲),整數倍縮放是唯一正確的選擇。對 3D 遊戲(PlayStation 2、Dreamcast),非整數縮放的模糊有時能掩蓋鋸齒,但延遲和閃爍仍是代價。

等比例縮放取捨:何時應該放棄整數倍

升頻器不支援整數倍時

等比例縮放取捨(Aspect Ratio Correction Trade-offs)不是非黑即白。如果你的電視不支援整數倍縮放,或者你用的 mClassic 這類沒有整數倍模式的升頻器,你只能接受非整數縮放。mClassic 的輸出解像度在 60Hz 下最高為 1440p。它不保留原始像素網格,而是用後處理反鋸齒來平滑邊緣。這對 3D 遊戲效果不錯,對像素藝術則是災難。

輸入延遲的代價

另一個取捨是輸入延遲(Input Lag)。OSSC 的整數倍線延遲少於 0.1 毫秒。但如果你讓電視再作一次非整數縮放,電視的遊戲模式延遲可能增加 10 至 30 毫秒。理想方案是讓升頻器做整數倍縮放,然後電視以點對點(1:1 Pixel Mapping)模式顯示,避免電視介入。

部分電視的「點對點」模式名稱不同,可能叫「Just Scan」、「Full Pixel」或「1:1」。找不到這個設定,整數倍縮放的黑邊會被電視再次拉伸,抵消升頻器的努力。

4K 屏幕是整數倍縮放的最後一塊拼圖

4K 解像度的先天優勢

4K 解像度(3840×2160)對懷舊遊戲極度友善。240p 的 9x、288p 的 7.5x(非整數,但接近)、480p 的 4.5x(非整數)、720p 的 3x, , 只有 240p 是完美整數倍,但其他解像度的誤差也比 1080p 時代小得多。RetroTINK 4K 的 Integer Scaling (Sharp Pixels) 模式可以做到 1x 至 12x 的整數倍縮放,配合 CRT 模擬濾鏡(如掃描線濾鏡和像素網格),在液晶屏幕上還原 CRT 螢幕的視覺效果。

電視設定是成敗關鍵

最常出錯的地方是:即使你用 RetroTINK 4K 做了整數倍縮放,如果電視的「畫面填滿」設定是開啟的,電視會把黑邊裁掉或再次拉伸。關閉電視的所有畫面縮放功能,確保升頻器的輸出以點對點方式顯示。做不到這一點,整數倍縮放的努力就白費了。

Common Questions

為甚麼我的紅白機在 4K 電視上畫面會閃爍?

因為電視將 240p 誤判為 480i,然後用非整數縮放(例如 4.5x)強行拉伸。整數倍縮放(如 9x = 2160p)才能消除像素大小不一造成的抖動。

整數倍縮放一定會留下黑邊嗎?

不一定。當輸出解像度是輸入解像度的整數倍時,畫面可以完美填滿。例如 240p 的 9x 等於 4K(2160p),無黑邊。

mClassic 能做到整數倍縮放嗎?

不能。mClassic 輸出固定 1440p 或 4K,不保留原始像素網格。它適合 3D 遊戲的反鋸齒,但不適合像素藝術還原。

OSSC 和 RetroTINK 5X-Pro 的整數倍縮放有甚麼分別?

OSSC 是純線性倍線(Line2x 至 Line5x),對電視兼容性要求高。RetroTINK 5X-Pro 有適應性去交錯和更多濾鏡,接 PS2 這類 480i 主機時更穩定。