【解決】マップと戦闘中で画像の位置ズレ
Posted: 2021年7月23日(金) 21:46
マップのキャラクターと同じスケールのエネミー画像を作り
戦闘中、マップのキャラクター位置と全く同じ位置にエネミーを表示したいのですが
試してみたら微妙に想像と違う現象が起こりました。
マップ上でプリシアの Sprite_Character の位置を確認すると
[x, y] = [312, 282]
戦闘に入って、Sprite_Enemyに対して setHome(312, 282) を実行すると
Sprite_Enemy の 位置は確かに [x, y] = [312, 282] になっているのですが
キャプチャしてみると微妙に位置がズレています。
Sprite_Enemyのほうが x = +4 pix, y = -20 pix ほど(目視ですが)つまり右上にズレています。
プリシアのエネミー画像は 48x48 pix で作っていてほとんど余白なしのド真ん中なので
画像の中心がズレているわけではないです。
どんな画像に対しても固定の +4 pix / -20 pix ズレならば補正すればいいだけなのですが
このズレがどこから来るものかわからなくて困っています。
理由がわかる方、教えて頂けないでしょうか。
よろしくお願いいたします。
戦闘中、マップのキャラクター位置と全く同じ位置にエネミーを表示したいのですが
試してみたら微妙に想像と違う現象が起こりました。
マップ上でプリシアの Sprite_Character の位置を確認すると
[x, y] = [312, 282]
戦闘に入って、Sprite_Enemyに対して setHome(312, 282) を実行すると
Sprite_Enemy の 位置は確かに [x, y] = [312, 282] になっているのですが
キャプチャしてみると微妙に位置がズレています。
Sprite_Enemyのほうが x = +4 pix, y = -20 pix ほど(目視ですが)つまり右上にズレています。
プリシアのエネミー画像は 48x48 pix で作っていてほとんど余白なしのド真ん中なので
画像の中心がズレているわけではないです。
どんな画像に対しても固定の +4 pix / -20 pix ズレならば補正すればいいだけなのですが
このズレがどこから来るものかわからなくて困っています。
理由がわかる方、教えて頂けないでしょうか。
よろしくお願いいたします。