0

スプライトのリストを作成してシーンに描画すると、すべて問題ありませんが、spriteGroups のリストを作成して描画しようとすると、黒い画面しか表示されません。

private Queue<SpriteGroup> linesToDraw;

...

//when user touch the screen we add sprites to our collection
if (pSceneTouchEvent.getAction() == MotionEvent.ACTION_MOVE)
{
    linesToDraw.add(DrawHelper.getBrushLine(xStart, yStart, xEnd, yEnd, 5f,mBitmapTextureAtlas, mFaceTextureRegion, getVertexBufferObjectManager()));
}

...

//here we try to draw sprites
while (linesToDraw.size() > 0)
    //this code is reachable
    linesToDraw.poll().onDraw(pGLState, mCamera);

...

public static SpriteGroup getBrushLine(float xStart, float yStart,float xEnd, float yEnd, float size,BitmapTextureAtlas atlas, ITextureRegion mFaceTextureRegion, VertexBufferObjectManager manager)
{
    SpriteGroup result = new SpriteGroup(atlas, 40, manager);
    for (int i = 0; i < count ; i++)
    {
        Sprite part =new Sprite((float)(xStart + i * sLength * cos), (float)(yStart + i * sLength * sin), mFaceTextureRegion, manager);
        result.attachChild(part);
    }
    return result;
}

...

単一の SpriteGroup を使用して ArrayList を配置すると、すべて問題なくシーンにスプライトが表示されますが、SpriteGroup のリストが機能しません。同じ Texture と TextureRegion で SpriteGroup を作成するのは間違っているのでしょうか?

4

1 に答える 1

1

単一のスプライトグループを使用する場合はすべて問題ありませんでしたが、スプライトグループのリストの場合、自分で子を表示する必要があります =)

getBrushLine: result.setChildrenVisible(true)

于 2012-05-15T10:50:56.567 に答える