我正在研究支持<canvas>
的快速瀏覽器的等距遊戲,這非常有趣。爲了節省每瓦的信息,我使用包含代表瓷磚的ID,像數字的二維數組:保存等距遊戲數據的最有效方法
var level = [[1, 1, 1, 2, 1, 0],
[0, 1, 1, 2, 0, 1],
[0, 1, 1, 2, 1, 1]];
var tiles = [
{name: 'grass', color: 'green'},
{name: 'water', color: 'blue'},
{name: 'forest', color: 'ForestGreen'}
];
到目前爲止,它的偉大工程,但現在我想的高度和坡度像在這張照片的工作: alt text http://harmen.no-ip.org/isometrictiles.png
對於每個瓷磚,我需要保存它的瓷磚ID,高度和有關哪些角落向上轉移的信息。
我想出了所有四個角落的按位表示一個簡單的想法,就像這樣:
1011 // top, bottom and left corner turned up
我的問題是:什麼是最有效的方式來保存這三個值,每個單元?是否可以將這三個值保存爲一個整數?
+1爲圖片:) – cletus 2010-04-02 12:08:22
+1優秀的問題。對遊戲感興趣。 – 2010-04-02 12:13:51
+1不僅是圖片,而且是問題的整體清晰度。很高興看到有人花時間徹底詢問問題。 – Ricket 2010-04-05 21:33:32