一年前曾經碰到過已無限世界為題材的游戲開發比賽,雖然對比賽沒有興趣,但是對這個題材倒是有點想法。如何通過unity3d實現無縫的循環世界呢。
有一種想法是動態生成,一塊場景一塊場景進行動態加載。(做過2D背景地圖加載的可能理解,不展開)
如果是單場景,有沒有簡單的辦法呢?思來想去,總算找到一種辦法,4個相機圖像疊加法
人物置於一個相機上,移動時,相機也移動,旋轉時,相機也旋轉。
當人物超出地形邊緣的時候,則從另外一個邊緣出現,同時設置到另外一邊的相機上。
當相機超出2個地形邊緣的時候,則從另外一邊出現,這樣就可以形成無縫的效果
注意的地方是,每次人物位置變更的時候,所有相機的depth值都需要重新按照距離遠近重新設置