HD 美術包可以按需安裝,遊戲中可以隨時切換 HD 和原版畫面。這篇按資源類別介紹製作過程,包括試過的方法、遇到的問題,以及圖做好之後如何接回遊戲。下面的對比圖都是左邊原版(按畫素放大)、右邊 HD。
各類資源採用的工具不同,但有幾個共同做法:
- 構圖以原版為準。 AI 重畫和本地放大的結果都要配準回原圖,保留原版的輪廓、位置和大小。
- 替換髮生在畫面層。 遊戲邏輯、存檔和判定保持原樣,原版與 HD 可以隨時切換。
- 部分資源在執行時生成。 視窗邊框、BANPRESTO 標誌和 GAME OVER 字樣直接從玩家的 ROM 生成,這些圖片無需隨 HD 包分發。
四種接入方式
製作好的資源通過以下四種方式接入遊戲:
| 方式 | 做法 | 用在 |
|---|---|---|
| 整張繪製 | 原版照常把圖切成小塊繪製;宿主識別出對應圖片後,用一整張 HD 圖替換這些小塊,保持相同的繪製時刻和層次 | 頭像、場間背景、戰術地圖、標題、機體與戰鬥精靈 |
| 貼圖替換 | 按 RT64 渲染器的貼圖雜湊,把某張小貼圖換成高畫質版。雜湊可以直接從 ROM 離線計算 | 世界地圖地表、宇宙物件、對話方塊與 HUD 邊框、地圖機體圖示、戰鬥地面 |
| 原生模型 | 識別原版的 3D 顯示列表,改為繪製重新制作的模型 | 世界地圖上的艦船、地標和地點標記 |
| 原生文字 | 將原版圖片中的文字按當前語言重新排版 | 標題選單、章節標題卡、序章、結局、製作人員名單 |
整張繪製主要用來處理拼縫。原版的大圖由幾十塊小貼圖拼成,逐塊替換容易在接縫處出現差異,合成一張繪製就能避開這個問題。
人物頭像

左:原版 96×96 右:HD 768×768

另外 8 張頭像,每組左原版、右 HD
- 原版:300 張 96×96 左右的 64 色頭像。
- 生成:使用阿里雲通義千問 qwen-image-3.0。每次把 4 張頭像拼成 2×2,鋪灰底、按畫素放大 6 倍後送入模型;一共 75 次請求,花了大約 15 元。也試過綠幕背景和 3×3 拼圖:前者會讓模型把每格都放大,後者每格尺寸太小,效果都不合適。
- 對齊:模型生成後,每格會有 3–10% 的縮放偏差,平移最多 7 畫素。因此每格都以 32 畫素的塊做最小二乘仿射配準,再重取樣到原圖的 8 倍。
- 摳圖:輪廓限制在原版輪廓 ±1.5 個原畫素以內。生成後未畫到原圖邊框的頭像有 130 張(共 300 張),按邊緣顏色補齊。最終輪廓與原版的重合度(IoU)中位數為 0.991。
- 邊緣處理:早期透明畫素存的是黑色,而渲染器做雙線性取樣時不預乘透明度,導致頭像邊緣出現黑邊。後來將透明畫素填成最近的實色,並分別縮放顏色和透明度,解決了這個問題。
- 結果:304 張 768×768,整張繪製。
場間背景

上:整張,左為原版 320×240,右為擴充到 16:9 的 HD;下:同一處放大 5 倍,左原版、右 HD

另外 4 張場間背景(只取 4:3 部分),每組左原版、右 HD
- 原版:8 張 320×240,每張有亮、暗兩套調色盤。
- 生成:使用通義千問 qwen-image-3.0-pro 重畫,配準到 1920×1440。暗版通過兩套 ROM 調色盤擬合的 17³ 顏色查詢表,從亮版轉換得到,誤差為 1.2–2.6 級;相比之下,簡單乘 0.75 的誤差為 3–23 級。
- 寬屏:再用阿里雲通義萬相 wanx2.1-imageedit 向兩側擴圖,得到 2560×1440 的寬屏背景。
- 結果:16 張加一張星空,整張繪製。
劇情世界地圖

