← Projects

作品說明

專案概要

  • 遊戲類型:第一人稱敘事解謎遊戲
  • 開發引擎:Unreal Engine 5
  • 開發時期:大學專題前期作品
  • 團隊規模:5 人
  • 開發平台:PC

專案背景

《彩影紀事》是一款結合敘事與解謎玩法的第一人稱 3D 遊戲。玩家扮演一位先天色盲患者,在高中畢業後意外獲得一台能看見色彩的神秘相機,並透過相機穿梭於童年回憶之中。

玩家會在探索與解謎的過程中,逐步面對主角與家庭、友情及自我認同有關的心結,最後找回失去的色彩與自信。畫面從受限的色彩逐漸恢復,也同步呈現主角的心理成長。

設計目標

敘事解謎遊戲經常依靠文本與環境敘事傳達故事,因此我希望進一步將角色設定直接融入操作與關卡機制,讓劇情不只是被閱讀,而是能透過玩家的視覺與互動被親自感受。

專案以「色盲」作為核心主題,讓玩家在受限的視覺世界中逐步找回色彩,並以視覺變化推動情緒,使遊戲機制、敘事進度與主角成長互相呼應。

核心玩法設計

相機解謎系統

整個遊戲圍繞一台特殊相機展開。玩家平時以色盲視角探索場景;舉起相機後,便能看見色彩、發現隱藏資訊並觸發特殊解謎機制。相機不只是工具,也是玩家進入回憶與理解主角經歷的重要媒介。

五章漸進式關卡

遊戲共有五個章節,每一章都加入不同的互動方式,避免解謎流程重複:

  • 第一章-教學關卡:拼圖、密碼鎖互動與取得相機
  • 第二章-童年回憶:拍照蒐集物品與貼紙簿拼貼
  • 第三章-家庭關係:家具擺放與視覺錯位解謎
  • 第四章-友情回憶:透卡攝影與場景構圖互動
  • 第五章-結局關卡:敘事收尾與行李整理互動

核心技術系統

Post Process Material 色彩系統

為模擬主角的色盲視覺,並讓世界色彩隨劇情逐步恢復,我使用 Unreal Engine 的 Post Process Volume 與 Post Process Material 建立多段色彩濾鏡。

系統會依照劇情進度調整飽和度、色彩權重與整體視覺表現,使玩家不需要額外文字說明,也能直接從畫面變化感受到主角心理與感官狀態的轉變。

相機系統

我設計並實作相機舉起與放下、拍照、電量限制、特殊濾鏡及解謎觸發等功能,使相機成為串連探索、敘事與關卡機制的核心互動媒介。

存檔與回顧系統

存檔系統支援關卡與劇情進度記錄、中途離開後繼續遊玩、CG 圖鑑回顧,以及已解鎖章節重玩。資料會保存在玩家本機,讓玩家能自由回顧劇情與不同章節。

CG選單

互動物件架構

專案中包含家具、貼紙、拼圖、相框、任務物件與相機道具等大量互動內容。開發初期每種物件皆獨立實作,隨著內容增加,重複功能與維護成本也快速提高。

後期我將系統重構為共用的 BaseItem 父類別,並由 Furniture、Sticker、PuzzlePiece、Collectable 與 QuestItem 等子類別繼承,統一管理互動事件、拾取流程、顯示資訊及任務判定。storge

技術挑戰

專案中途重構

這是我第一款完整的大型遊戲專案。開發初期較偏向想到功能就直接製作,後來逐漸出現系統耦合、功能重複與維護困難等問題。

我重新規劃整體架構,建立 BaseItem 系統、統一互動流程及可重複使用元件。重構雖然增加了中期開發成本,但也讓專案後期的功能製作與維護效率明顯提升。

色彩恢復與角色成長

為了讓玩家感受到主角逐漸走出陰影,我將劇情進度與多段 Post Process 濾鏡綁定。隨著故事推進,世界的色彩也逐漸恢復,讓角色成長能以視覺方式被玩家直接感受。

解謎玩法多樣性

為降低解謎遊戲容易產生的重複感,每個章節都設計了不同機制,包括拼圖、貼紙、視覺錯位、家具擺放與透卡拍攝,使五個章節擁有各自的特色與節奏。

使用技術

  • Unreal Engine 5、Blueprint
  • Save Game System、Widget Blueprint
  • Post Process Material
  • 物件繼承與資料結構設計
  • 關卡、任務、UI、互動與相機系統

專案成果

專案完成五章完整劇情、相機解謎、存檔、CG 回顧、多種解謎玩法與完整遊戲流程,並於校內展覽正式展出。

反思與收穫

《彩影紀事》是我第一款真正完成並公開展示的大型遊戲專案,也是我從「會做功能」開始轉向「思考系統架構」的重要轉折點。

開發初期因缺乏架構規劃,許多功能都是直接實作後再逐步修正。這雖然增加了不少成本,卻也讓我第一次真正理解「功能完成」與「系統設計完成」是不同層次的工作。

透過這次專案,我學習了物件繼承、Base Class 管理、系統模組化、存檔資料規劃與 Post Process Material 開發,也更加重視前期架構對後續維護與擴充的影響。

未來改進方向

  • 建立更完整的互動物件架構
  • 導入 Data Driven 設計
  • 製作擴充性更高的任務系統
  • 建立可配置、可重複使用的解謎框架