2

ここに示すように、hextiled マップを作成しようとしています。

http://files.slembcke.net/misc/procedural/hex_tiles.png

しかし、リスト内のタイル X(行) および Y(列) インデックスを画面位置に変換する関数に問題があります。

        public static Vector2 GetDisplayCoordOfTile(GameTile t, Texture2D texture)
        {
            Vector2 screenPadding = new Vector2(2, 2);

            float ypos = (t.Column * (texture.Height + 2)) - (t.Row * texture.Height / (float)2) + screenPadding.Y;
            float xpos = (t.Row * (texture.Width)) + screenPadding.X;

            return new Vector2(xpos, ypos);
        }

座標系は通常の配列での考え方とは異なるため、物事がうまくいかない手がかりを誰かに持っていますか?

4

1 に答える 1

0

ここに六角形のマップを描画する方法に関する素晴らしいチュートリアルがあります: http://www.xnaresources.com/default.asp?page=Tutorial:TileEngineSeries:3

また、ここでゲーム開発関連の質問をすることで、より多くの助けが得られるかもしれません: https://gamedev.stackexchange.com/

于 2013-03-30T20:28:36.640 に答える