回覆列表
-
1 # Dy君
-
2 # Levi南竺
根據你的問題,
先說一下製作一個沙盒遊戲的規則。
首先呢,沙盒遊戲(3維類)都需要一個3維空間作為地圖,但對於製作商,這個空間的佈置需要特別關注。從某種角度上可以把這種基礎空間分成兩類,一種是無限空間,另一種是有限空間。
無限空間就類似我的世界的主世界,地形可以無限生成,高度也可以無限上升,但因為開發商僅僅在這個空間的其中一層佈置了方塊,所以你往上不停飛的時候,那些超出方塊高度限制的空間存在但不會有內容,或許你可以把這裡的空間當做宇宙,但實際不是,畢竟宇宙的貼圖都沒有。(2d遊戲泰拉瑞亞存在宇宙是因為開發者有這方面的設定)
對於有限空間,就比作和平精英的地圖,主要也就是開發商只在這一小部分的空間佈置了內容,但超出了這種有內容的空間,當然是無內容的空間,也就是空白地帶。
總結一下,一個沙盒遊戲是否存在宇宙空間取決於開發者是否有這方面的設定。
並不存在
遊戲的設定完全取決於遊戲作者的決定。
沙盒類遊戲與和平精英是兩類遊戲,和平精英完全不屬於沙盒遊戲。
和平精英就直接屬於一個大地圖裡,大家和平的在這個大地圖中進行廝殺。這個地圖當然是有邊界的。邊界都是海域,你想遊也會游到一個地方停下來在走不過去而已。
而在沙盒類遊戲中,你說的問題也分為兩類,第一類是有邊界地圖,第二類是邊界地圖。但實際上,所有無邊界地圖最終其實都是有邊界地圖。完全的無邊界地圖目前來講理論上不存在的。這樣比較難懂,我舉個例子。
我的世界中,絕大多數人都會認為是完全無邊界的地圖。那是因為,通常人是無法,也沒有那個精力走到地圖的邊界。其實作者設計了一個非常非常大的邊界。30000000x30000000 三千萬x三千萬。
當你到達這個邊界後,會出現藍色條紋,並且不斷滾動,此處便沒有辦法再往遠處走。
但是為什麼設定這個數字我不知道為何沒有深究。這個數字不是任何資料型別的邊界,可能就是作者自己隨便設定的值吧,反正普通人也走不到。
為什麼要設定這樣一個邊界呢?
無論多麼大的世界,如果沒有邊界會怎麼樣呢?
當遊戲沒有邊界的時候,意味著你可以一直一直走下去。
我們都知道,遊戲的執行空間是在記憶體裡的。而在很大很大的地圖中行走的時候,有兩種方式處理這樣的設定。
第一個是切換地圖。
切換地圖通常指的是到了設定地圖的邊界,玩家再繼續走下去的話,系統載入下一個地圖分割槽的所有地圖內容。一般介面就會出現載入的介面。像仙劍奇俠傳過圖一樣。這樣的好處是對電腦需求低,而且進入新地圖後不需要再次載入任何東西
第二個是無縫地圖。
顧名思義,無需切換地圖的介面。其實底層還是載入地圖了,分割載入,後臺載入。像方舟一樣,有很多遠處的景色,你看的模模糊糊,其實他載入了一部分,當你走進了,才看到具體的渲染。
扯遠了,其實不管哪個遊戲,都有邊界。
基於上面倆地圖載入機智可以看到,大多數沙盒都屬於無縫大地圖。但這有一個問題,所有的地圖資料都要儲存到硬碟等地方。
試想一下,你朝著mc的一個方向一直走下去,經過了無數村莊田野。這些都得記錄下來。當你回頭走回剛剛的地方的時候,就要再次載入回來。
這些資料一次最多載入依賴於你的記憶體大小。但是問題在於 ,你走的地方越遠,你的座標越大的可怕。如果不限制,你的座標資料會佔用空間越來越大。
通常為了一個極端case,是不會做這樣無聊又費勁的處理的。
理論上,都有邊界。但是也有特殊情況。比如《無人深空》這款遊戲。
聽說有1800萬兆顆星球。完全是演算法生成的。
理論上,這遊戲你玩的時間越長,你的硬碟容量越小,而且你的載入速度還越慢。。。
據說這些星球,很多都一樣。也可以理解。畢竟沒有真隨機演算法。
綜上所述,理論上都會設定邊界。不設定邊界將會是遊戲的賣點。而且,需要作者做大量的邊緣處理工作,不是所有電腦都能很好的支援的。