Tiledなどの地図編集者について質問があります。私は現在、独自のマップエディターを作成しています。たとえば、タイル張りにレイヤー化する目的は何か教えてもらえないかと思います。マップの作成にはどのような目的がありますか?
Tiledなどの地図編集者について質問があります。私は現在、独自のマップエディターを作成しています。たとえば、タイル張りにレイヤー化する目的は何か教えてもらえないかと思います。マップの作成にはどのような目的がありますか?
回答:
レイヤーは、タイルマップの最も基本的な使用法だけでなく、より芸術的な表現や再生機能を可能にするためにも必要です。レイヤーは、ワールドで使用されるスプライトの描画順序を定義します。これらは、「スプライトYの後にスプライトXを描画して、スプライトYの上にスプライトXが表示されるようにする」という簡単な言い方です。通常はレイヤーに一般化されているため、各スプライトの深度を定義する必要はありません(深度をレイヤーの設定として定義することもできます)。このプロセスは、Painterのアルゴリズムと呼ばれます。
最も基本的な使い方は、プレーヤー(またはマップ以外のアイテム)をマップの上に置くことです。マップは1つのレイヤーで、プレーヤーとその他のアイテムはマップの上の別のレイヤーにあります。
(画像のソースはシンプルなゲームを作るための素晴らしいチュートリアルです)
芸術的な表現とプレイの機能には、プレイヤーが世界の他のオブジェクトの「後ろ」を歩くことや、配置可能な構造/アイテムを持たせることが含まれます。
レイヤーはビジュアルに限定されません。上記の例のように、歩行不可能なエリアを定義するレイヤーを持つこともできます。レイヤー3は「ブロッキング」として定義できます。これは、プレーヤーがそのレイヤーの何にも移動できないようにすることを意味します。これにより、マップの作成に役立つプレーヤー境界が効果的に作成されます。これは、一部のスプライトだけを同じレイヤーのスプライトと衝突させたい物理システムに拡張できます。これは、たとえばフレンドリーファイアを無効にする簡単な方法です。
レイヤーでは、視差スクロールなどの効果も使用できます。これは、2Dゲームに奥行き感を与えます。
レイヤーが異なると、パーツをプレーヤーの前に置くことで、キャラクターが「後ろ」を歩くことができるものを作成できます。この記事はこれをかなりよく説明しています。