TiledMapEditor の変更点
[[トップに戻る>FrontPage]]
#ref(logo.png);
*TiledMapEditorとは [#l43058be]
TiledMapEditorとは高機能なレベルエディタです。
- 公式サイト
-- http://www.mapeditor.org/
----
#contents
----
*TiledMapEditorの仕組み [#s6e14380]
** TiledMapEditorが扱うデータの構造 [#we356481]
TiledMapEditorが扱うデータ(*.tmx)のデータ構造は以下の様になっています。
TMX
+-- version : バージョン番号
+-- orientation : 向き
+-- width : 幅
+-- height : 高さ
+-- tilewidth : チップの幅
+-- tileheight : チップの高さ
+-- property : プロパティ
| +-- name : キー
| +-- value : 値
|
+-- tileset : タイルセット
| +-- firstgid : 開始チップID
| +-- name : 名前
| +-- tilewidth : チップの幅
| +-- tileheight : チップの高さ
| +-- image
| +-- source : タイル画像のファイル名
| +-- width : 画像の幅
| +-- height : 画像の高さ
|
+-- layer : レイヤー
| +-- name : レイヤー名
| +-- width : レイヤーの幅
| +-- height : レイヤーの高さ
| +-- properties
| | +-- property
| | +-- name : キー
| | +-- value : 値
| |
| +-- data
| +-- encoding : データの種類(base64 / csv)
| +-- データ値
|
+-- objectgroup : オブジェクトグループ
+-- color : 透過色
+-- name : 名前
+-- width : オブジェクトレイヤーの幅
+-- height : オブジェクトレイヤーの高さ
+-- opacity : 透過値(0.0~1.0)
+-- object : オブジェクト
+-- name : 名前
+-- type : 種別
+-- gid : チップID
+-- x : X座標
+-- y : Y座標
上記は全体の構造ですが、重要な部分に絞ると以下のようにシンプルなものです。
#ref(overview.png);
TMX
+-- tileset : タイルセット
+-- layer : レイヤー
+-- objectgroup : オブジェクトグループ
+-- object : オブジェクト
それぞれにプロパティとして、キーと値のペアを持つデータを指定することができます。
** タイルセット [#i3d83e7b]
タイルセットとは、配置するチップのセットです。タイルセットは複数存在することができます。
** レイヤー [#e630ccd4]
レイヤーとは、配置したチップ情報の集まりです。データとしては、チップIDの単なる配列となります。
レイヤーには主に背景チップを配置します。理由はレイヤーの1つのタイルにはチップIDしか情報を持たせられないためです。
ただし、ゲームオブジェクトがID情報だけで事足りる場合には、レイヤーに乗せてしまったほうが、TiledMapEditor上での編集が楽になります。
** オブジェクトグループ [#ie705583]
オブジェクトグループとは、オブジェクトの集まりです。オブジェクトはレイヤーのチップとは異なり、複雑な情報を持たせられます。そのためゲームオブジェクトはこちらの情報を元に生成するのが、一般的な処理となります。
*** オブジェクト [#zbcf8a37]
オブジェクトには、XY座標・チップIDに加えて、名前と種類を設定することができます。
--
* TMXファイルのロード方法 [#u7a6b335]
[[flixel.addons.editors.tiled]] の TiledMap を使用します。
** Project.xmlの編集 [#cdbefa37]
TMXファイルの読み込みは拡張機能であるため、flixel-addonsを有効にします
#geshi(xml){{
<!--------------------------------LIBRARIES------------------------------------->
<haxelib name="flixel"/>
<!--In case you want to use the addons package-->
<haxelib name="flixel-addons" /> <!-- ←ここのコメントを外して有効にする -->
}}
** ロード方法 [#i5faabb4]
TODO:
* TiledMapEditor使いこなし方法 [#j7388362]
** ショートカットキー一覧 [#za26a643]
よく使うショートカットキーをまとめておきました。マウス操作も混ざっています。
|分類|項目|キー|h
|ツール選択|スタンプツール|B|
|~|消しゴム|E|
|~|バケツ|F|
|~|範囲選択|R|
|編集|元に戻す|Cmd+Z|
|~|やり直す|Cmd+Shift+Z|
|スタンプ|直線を引く|Shift+左クリック|
|~|円を描く|Cmd+Shift+左クリック|
|~|スタンプを垂直方向にフリップ|Y|
|~|スタンプを時計回りに回転|Z|
|~|スタンプを反時計回りに回転|Shift+Z|
|チップ変更|スポイト(マウスの下にあるチップを選択)|ビュー上で右クリック|
|~|指定の範囲を複製|マウス右ドラッグ|
|~|チップ番号のストア|Cmd+1〜9|
|~|ストアに保存しているチップ番号に変更|1〜9|
|範囲選択|削除|Delete / Backspace|
|~|切り取り|Cmd+X|
|~|コピー|Cmd+C|
|~|貼り付け|Cmd+V|
|~|選択解除|Cmd+Shift+A|
|表示|拡大|Cmd+「+」/ Cmd+ホイール上 / ミニマップ上でホイール上|
|~|縮小|Cmd+「-」/ Cmd+ホイール下 / ミニマップ上でホイール下|
|~|拡大リセット|Cmd+0|
|~|ビューのスクロール|Space+マウス移動 / マウスホイールクリック+マウス移動 / ミニマップ上でクリックorドラッグ / カーソルキー|
|その他|F5|コマンドの実行|
より詳細なショートカットキーは以下のリンクを参考にしてください。
- [[TiledMapEditor - Keyboard Shortcuts>https://github.com/bjorn/tiled/wiki/Keyboard-Shortcuts]]
----
**ミニマップ [#dd76ea64]
***横長のマップを編集したい場合 [#l95f8049]
横スクロールのゲームでマップを作る場合は、ミニマップの配置を下に置くと良いです。
#ref(minimap.png);
ミニマップをマウス左ドラッグすることでスクロールできるので、作業効率がアップします。
----
**タイルセット [#d74783bc]
***チップ番号のストア [#hcd97db0]
チップを選択してCmd+1〜9を押すと、選択中のチップ番号がストアに保存されます。そして1〜9を押すことで対応する数字に保存したチップ番号に変更されます。
***複数のタイルを組み合わせたスタンプの作成 [#b593f7bb]
タイルセットを左ドラッグします。
#ref(tileset1.png);
すると複数のタイルを選択できます。
#ref(tileset2.png);
***作成済みのチップの配置情報を複製する [#e0bd0695]
スタンプツールを選択肢、複製したい領域をマウス右ボタンドラッグします。
#ref(dup1.png);
すると指定した領域が複製できます。
#ref(dup2.png);
----
**範囲選択 [#w34fbd8f]
***まとめて削除する [#q9a563db]
まとめて削除する場合、消しゴムで1つ1つ消すのは大変です。
そこで、選択範囲ツールを選択肢てマウス左ドラッグで範囲選択します。
#ref(cut1.png);
その状態でCmd+X(またはDeleteキー / Backspaceキー)すると、まとめて消すことができます。
#ref(cut2.png);
***まとめて移動する [#tde44928]
範囲選択ツールで選択した後、Cmd+Xで切り取り、Cmd+Vで複製モードに入り、左クリック貼り付けることで、まとめて移動することができます。
***まとめて複製する [#r39cce2c]
範囲選択ツールで選択した後、Cmd+Cでコピーして、Cmd+Vで複製モードに入り、左クリックで貼り付けます。
***複製モードの解除 [#m2135bbb]
別のチップを選択したり、右クリックでスポイトすることで解除できます。
*** 選択範囲の追加 [#l460402e]
左ドラッグで選択した状態で、さらにShift+左ドラッグします。
#ref(range1.png);
すると、選択範囲を追加できます。
#ref(range2.png);
*** 選択範囲を削る [#h0b131ec]
すでに選択した範囲を、Cmd+左ドラッグします。
#ref(range3.png);
するとドラッグした範囲が削られます。
#ref(range4.png);
----
**コマンド [#ib8f1623]
***Tiledからゲームを起動する [#ecf272ac]
Project.xmlが存在する場所に以下のシェルスクリプトを配置します。(ファイル名は「exec.sh」とします)
#geshi(bash){{
#!/bin/sh
cd `dirname $0`
lime test neko
}}
そして、サイコロアイコンの左側にある小さな三角ボタンをおして、コマンドの編集を選択します。
#ref(exec1.png);
コマンド編集画面が表示されるので、配置したスクリプトのパスを''フルパス''で指定します。
#ref(exec2.png);
すると歯車アイコンをクリックすることでゲームが起動できます。またはF5から起動することもできます。
Windowsの場合は以下のバッチファイルを用意します
#geshi(Winbatch){{
:: ドライブ変更
cd /d %~d0
:: カレントディレクトリ変更
cd %~dp0
:: 実行
lime test neko
}}
実行ツールで以下のようにバッチファイルがあるパスを指定すれば、実行できます。
#ref(exec_win.png);
* 自動マッピングのやりかた [#j9dad720]
- [[自動マッピングのやりかた>TiledMapEditor/Automapping]]
自動マッピングのやりかたを説明しています