私のゲームにタイルセットとしてthis sort of imagesを使用する方法が見つかりません。 これを行う方法はありますか、1つ1つずつすべてのオブジェクトを追加する必要がありますか?Spritekitのタイルセットとして画像を使用してください
新しいグリッドタイルセットを1つのタイルグループに追加しようとしましたが、これをタイルマップノードで使用しようとすると、すべてのイメージが1つのブロックのテクスチャとして使用されます。
可能かどうかは分かりませんが、お手伝いできれば幸いです。
私のゲームにタイルセットとしてthis sort of imagesを使用する方法が見つかりません。 これを行う方法はありますか、1つ1つずつすべてのオブジェクトを追加する必要がありますか?Spritekitのタイルセットとして画像を使用してください
新しいグリッドタイルセットを1つのタイルグループに追加しようとしましたが、これをタイルマップノードで使用しようとすると、すべてのイメージが1つのブロックのテクスチャとして使用されます。
可能かどうかは分かりませんが、お手伝いできれば幸いです。
残念ながら、あなたが望む機能だけで存在していません。..
手動小さい画像に画像を分離する必要があります。
おはよう、仲間ありがとう – Marsgames
あなたのアプリケーションでGLを心配しないでください –
画像はテクスチャアトラスとして使用できますが、SKTextureAtlas
を使用することはできません。あなた自身を分解しなければなりません。
SKTextureを見ると、init(rect: CGRect, in: SKTexture)
という名前のinitがあります。これにより、元のテクスチャのテクスチャメモリ空間を参照しながら、新しいSKTextureオブジェクトが作成されます。このアトラスを作成するには、CGRRect
のすべての情報を読み込むためにplistのようなものを使用する必要があります。
例:
let textureAtlas = SKTexture(imageNamed:"CEm72.png") //I convert your jpg to png somehow
let rectDarkKnight = CGRect(x:0,y:96,width:32,height:32)
let texDarkKnight = SKTexture.init(rect: rectDarkKnight, in: textureAtlas)
ありがとう、試してみるよ – Marsgames
ありがたいことにテクスチャマップが最適ではありません。あなたはアトラスから最小限の量をつかんでスプライト上に残りの部分を埋めなければならないので、最適化されたテクスチャでさらに狂ってしまいます。私はSKTextureからパディングを処理するためにとにかく知らない – Knight0fDragon
[タイルマップエディタ](http://www.mapeditor.org/)はタイルセットのこの種類を読み取ることができます。この記事[Tiled Map Editor入門](https://gamedevelopment.tutsplus.com/tutorials/introduction-to-tiled-map-editor-a-platform-agnostic-tool-for-level-maps--gamedev)を読んでください。 -2838)記事。これはSpriteKitの 'SKTilemapNode'と互換性がありませんが、SpriteKitでマップを使用するには余分な作業が必要です。 –