左:原版歐洲(地中海一帶) 右:HD

中亞(裡海一帶),左原版、右 HD

宇宙區域的地球與月球,每組左原版、右 HD
- 原版:64×64 的 4 位色地表貼圖,分地球全圖、歐洲、中亞、北美和宇宙。
- 生成:用千問試畫過幾輪,整體觀感不理想,最終四塊地表都用 OpenAI 影像模型(通過 Codex)重畫。先畫整個區域作為底圖,再按 3:2 的視窗逐塊補充細節。拼接時,離視窗內邊越遠的畫素權重越高,海岸線則按原版的陸海分佈裁切。
- 拼接修正:最初把拼圖行距算成了 611,實際應為 600,由此產生了一道接縫;海岸邊緣也出現過一圈紫色,分別修正了行距並清理邊緣。
- 近景:劇情定位到某個地點時,鏡頭會拉得很近,原圖 1 畫素佔 19–30 個螢幕畫素,因此又為 19 個常用地點單獨繪製了近景視窗。
- 結果:213 張 512×512 貼圖(原版 8 倍),通過貼圖替換接入。宇宙部分用千問製作了 27 張,星空背景採用整張繪製。
世界地圖上的艦船、地標與標記
劇情世界地圖上飛行的艦船、太空中的地標,以及標出地點的黃色菱形,原版都使用簡單的 3D 模型。HD 中為它們重新建了模型。下面是 0.3.5 的實機畫面:在同一時刻先擷取 HD,再切換到原版截圖。

每組左為原版、右為 HD。從左到右、從上到下:古蘭·加蘭、戈拉翁、岡多爾、玫瑰人生號、巴魯智、天秤座

萬年和平號、米迪亞、奧特穆拉、亞爾比翁、阿卡馬、擬·阿卡馬、拉·凱拉姆
- 艦船:13 艘艦船參照官方設定,在 Blender 中通過指令碼重新建模,每艘 8 千到 2 萬多個面(原版為 4 到 330 個面)。航跡改為著色器繪製的光帶。
- 名牌:天秤座、巴魯智等模型的名牌按當前語言重新排字,上圖擷取的是日文介面。

上:阿克西斯;下:月神5號與它的名牌。左原版、右 HD
- 地標:阿克西斯和月神5號也重新建模。連同 13 艘艦船,共 15 個模型。

標出地點的黃色菱形,左原版、右 HD
- 地點標記:保留原版雙四稜錐的外形,將稜角倒圓,換成金色反射材質;外圈的虛線環由著色器繪製。
- 抗鋸齒:這些模型和整個場景一起使用 4 倍多重取樣(MSAA)繪製,減少邊緣鋸齒。
- 接入:以上資源採用原生模型方式接入,HD 包使用的是重新制作的模型資料。
戰術地圖

第 20 張地圖的城區。左:原版按畫素放大 右:HD 底圖

從左到右:原版、HD 底圖、色號圖(按原版調色盤顯示)。遊戲執行時用色號圖和當前調色盤給底圖調色,讓水面流動、夜間地圖變色

太空殖民地的 8 幀動畫,左原版、右 HD
戰術地圖是工作量最大的一類:158 條記錄中,有 109 張主圖和 22 張變體,共 131 張在用。
- 生成:原版放大 4 倍後,大多超過千問 2048×2048 的上限,因此底圖全部使用 OpenAI 影像模型繪製。先畫 109 張整圖,再補充 772 個細節視窗,每個視窗對應原圖 384×256,按網格對齊並逐格檢查;變體另畫 50 個視窗,共製作了 900 多張圖。
- 水和光:原版通過調色盤循環表現水面和燈光,夜戰還會整體更換調色盤。為保留這些變化,水和邊界不直接畫進底圖,而是另外製作一張 4 倍的色號圖:只記錄原版的顏色編號,用 MMPX 畫素放大。執行時根據當前調色盤與參考調色盤的差值給底圖上色,水面、燈光和夜戰配色就能隨原版調色盤變化。
- 殖民地:太空殖民地使用單獨的 8 幀動畫,另畫一張序列圖。
- 結果:131 張底圖(如第 20 張為 1792×2048),各配一張色號圖,整張繪製。
機體立繪

