3

ゲームに問題があります。私は1280x1280pxの地図を持っています。40x40タイルで構成されているため、1タイルは32x32ピクセルです。問題は、このマップをデバイスの実際の画面サイズに拡大縮小できないことです。それを行う方法はありますか?

これは私がtmxファイルをロードする方法です:

public Scene onLoadScene() {
                // TODO Auto-generated method stub
                this.mMainScene = new Scene(1);

                try
                {
                        final TMXLoader tmxLoader = new TMXLoader(this, this.mEngine.getTextureManager(),
                                                                                                                TextureOptions.BILINEAR_PREMULTIPLYALPHA);
                        this.mTMXTiledMap = tmxLoader.loadFromAsset(this,"gfx/untitled.tmx");

                        //"gfx/0_fire_drill-lvl_01.tmx"
                }
                catch(final TMXLoadException tmxle)
                {              
                        Debug.e(tmxle);
                }

                for(TMXLayer tmxLayer : this.mTMXTiledMap.getTMXLayers())
                {
                        this.mMainScene.getChild(0).attachChild(tmxLayer);
                }              

                return this.mMainScene;
        }

これは、マップがどのように見えるかです: http ://postimage.org/image/403w3dfnx/

アクションは赤い領域でのみ発生します。マップを編集する必要がありますか?

前もって感謝します!

4

1 に答える 1

1

問題は、マップの生成方法ではなく、カメラにあります。AndEngineのさまざまなカメラクラスの1つを使用してカメラを作成します。(私はSmoothCameraのファンです。)このように:

SmoothCamera camera = new SmoothCamera(0, 0, CAMERA_WIDTH, CAMERA_HEIGHT, 10, 10, 1.0f);

CAMERA_WIDTHとCAMERA_HEIGHTは、定義するためのintです。これらを小さい値に設定すると、よりズームインされます。カメラのズームを直接調整することもできます。このような:

camera.setZoomFactor(5.0f);

そして、おそらく、プレーヤーエンティティを追跡するようにカメラを設定する必要があります。このようなもの:

camera.setChaseEntity(pChaseEntity)

pChaseEntityは、フォローしたいものです。お役に立てれば。

于 2013-02-16T22:17:21.223 に答える