私は C++ でプラットフォーム ゲームを作成しており、タイル マップを使用して世界を構築しています。
マップには、タイルに割り当てられた値が含まれています。
たとえば、2D 配列の場合:
int map[4][4]={
{1, 1, 1, 1},
{1, 0, 0, 1},
{1, 0, 0, 1},
{1, 1, 1, 1}, };
同様の方法でスプライトを作成します。int sprite[1][1]={ {2} };
私の質問は、2D 配列内の特定のタイルまたは要素にどのようにアクセスするのですか?
この投稿 (3 番目の投稿)を読み、2D 配列を使用するのが最善ではないかどうか疑問に思いました。
私のスプライトは常にウィンドウの中央に留まり、キーを押すと私の世界は彼の後ろに移動します。
特定のタイルと衝突させたいので、スプライト 2D 配列タイルとマップ 2D 配列の間の相互作用が必要です...
また、現状では、別の方法でコーディングしていないため、マップから出ることができます。これについてどうすればいいですか?理想的には、彼がマップから離れないようにしたいので、衝突をそれと統合できます。
以下は、物事がどのように見えるかのスクリーンショットです (ただし、上記よりも大きなマップがあります):