2015-08-14 38 views
1

我正在使用libgdx-contribs/postprocessing在我的libgdx應用程序中爲形狀添加bloom效果。在libgdx中使用box2dlights的後期處理特效

box2dlights對於一些燈光和陰影。

我的目標是呈現box2d世界並應用燈光和陰影,然後使用bloom效果再次渲染所有形狀。

但是當我運行下面的代碼時,我只能看到具有bloom效果的形狀。沒有box2d燈光或陰影正在投射。

任何想法爲什麼?

@Override 
public void render(float delta) { 

    // render box2d lights/shadows 
    for (Body body : bodies) { 
     ((Shape) body.getUserData()).draw(
       shapeRenderer, 
       body.getPosition()); 
    } 

    rayHandler.setCombinedMatrix(camera); 
    rayHandler.updateAndRender(); 

    // apply post processing effects (bloom) 
    game.getPostProcessor().capture(); 
    for (Body body : bodies) { 
     ((Shape) body.getUserData()).draw(
       shapeRenderer, 
       body.getPosition()); 
    } 
    game.getPostProcessor().render(); 
} 

回答

0

嘗試用:

game.getPostProcessor().enableBlending(); 

在你的渲染方法。顯然here他們有同樣的問題指向this example

+1

乾杯!這是最終的解決方案:'bloom.enableBlending(GL20.GL_ONE,GL20.GL_ONE_MINUS_SRC_COLOR);' – bobbyrne01