2

ゲームにいくつかの SVG を読み込もうとしていますが、問題が発生しています。Android のクック ブック、ドキュメント、フォーラムの回答を読んでみましたが、解決策が見つかりません。実際に画像を読み込んでゲームビルドできる状態になりましたが、表示できません。次のように参照してください。

.svg 画像の読み込み:

BuildableBitmapTextureAtlas bitmapTextureAtlas = new BuildableBitmapTextureAtlas(
            engine.getTextureManager(), 1024, 1024, TextureOptions.BILINEAR); //setting up texture atlas

    try {
        this.mBuildableBitmapTextureAtlas
                .build(new BlackPawnTextureAtlasBuilder<IBitmapTextureAtlasSource, BitmapTextureAtlas>(
                        0, 0, 1));

    } catch (final TextureAtlasBuilderException e) {
        Debug.e(e);
    }



    SVGBitmapTextureAtlasTextureRegionFactory.setAssetBasePath("gfx/game/");

    mLowResTextureRegion = SVGBitmapTextureAtlasTextureRegionFactory
            .createFromAsset(bitmapTextureAtlas, activity,
                    "spinningarrow.svg", 32, 32);
    mMedResTextureRegion = SVGBitmapTextureAtlasTextureRegionFactory
            .createFromAsset(bitmapTextureAtlas, activity, "spinningarrow.svg",
                    128, 128);

    // Create a high-res (256x256) texture region of svg_image.svg
    mHiResTextureRegion = SVGBitmapTextureAtlasTextureRegionFactory
            .createFromAsset(bitmapTextureAtlas, activity, "spinningarrow.svg",
                    256, 256);

    bitmapTextureAtlas.load();

実際にシーンにアタッチします:

float currentSpritePosition = (WIDTH / ((SPRITE_SIZE) * SPRITE_COUNT)) + SPRITE_SIZE * 0.5f;

            Sprite lowResSprite = new Sprite(currentSpritePosition, HEIGHT / 2, SPRITE_SIZE, SPRITE_SIZE, rM.mLowResTextureRegion, rM.engine.getVertexBufferObjectManager());
            attachChild(lowResSprite);

            currentSpritePosition += SPRITE_SIZE;
            // Create & attach the med-res sprite to the scene (mid)
            Sprite medResSprite = new Sprite(currentSpritePosition, HEIGHT / 2, SPRITE_SIZE, SPRITE_SIZE, rM.mMedResTextureRegion, rM.engine.getVertexBufferObjectManager());
            attachChild(medResSprite);

            currentSpritePosition += SPRITE_SIZE;
            // Create & attach the high-res sprite to the scene (right side)
            Sprite hiResSprite = new Sprite(currentSpritePosition, HEIGHT / 2, SPRITE_SIZE, SPRITE_SIZE, rM.mHiResTextureRegion, rM.engine.getVertexBufferObjectManager());
            attachChild(hiResSprite);

これはビルドされますが、イメージが表示されません。座標をハードコーディングしても。

問題の svg はhttp://www.sendspace.com/file/nnjsfeにあります。

4

0 に答える 0