使用循环libgdx绘制一次闪烁的android屏幕

时间:2013-11-25 03:40:15

标签: java libgdx

我使用嵌套for循环(libgdx)绘制一个基本网格,但是当我在android上测试它时它一直闪烁我尝试了很多不同的方法但仍然无法让它停止闪烁..这是我的代码

public void create() {      

    rend = new ShapeRenderer();
    screenH = Gdx.graphics.getHeight();
    screenH = (int) (screenH*(0.32));
    System.out.println(screenH);
    screenW = Gdx.graphics.getWidth();
    screenW = (int) (screenW*(0.322));
    System.out.println(screenW);
    batch = new SpriteBatch();

    dots = new Rectangle();
    storeV();

渲染方法

public void render() {      
    Gdx.gl.glClearColor(0.1f, 0.1f, 0.1f, 1);
    //Gdx.gl.glClear(GL10.GL_COLOR_BUFFER_BIT);

    rend.begin(ShapeType.Filled);
    batch.setColor(Color.WHITE);
    rend.rect(100, 100, 200, 200);
    for (int i=0; i<4; i++){
        for (int j=0;j<4;j++){
            //batch.draw(dot, posx, posy);
            rend.setColor(Color.WHITE);

            rend.rect(posx, posy, 16, 16);
            posx+=screenW;
        }
        posx=0;
        rend.rect(posx, posy, 16, 16);
    //  batch.draw(dot, posx, posy);
        posy+=screenH;
    }
    rend.end();
    batch.begin();

    batch.end();

}

如你所见,我尝试绘制一个矩形并使用纹理,但两者都碰巧闪烁。在循环外部绘制的矩形剂量闪烁。

这是我的storeV()

public void storeV(){

for (int i=0; i<4; i++){
    Xpoints[i]+=screenW*i;
}
for (int i=0; i<4; i++){
    Ypoints[i]+=screenH*i;
}

0 个答案:

没有答案