前一天我完成了 PlayerHouseInteriorScene,也就是主角家的室內場景。這個場景裡已經有房間原型、玩家出生點 Entry_FromVillage、出口點 Exit_ToVillage,也有牆壁與家具的碰撞設定。
不過 Day 16 結束時,主角家室內還只是獨立場景,玩家還不能真的從村莊走進去。
因此 Day 17 的目標,是把 VillageScene 和 PlayerHouseInteriorScene 接起來,完成第一個可進入建築的雙向轉場流程。
這一天的重點不是新增 NPC,也不是做對話系統,而是先把「進屋」和「出屋」這件事跑通。只要主角家這套流程完成,之後村長家和酒館就可以用相同邏輯製作。
首先,我先確認 PlayerHouseInteriorScene 已經加入 Unity 的 Scene List。因為場景轉場是透過 SceneManager.LoadScene() 載入目標場景,如果場景沒有加入 Build Profiles 或 Scene List,轉場時 Unity 會找不到這個場景。

在場景清單中,我確認 VillageScene 和 PlayerHouseInteriorScene 都已經存在並啟用。這一步是轉場能正常運作的前提。
前面 Day 14 製作 TutorialScene 到 VillageScene 的轉場時,就曾經遇過場景沒有加入 Build Profile 導致載入失敗的問題,所以這次先檢查場景清單,避免重踩同一個坑。
接著,我回到 VillageScene,在主角家的門口建立進入室內的轉場點。這個點命名為 Exit_ToPlayerHouse,代表玩家從村莊進入主角家。

Exit_ToPlayerHouse 的位置放在主角家門口附近,也就是玩家走到門前時會碰到的位置。它本身是一個空物件,不負責顯示圖片,而是作為轉場觸發區使用。
這種命名方式也延續前面的場景規則:
Exit_To... 表示從目前場景離開,前往某個目標場景;
Entry_From... 則表示從某個場景回來後,玩家會出生的位置。
接著,我在 Exit_ToPlayerHouse 上設定轉場資料。這一步會讓它真正知道要把玩家送去哪裡。

在 Exit_ToPlayerHouse 上,我加入 BoxCollider2D,並勾選 Is Trigger,讓它成為一個觸發區,而不是會擋住玩家的碰撞牆。
接著設定 SceneTransitionPoint:
Target Scene Name = PlayerHouseInteriorScene
Target Spawn Point Name = Entry_FromVillage
這代表當玩家碰到主角家門口的 Trigger 時,系統會載入 PlayerHouseInteriorScene,並讓玩家出現在室內的 Entry_FromVillage 位置。
也就是說,玩家不是隨機出現在室內,而是會站在 Day 16 已經規劃好的進屋位置。
完成村莊進入室內的方向後,還需要處理反方向:從主角家室內回到村莊。
因此我打開 PlayerHouseInteriorScene,設定室內出口 Exit_ToVillage。

Exit_ToVillage 是玩家在主角家室內離開房間時會碰到的出口點。這個物件同樣需要 BoxCollider2D,並且勾選 Is Trigger。
它的 SceneTransitionPoint 設定為:
Target Scene Name = VillageScene
Target Spawn Point Name = Entry_FromPlayerHouse
這代表玩家從主角家離開時,會載入 VillageScene,並回到村莊中主角家門外的位置。
最後,我回到 VillageScene,建立 Entry_FromPlayerHouse。這個 Marker 代表玩家從主角家室內回到村莊後,應該出現在哪裡。

Entry_FromPlayerHouse 放在主角家門口外側一點的位置,而不是直接放在 Exit_ToPlayerHouse 上。這樣做是為了避免玩家剛回到村莊時,立刻又碰到進屋 Trigger,造成反覆進出場景的問題。
這個細節很重要。場景轉場不只是「從 A 到 B」,還要考慮玩家回來時的位置是否合理。如果出生點和出口觸發區重疊,就可能發生玩家一回村莊又被送回屋內的尷尬循環。設定完成後,我進入 Play Mode 測試雙向轉場。
測試流程是:玩家從 VillageScene 走到主角家門口,碰到 Exit_ToPlayerHouse 後,會切換到 PlayerHouseInteriorScene,並出現在室內的 Entry_FromVillage。接著玩家走到室內的 Exit_ToVillage,會回到 VillageScene,並出現在主角家門外的 Entry_FromPlayerHouse。
這次沒有另外截 17-6 和 17-7,因為轉場是動態效果,用靜態截圖很難清楚表達。用文字紀錄測試結果比較合理。
透過 Day 17 的製作,主角家不再只是村莊地圖上的一棟房子,而是成為第一個真正可以進入和離開的建築。
目前已經完成:
村莊進入主角家的轉場點 Exit_ToPlayerHouse
主角家室內出生點 Entry_FromVillage
室內回村莊的出口 Exit_ToVillage
村莊回來位置 Entry_FromPlayerHouse
PlayerHouseInteriorScene 加入 Scene List
村莊與主角家室內的雙向轉場測試成功
這套流程完成後,後面製作村長家和酒館時,就可以複製同樣的設計方式。只要換成對應的室內場景、出口點和出生點,就能建立更多可進入建築。
下一步可以開始製作村長家的室內場景,或先建立 NPC 互動流程。因為現在玩家已經能進入建築,村長就不一定要站在村莊外面等待主角,而可以待在村長家裡,讓主線劇情更自然。