左:原版 96×96 右:HD

另外 8 臺機體,每組左原版、右 HD
- 原版:332 種機體姿勢,多數為 96×96 或 128×128。
- 放大方式:試過用千問 Pro 重畫,部分機體會被版權過濾攔下,生成結果也會改動機體細節。後來在本地比較了 14 個放大模型,選用 4x-UltraSharpV2 和 4x-PixelPerfectV4 各取一半混合:兩趟放大到 16 倍,再縮至 8 倍母版,透明度單獨經過模型處理後清理邊緣。
- 結果:發布時使用 6 倍版本,長邊不超過 1024 畫素。戰前確認、機體能力等頁面直接使用這套圖,戰鬥演出中也用它整幀替換原版精靈。原版有 134 個姿勢採用映象儲存,通過頂點資料判斷翻轉方向,使 HD 圖朝向與原版一致。
地圖機體圖示
![]()
左:原版 16×16 右:HD 64×64
![]()
同一個 HD 圖示的四種陣營顏色
地圖上的機體圖示只有 16×16,處理時希望提高辨識度,同時保留畫素感。
- 流程:MMPX 放大 2 倍 → 4x-PixelPerfectV4 → 硬量化回 32×32,只使用原版的顏色編號(在 CIELAB 色彩空間中查詢最接近的顏色)→ 再用 MMPX 放大 2 倍,得到 64×64 的色號圖。
- 其他嘗試:千問會改動形狀,平滑重繪會失去畫素感;還試過抖動、xBRZ(GPL 授權)、Scale4x 等方法,最終採用了上面的流程。
- 陣營顏色:顏色由調色盤決定,每個圖示分別生成四個陣營版本,去重後為 1256 張,通過貼圖替換接入。
戰鬥演出
戰鬥畫面由多層資源疊成,各層的繪製方式不同,HD 的處理方式也分別設計。

0.3.5 實機畫面(神威鋼彈對大師鋼彈,港口)。每組左原版、右 HD。上:機體使用 HD 立繪,海面和樓群使用高畫質貼圖;下:招式特效保留原版
畫面由哪幾層組成
| 層 | 原版怎麼畫 | HD 怎麼處理 |
|---|---|---|
| 天空、星空 | 32×32 的小塊精靈鋪滿,按 320×240 循環 | 保留原版 |
| 地面 | 3 塊×3 層 3D 模型,貼圖走渲染器 | 1419 張貼圖換成 4 倍 |
| 機體 | 圖集裡的零件按零件表疊成一幀 | 整幀換成 HD 立繪 |
| 機體的額外圖(殘影、變形、換色) | 同上 | 推導或重畫,196 幀 |
| cut-in 特寫 | 同上 | 本地放大,臉太小的重畫;308 幀(去重 208) |
| 武器、道具 | 同上 | 本地放大;431 幀(去重 394) |
| 招式特效、爆炸、速度線 | 精靈加調色盤動畫 | 保留原版 |
| HP 窗、對白框的邊框 | 貼圖切片 | 代碼重畫(見下文「邊框」) |
機體、額外圖、cut-in 和道具在原版中使用同一種結構:一幀由圖集中的若干小塊按零件表疊成,每塊對應一個四邊形,跟隨節點矩陣移動和縮放。HD 根據場景、圖集、調色盤和幀編號識別畫面,再用一整張 HD 圖替換這些小塊,沿用原版的位置和變換。
機體

