質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
アルゴリズム

アルゴリズムとは、定められた目的を達成するために、プログラムの理論的な動作を定義するものです。

データ構造

データ構造とは、データの集まりをコンピュータの中で効果的に扱うために、一定の形式に系統立てて格納する形式を指します。(配列/連想配列/木構造など)

Q&A

解決済

1回答

2728閲覧

6角座標系を持つゲーム盤面のデータ構造について

pochiMasahiro

総合スコア10

アルゴリズム

アルゴリズムとは、定められた目的を達成するために、プログラムの理論的な動作を定義するものです。

データ構造

データ構造とは、データの集まりをコンピュータの中で効果的に扱うために、一定の形式に系統立てて格納する形式を指します。(配列/連想配列/木構造など)

4グッド

16クリップ

投稿2018/06/04 14:18

前提・実現したいこと

カタンの開拓者たちのように6角形のマス状の盤面を持つゲームはよくあると思います。
このような6角形のマス状の座標系、この質問では6角座標系としますが、このような座標系はどのようなデータ構造で表現するのでしょうか?

takotakot, swordone, Cystidia, pekapekatail👍を押しています

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

見た目が蜂の巣状であっても、プログラムのロジック的には四角い格子状とほとんど同じにできるかと思います。隣り合ったタイルがどの位置にあるかさえ気をつければ、経路探索なども問題なく行えるでしょう。

イメージ的には、あるタイルと隣り合ったタイルは下図の位置にあると見なすことにすれば、蜂の巣状格子を正方形格子に置き換えることができるのではないでしょうか。

蜂の巣→正方形

他にも、戦略SLGをつくる:Hex(ヘックス)マップの座標系構造では飛び飛びの座標系が紹介されています。スプレッドシートソフトでマップを編集するのが容易だというのは魅力的ですね。

飛び飛び座標系

また、Hexagon grids: coordinate systems and distance calculations - keekerdc.comにもいろいろな座標の取り方が紹介されていましたが、個人的には最後の方で紹介されている3成分による座標が面白いと思いました。2タイル間の距離が、成分ごとの差の絶対値の最大値になるという仕組みが興味深かったです。

XYZ座標系

投稿2018/06/04 20:08

Bongo

総合スコア10807

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

pochiMasahiro

2018/06/07 14:26

このような方法があるのですね!! 回答ありがとうございます!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問