2015-10-20 113 views
0

我試圖同時呈現背景和我的角色動畫和角色工具。這似乎很瑣碎,但我無法弄清楚。這裏是我現在用於渲染的代碼。渲染紋理不允許其他紋理顯示libgdx java

batch.begin(); 

    if(player.getPosition().x > 14 * MapGrid.CELL_SIZE) 
     tmpx = player.getPosition().x; 
    else 
     tmpx = 15 * MapGrid.CELL_SIZE; 
    player.renderSprites(batch); 
    worldScenes.render(batch, tmpx, surfaceCoordinates.y * MapGrid.CELL_SIZE); 
    mapGrid.renderActual(batch); 
    batch.end(); 

player.renderSprites(batch);使我的精靈動畫,然後他使用的工具(在這種情況下劍)worldScenes.render呈現的背景和mapGrid.render呈現的污垢。當我運行這裏上面的代碼是結果 Result 1

現在,當我運行下面的代碼(切換player.renderSprites至底部):

batch.begin(); 

    if(player.getPosition().x > 14 * MapGrid.CELL_SIZE) 
     tmpx = player.getPosition().x; 
    else 
     tmpx = 15 * MapGrid.CELL_SIZE; 

    worldScenes.render(batch, tmpx, surfaceCoordinates.y * MapGrid.CELL_SIZE); 
    mapGrid.renderActual(batch); 
    player.renderSprites(batch); 
    batch.end(); 

下面是結果

Result 2

最後如果我切換mapgrid.renderplayer.renderSprites

batch.begin(); 

    if(player.getPosition().x > 14 * MapGrid.CELL_SIZE) 
     tmpx = player.getPosition().x; 
    else 
     tmpx = 15 * MapGrid.CELL_SIZE; 

    worldScenes.render(batch, tmpx, surfaceCoordinates.y * MapGrid.CELL_SIZE); 
    player.renderSprites(batch); 
    mapGrid.renderActual(batch); 
    batch.end(); 

下面是結果: Result 3

現在我不想垃圾郵件的圖片,但如果我把worldscenes最後player第一和mapgrid秒它呈現的一切,但它由玩家和紫色的playersprites劍。

我似乎無法找到一個模式,總是會覆蓋另一個模式。任何幫助,我都會非常感激,我很失落。謝謝!!

+0

請即答案@JohnathonHavens你救了我這麼多小時我通過我的着色器 – Luke

回答

1

看起來您正在屏幕上搶先使用屏幕,死機贈品是默認的清晰顏色爲黑色。我假設空白的順序,在你的player.renderSprites()方法下面的行是在那裏的地方。

Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT); //clear the batch 
+0

愣神搜索再次感謝你這麼多 – Luke