2

タイル エンジンをテストするために 64x64 の小さなタイルを作成しました。ループに追加されます。

var grass:Grass = new Grass();
grass.x = (x * TILE_SIZE);
grass.y = (y * TILE_SIZE);
grass.width = TILE_SIZE;
grass.height = TILE_SIZE;
container.addChild(grass);

public class Grass extends MovieClip {

public function Grass() {
    // constructor code
    this.width = 64;
    this.height = 64;
}
}

オブジェクトの .width と .scale をトレースすると、コードは 64x64 でスケールは 1 と一致します。しかし、デバッガーで画面を印刷して Photoshop で測定すると、それらは 94x84 であり、それがどこにあるかを見つけることができます。間違っている?

不足しているものはありますか?ありがとう

4

3 に答える 3

0

ステージ スケール モードがスケーリングされていないことを確認します。

import flash.display.StageAlign;
import flash.display.StageScaleMode;

stage.scaleMode = StageScaleMode.NO_SCALE;
stage.align = StageAlign.TOP_LEFT;
于 2012-05-23T03:14:15.547 に答える
0

おそらく、デバッガーがフラッシュ ビデオを全画面表示に引き伸ばすと、草のオブジェクトが引き伸ばされます。スクリーンショットが役立ちます。

于 2012-05-22T22:01:05.890 に答える
-1

これはactionscript3ですか?Grass クラスの宣言はどこにありますか? それに多少の誤差があるかもしれません

于 2012-05-22T21:27:03.690 に答える