戰鬥中的機體特寫,左原版、右 HD
- 機體使用上文的 332 張 HD 立繪,與戰前確認頁共用一套資源。
- 原版有 134 個姿勢以映象形式儲存,每個零件帶有翻轉標記。通過零件頂點的地址識別映象版本,使 HD 立繪沿用原版朝向。
- 受擊閃白有兩種實現:原地改寫調色盤時,HD 圖不會跟著變色;切換調色盤資源時,對應的幾幀無法識別,會回落到原版畫面。
機體的額外圖
站姿以外,機體圖集中還有殘影、變形中間幀、換色、感應砲飛出等額外圖。逐張與站姿對齊比對後,分為六類處理:
| 類別 | 數量 | 做法 |
|---|---|---|
| 直接複用站姿 | 6 | 用 HD 立繪 |
| 整體換色或發光 | 11 | 按顏色查表從 HD 立繪換色 |
| 殘影或分解特效 | 8 | 從 HD 立繪推導,逐行估算橫向錯位 |
| 站姿加飛出的感應砲 | 2 | HD 立繪加上感應砲 |
| 局部改動(站姿上補一塊) | 47 | OpenAI 影像模型畫改動的部分,其餘用 HD 立繪 |
| 整張新畫面 | 15 | OpenAI 影像模型重畫 |

從 HD 立繪推導:殘影(シュピーゲル高达)、整體換色(大師鋼彈 S)、感應砲飛出(ν 鋼彈)。每組左原版、右 HD
- 推導:逐畫素比較原版幀和站姿。相同位置使用 HD 立繪;只改了顏色的位置,按顏色比例或查表換色;站姿中沒有的新畫素使用原圖放大,空白處保持透明。單一色調的整體發光則使用「站姿亮度 → 目標顏色」對映。
- 換色複查:部分按顏色比例轉換的結果發糊、丟失細節,後來將其中 8 張改為顏色查表:在原版幀與站姿重疊的位置,統計每種站姿顏色最常對應的目標顏色。

左:原版這一幀;中:給模型的風格參考(同配色的 HD 立繪);右:最終結果
- 重畫:62 張交給 OpenAI 影像模型處理,每張附原圖、同配色的 HD 立繪和單獨編寫的提示詞。生成後先配準,再按原幀輪廓摳成 8 倍母版。局部改動使用標記圖區分:灰色區域取 HD 立繪,紅色區域取生成稿,接縫羽化 1 個原畫素。
- 多幀動畫:先繪製其中一幀,其餘幀從這張圖推導。
cut-in

機體和大臉特寫的本地放大效果,左原版、右 HD
- 範圍:55 個特寫場景、308 幀(去重 208)。每幀按零件表渲染,裁到零件範圍,再使用與機體立繪相同的本地放大流程。
- 小尺寸面部:部分畫面中的臉只有 6–20 個原畫素,放大模型會補出與原圖不符的五官。

左:原版;中:本地放大;右:重畫。下面一組的五個人物,本地放大後五官難以辨認
- 處理方式:這裡的 cut-in 各幀由圖集裡一幅完整的畫切成零件後重新拼接,人物平移或聚攏都通過移動這些零件實現。因此先用 OpenAI 影像模型重畫圖集中的 10 幅整畫,配準摳圖後貼回 8 倍圖集,再按原版零件表的疊放順序和水平翻轉重新拼出 36 幀。

圖集裡存的整幅畫(左)與重畫結果(右)
- 細節:有一幀疊了 5 塊來自別處的眼睛補丁,每塊 15×7 畫素;重建時先略去這些補丁,再單獨補畫眼睛。大臉特寫經本地放大後與原圖較為貼合,直接採用放大結果。
武器與道具

武器與道具,每組左原版、右 HD
圖集中,站姿、額外圖和 cut-in 以外的條目歸為道具:289 個場景、431 幀(去重 394),包括步槍、光劍、盾牌、拳頭等。它們採用同一套本地放大流程,與 cut-in 放在同一個包裡。
地面

