Cocos2d-JSのタイルマップAPI



Tile Map Api Cocos2d Js



タイルマップにアクセスするために、Cocos2d-JSはタイルマップAPIにアクセスします。主なクラスは、TMXTiledMap、TMXLayer、およびTMXObjectGroupです。
1、TMXTiledMap
TMXTiledMapは、タイルマップクラスです。そのクラス図を以下に示します。 TMXTiledMapはNodeクラスから派生し、Nodeの特性を備えています。

TMXTiledMapクラス図

TMXTiledMapの一般的に使用される関数は次のとおりです。
新しいcc.TMXTiledMap(tmxFile)。タイルマップオブジェクトを作成します。
getLayer(layerName)。レイヤーオブジェクトは、レイヤー名で取得されます。
getObjectGroup(groupName)。レイヤー内のオブジェクトグループのセットは、オブジェクトレイヤー名によって取得されます。
getObjectGroups()。オブジェクトレイヤー内のすべてのオブジェクトグループのコレクションを取得します。
getProperties()。レイヤー内のすべてのプロパティを取得します。
getPropertiesForGID(GID)。 GID別[GIDはタイルのグローバル識別子です。 ]属性を取得します。
getMapSize()。マップのサイズを取得します。その単位はタイルです。
getTileSize()。タイルサイズを取得します。その単位はピクセルです。


サンプルコードは次のとおりです。
var group = _tileMap.getObjectGroup( 'Objects')
var background = _tileMap.getLayer( 'Background')
ここで、_tileMapはタイルマップオブジェクトです。


2、TMXLayer
TMXLayerはマップレイヤークラスです。そのクラス図を以下に示します。TMXLayerもNodeクラスから派生し、Nodeの特性も備えています。同時に、TMXLayerもSpriteBatchNodeクラスから派生しています。すべてのTMXLayerオブジェクトには、バッチレンダリングする機能があります。タイルマップレイヤーは、パフォーマンスを向上させるためにレンダリングする必要がある多数の繰り返し画像で構成されています。



TMXLayerクラス図

TMXLayerの一般的に使用される機能は次のとおりです。
getLayerName()。レイヤー名を取得します。
getLayerSize()。レイヤーサイズを取得します。その単位はタイルです。
getMapTileSize()。タイルサイズを取得します。その単位はピクセルです。
getPositionAt(pos)。ピクセル座標はタイル座標によって取得され、タイル座標のy軸方向はピクセル座標のy軸方向と反対です。
getTileGIDAt(pos)。 GID値は、タイル座標によって取得されます。


3、TMXObjectGroup
TMXObjectGroupは、オブジェクトレイヤー内のオブジェクトグループのコレクションです。そのクラス図を以下に示します。 TMXObjectGroupはTMXLayerとは異なることに注意してください。 TMXObjectGroupはNodeから派生しておらず、Nodeプロパティを持っていません。

TMXObjectGroupクラス図

TMXObjectGroupの一般的に使用される関数は次のとおりです。
propertyNamed(propertyName)。属性値は、属性名によって取得されます。
objectNamed(objectName)。オブジェクト情報は、オブジェクト名によって取得されます。
getProperties()。オブジェクトのプロパティを取得します。



getObjects()。すべてのオブジェクトを取得します。

詳しくは、最新のココスの本をご覧ください。Cocos2d-x戦闘:JSボリューム-Cocos2d-JS開発

本の交換ディスカッションウェブサイト: http://www.cocoagame.net

Cocos2d-xテクノロジーディスカッショングループへようこそ:257760386

よりエキサイティングなビデオレッスンについては、Zhijie ClassCocosコースに注意してください。 http://v.51work6.com



Zhijie Classroomは現在Cocosメンバーを立ち上げていますので、ご期待ください。 http://v.51work6.com/courseInfoRedirect.do?action=netDetialInfo&courseId=844465&categoryId=0 「Cocos2d-xコンバットJSボリューム」がオンラインになり、すべての主要ストアが販売されました。

Jingdong: http://item.jd.com/11659698.html

Zhijie iOS Classroom WeChatパブリックプラットフォームへようこそ。最新の技術記事、書籍、チュートリアル情報について学ぶことができます。