點燈人之夜

暮色降臨在石造港灣小鎮,你就是這裡的點燈人。攜著手中的火焰穿過鵝卵石小巷,趕在天色全黑前點亮全部十盞街燈——每盞被點亮的燈都會成為真實的動態光源,光暈灑落在鵝卵石上。若你在黑暗中被強風吹襲,火焰便會熄滅;可在任何一盞已點亮的街燈或燈芯屋的火盆處重新點燃。整個遊戲都建立在引擎的 2D 光照系統之上:每一個精靈都是以 Blender 算圖並搭配對應的法線貼圖,讓燈光能在鵝卵石的凹凸、大衣的皺褶與小屋的石材上即時流動。

立即遊玩

WASD/方向鍵移動 · E 或空白鍵點燈 · 觸控:左搖桿 + 右按鈕 · 點一下開啟音效 · 遊戲資料 2.8 MB(另加引擎 wasm,首次載入後即快取)

▶ 開始遊玩

概念即契約

由 AI 製作,並以真實的 Godot 4 引擎匯出。此作品最初是一幅概念畫,畫中每個被命名的元素之後都被製作成真實的素材,每一輪審核都會將實機成果與這幅畫作對照評判。

AI 概念繪圖
概念關鍵美術圖——本作品審核所依據的基準
概念提示詞

俯視三分之四視角下的迷你石造港灣小鎮黃昏景象,蜿蜒的鵝卵石小巷,石板屋頂的石造小屋窗戶透出溫暖燈光,鑄鐵街燈的琥珀色火焰在鵝卵石上灑落溫暖光暈,一名身穿油布外套的小小點燈人身影提著黃銅燈桿,深靛紫色的暮色天空。

點燈人之夜在引擎中實機運行
同一座小鎮在引擎中實機運行——兩盞燈已點亮,手中火焰正照亮點燈人的家

算圖兩次,真實點亮

點燈人、六棟小屋,以及每個道具與地面圖磚都在 Blender 中建模並從遊戲鏡頭角度算圖兩次——一次算色彩,一次編碼鏡頭空間的表面法線——並以 CanvasTextures 形式輸出,因此全部十盞街燈、手持火焰與火盆都是真正的 PointLight2D 光源,其光線會沿著鵝卵石與外套的紋理起伏流動。小屋則具有 LightOccluder2D 多邊形,能投射出真實的 2D 陰影。

點燈人的行走幀動畫與其法線貼圖成果並列
已上線的行走幀動畫(上)與其鏡頭空間法線成果(下)——第二種算圖才是燈光實際照亮的依據

小巷、粒子效果與波光粼粼的水面

小巷是一個 TileMap,鵝卵石與草地交界處採用 47 種變體的團塊自動貼圖組,並以邊緣鎖定、內部重新隨機化的無縫變體圖磚打破重複感。強風、燈焰、餘燼爆發、螢火蟲與煙囪炊煙都是 GPUParticles2D;港灣水面則是一種著色器,其滾動法線貼圖來自以 Blender 烘焙的高度圖,因此燈光會在水面波動上閃爍。

已上線的圖磚圖集,內含 47 種團塊自動貼圖變體
已上線的圖集:八個基礎圖磚(上排)與自動貼圖器可選用的 47 種鵝卵石覆蓋草地團塊變體,漫射貼圖成果

取自四個真實方向的行走動畫

行走循環動畫是以 Blender 骨架綁定後,從四個真實方向算圖而成——沒有鏡像幀,因此法線貼圖能保持物理正確性。環境音與鐘聲取自平台音訊系統中的取樣樂器。有一項引擎特性被特別保留於紀錄中:2D 法線貼圖在未給予每個光源相對於畫布平面的高度前,會呈現全黑狀態。

取自四個真實方向算圖而成的行走循環動畫
四個真實方向各六幀的行走動畫——沒有鏡像幀,因此每張法線貼圖都能保持物理正確性

誠實的實測數據

本實驗室是在此主機的軟體渲染器(無 GPU)上使用 Playwright 進行審核,因此下方的影格率數據是最差情況——真實硬體以相容渲染器運行時會快得多。

量測方式測試條件
遊戲資料 (.pck)2.81 MB正式匯出版本 — 美術資源 2.0 MB + 取樣音訊來源 1.1 MB
引擎負載檔 (.wasm)35.4 MBGodot 4.3 網頁執行環境,固定成本,首次載入後由瀏覽器快取
已驗證完整回合10/10 盞燈已點亮,獲勝分數 2080每輪審核皆採用 AStarGrid2D 自動導航,並執行強風熄燈與重新點燈演練
畫面上的動態光源數量12 個投影光源 + 13 個窗戶光暈外加隨身攜帶的手持火焰;全部作用於法線貼圖精靈之上
審核回合初版規劃 3 · 正式美術 5反覆「修正全部後再審核」直到某回合一無所獲,再進行一次確認
審核影格率約 1–2 fpsSwiftShader 軟體 GL——最差情況;透過物理步驟追趕,遊戲時間仍保持真實

真實的引擎功能,靠實測換來

法線貼圖 Light2D

每個精靈皆以色彩貼圖與鏡頭空間法線貼圖成對輸出為 CanvasTexture,讓燈光能真實地沿著鵝卵石凹凸與外套皺褶流動。

遮蔽陰影

六棟小屋皆具有 LightOccluder2D 多邊形;燈光光暈能正確地被石牆遮擋。

47 種團塊自動貼圖

一個 TileMap,其鵝卵石與草地交界處透過 47 種遮罩驅動的團塊變體來呈現,並以邊緣鎖定的無縫替代版本打破重複感。

6 種 GPU 粒子效果

燈焰、餘燼爆發、強風、螢火蟲、煙囪炊煙與手持火焰——全部皆為 GPUParticles2D。

法線貼圖水面

一種畫布著色器,滾動播放以 Blender 烘焙的高度圖法線,讓每盞燈都能在港灣水面波動上閃爍。

路徑規劃自動導航

一個 AStarGrid2D 代理程式會在每次審核時完整地遊玩整局——點燈、熄滅、重新點燃、獲勝。

行走速度 230 像素/秒黃昏時長 170 秒 暖光半徑 170 像素互動半徑 90 像素 光源高度 72 像素47 種團塊遮罩 64 像素圖磚方向鍵 + WASD + 觸控 6 幀行走 × 4 個真實方向取樣鐘聲 + 環境音
由 BuildMidas Godot 實驗室從頭到尾打造——由 AI 智慧代理構思、建模、模擬並驗證。同一套流程也支援 AI 遊戲建構器