戰鬥地面貼圖。左:原版 64×64 右:HD 256×256
- 規模:424 個 3D 地面模型、1419 張貼圖。
- 離線計算雜湊:貼圖替換通過渲染器計算的雜湊識別資源。這裡按顯示列表模擬貼圖裝入 4 KB 紋理記憶體的過程,包括奇數行字序交換和調色盤複製四份,再按 RT64 的規則計算雜湊。試點時,從實機抓取的 16 個雜湊均得到復現。
- 放大:按照貼圖的環繞方式,先向外擴充 16 個畫素再放大 4 倍,以處理平鋪接縫。草、碎石等噪點貼圖放大後會帶一些筆觸感,最終保留了這一效果。
打包尺寸與當前覆蓋範圍
- 打包尺寸:僅用於戰鬥的整幀圖按原版 5 倍打包。機體在演出中縮放為 80–110%,cut-in 約為 129%;預設 4 倍內部解析度下,每個原畫素約佔 3.2–5.2 個螢幕畫素,因此選用 5 倍作為發布尺寸,8 倍母版留在本地。
- 保留原版的部分:天空和星空;依賴調色盤動畫變色的招式特效、爆炸和速度線;以及上文提到的部分受擊閃白幀。招式特效等資源還需要處理動畫變化,才能用 HD 資源替換。
邊框、標題與劇情畫面

左:原版 右:HD

標題畫面的火焰(16 塊中的 2 塊),每組左原版、右 HD
- 對話方塊和 HUD 邊框:13 片對話方塊邊框、17 片戰鬥 HUD 邊框,由代碼按原版設計重新繪製,從 16 畫素放大到 64 畫素,通過貼圖替換接入。
- 視窗邊框、BANPRESTO、GAME OVER:執行時直接從玩家的 ROM 生成。這部分使用程式處理,無需隨 HD 包提供圖片。邊框採用圓頭抗鋸齒線條,保留原版顏色編號,讓光沿邊框流動的效果繼續由調色盤控制。
- 標題 logo 與火焰:使用千問生成並鎖定配色,火焰製作成可無縫循環的 16 塊。
- 圖片中的文字:標題選單、133 張章節標題卡、序章、結局和製作人員名單,都改為按當前語言原生排版,替換原圖中的日文。
體積
0.3.5 的 HD 包壓縮後為 505 MB,解壓後約 540 MB,共 6795 個檔案。佔用最多的是戰術地圖(246 MB)和貼圖替換使用的 PNG(161 MB)。
- 整張圖片存為 JPEG(質量 92),需要透明的圖片另存一張透明度 PNG。色號圖、動畫幀和貼圖替換資源使用 PNG;RT64 支援的格式為 PNG 和 DDS。
- 機體立繪從 8 倍縮至 6 倍,因為頁面中的最大顯示尺寸約為 1000 畫素。
- 試過 BC7 紋理壓縮,但世界地圖近景會出現塊狀痕跡,因此採用了目前的格式。抽樣畫質(PSNR)為:立繪 44 dB、頭像 42 dB、地圖 41 dB。
工具與 AI 使用情況
各類資源使用的工具彙總如下:
- 阿里雲通義千問影像模型(qwen-image-3.0 / 3.0-pro):人物頭像、場間背景、宇宙物件、標題 logo 與火焰。
- 阿里雲通義萬相(wanx2.1-imageedit):將場間背景擴充到 16:9。
- OpenAI 影像模型(通過 Codex):劇情世界地圖、戰術地圖底圖,以及部分戰鬥 cut-in 與機體額外圖。
- 本地放大模型(4x-UltraSharpV2、4x-PixelPerfectV4,配合 MMPX 畫素放大):機體立繪、地圖機體圖示、戰鬥 cut-in 與道具、戰鬥地面貼圖,以及戰術地圖的色號圖。這些流程以原版畫素為基礎進行放大。
- 建模、程式繪製與排版:艦船、地標和地點標記在 Blender 中建模;對話方塊與 HUD 邊框由代碼繪製;視窗邊框和標誌在執行時從 ROM 生成;文字採用原生排版。這部分資源未使用 AI 影像模型。
AI 生成或放大的圖都以原版畫面為參考,製作後逐張配準回原版構圖。本項目為非官方粉絲作品,原作角色與美術的權利歸各自權利人所有。