忍者ブログ
RPGツクールのブログです。イベント講座とRGSS3スクリプト配布をやってます♪
カウンター
ブログ内検索
アーカイブ
最新コメント
[04/04 NONAME]
[04/04 NONAME]
[04/04 NONAME]
[04/04 NONAME]
[04/04 NONAME]
プロフィール
バナー

HN:奈々(なな)
RPGツクールVXAceを中心に製作を行っています。 スクリプト、イラスト、ドット絵など広くちょこちょこ手を出していますので、 できる範囲で他のツクーラーさんのお手伝いができたらなと思っています。
イベントコマンドだけでも、「座標」を使用することは多い。
座標というのは位置を表すものだ。マス目をイメージすると良い。
横をX、縦をYとしてその組み合わせ(X, Y)で平面上の全ての位置を指定できる。
というのが一般的な座標だが、ツクールでは2つほど注意点がある。


まず気を付けなければならないのは「左上が基準になっている」という点。
一番左上を(0, 0)として、右に行くほどX座標がプラスとなり
下に行くほどY座標がプラスとなる。左上から右下に伸びるイメージ。
特にY座標のカウントが数学で使うグラフ等と違うため、間違えやすい。

それから、ツクールでは座標というと2種類ある。

画面座標
一般的に座標というとこの画面座標を指すことが多い。
左上を(0, 0)として、1ドット単位で「画面上の位置を表す」。

ピクチャの表示や移動で使用するのが代表的。
変数の操作で「キャラクターの画面X / 画面Y」で取得できる。
1ドット単位なので、ピクチャやキャラクターの座標を考える場合
「どの位置を基準にしているか」を意識しないとすぐズレてしまう。

通常、VXとAceは画面解像度が544×416なので
画面に表示されるのは(0, 0)から(544, 416)まで、中心点が(272, 208)。
XPは640×480なので(0, 0)から(640, 480)まで、中心点が(320, 240)。
2000と2003は320×240、中心点は(160, 120)となる。

マップ座標
ツクールの場合、マップチップやイベントの座標単位として
このマップ座標の方が広く用いられている。
左上を(0, 0)として、1マス単位で「マップ上の位置を表す」。
1マスはXP以降は32×32、200xは16×16。

変数の操作で「キャラクターのマップX / マップY」で取得できる。
キャラクターは1マス単位で管理されているし
マップ座標は純粋にマップの位置を指定できるため使いやすい。
基本的にキャラクターの位置を考える場合はマップ座標を使う。


余談。
画面座標とマップ座標は
プレイヤー座標を介することで相互変換可能である。
変数の操作でプレイヤーの画面XYとマップXYを取得する。

ある画面座標をマップ座標に変換したい場合。
まず、プレイヤーの画面座標からその画面座標を引いて差を出す。
次に、その差を1マス単位の32で割る。(200xは16)
最後に、プレイヤーのマップ座標にその数を足す。

逆にマップ座標を画面座標に変換したい場合。
プレイヤーのマップ座標からそのマップ座標を引く。
それに1マス単位の32を掛ける。(200xは16)
そしてプレイヤーの画面座標に、その数を足す。

ある画面座標と、変換後の画面座標に変数を使えば
コモンイベントで汎用的な変換処理を作ることも可能。

拍手[7回]

PR
お名前
タイトル
文字色
URL
コメント
パスワード
Vodafone絵文字 i-mode絵文字 Ezweb絵文字
Copyright © へぷたなすくろーる All Rights Reserved
Powered by ニンジャブログ  Designed by ピンキー・ローン・ピッグ
忍者ブログ / [PR]