我即將在Java中編寫Mario的副本。我正在考慮關卡的2個表示/數據結構,但我不確定應該選擇哪一個:2D平臺遊戲的適當級別表示/數據結構?
- 2D整數數組。
- 四叉樹將水平分成幾部分。
它有什麼優點和缺點?
我即將在Java中編寫Mario的副本。我正在考慮關卡的2個表示/數據結構,但我不確定應該選擇哪一個:2D平臺遊戲的適當級別表示/數據結構?
它有什麼優點和缺點?
絕對是某種類型的二維數組。整數將是一個好主意,但是角色會是更好的主意。
考慮製作一個基本上是「地圖」的文本文件。它可以是10行10列的文本。一個非常簡單的地圖,在這種情況下。也許你可以用「a」來表示草,用「b」來表示磚。通過這種方式,您甚至可以在實施之前直觀地瞭解您的地圖。但你基本上可以編程你的應用程序來依賴這個地圖文本文件。
例如,考慮這個地圖:
bbbbbbbbbbbbbbbbb
aaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaa
所以,這看起來像上述3個長草的排很長的磚路。想象一下,使這種方案更加複雜,使用各種字符a-z和A-Z,甚至像$或%或&這樣的標點符號。
然後,只需通過更改文本文件即可創建地圖。如果使用整數,則僅限於10個字符(或10個地圖對象本身)。例如,如果你有更多的10個對象,那麼你怎樣才能創建一個數字相鄰的文本文件。你不會知道如何分離數字。
四叉樹的缺點是它過於複雜,並且不允許快速訪問特定元素。
你是什麼意思?你問如何劃分地圖?遊戲? –
地圖。對不起,如果不清楚。 – Rama
cross-post http://gamedev.stackexchange.com/q/16306/6588 – jhocking