Example usage for com.badlogic.gdx.graphics GL20 GL_SRC_COLOR

List of usage examples for com.badlogic.gdx.graphics GL20 GL_SRC_COLOR

Introduction

In this page you can find the example usage for com.badlogic.gdx.graphics GL20 GL_SRC_COLOR.

Prototype

int GL_SRC_COLOR

To view the source code for com.badlogic.gdx.graphics GL20 GL_SRC_COLOR.

Click Source Link

Usage

From source file:com.bitfire.postprocessing.demo.PostProcessing.java

License:Apache License

public void enableBlending() {
    bloom.enableBlending(GL20.GL_SRC_COLOR, GL20.GL_ONE_MINUS_SRC_COLOR);
    blending = true;
}

From source file:com.bitfire.postprocessing.demo.PostProcessing.java

License:Apache License

@Override
public void beforeRenderToScreen() {
    if (blending) {
        Gdx.gl20.glEnable(GL20.GL_BLEND);
        Gdx.gl20.glBlendFunc(GL20.GL_SRC_COLOR, GL20.GL_SRC_ALPHA);
    }
}

From source file:com.box2dLight.box2dLight.LightMap.java

License:Apache License

public void render(Matrix4 combined, float x1, float x2, float y1, float y2) {

    boolean needed = rayHandler.lightRenderedLastFrame > 0;
    // this way lot less binding
    if (needed && rayHandler.blur)
        gaussianBlur();/*from  ww w  .j av a  2 s .co m*/

    if (lightMapDrawingDisabled) {
        return;
    }
    frameBuffer.getColorBufferTexture().bind(0);

    // at last lights are rendered over scene
    if (rayHandler.shadows) {

        final Color c = rayHandler.ambientLight;
        ShaderProgram shader = shadowShader;
        if (RayHandler.isDiffuse) {
            shader = diffuseShader;
            shader.begin();
            Gdx.gl20.glBlendFunc(GL20.GL_DST_COLOR, GL20.GL_SRC_COLOR);
            shader.setUniformf("ambient", c.r, c.g, c.b, c.a);
        } else {
            shader.begin();
            Gdx.gl20.glBlendFunc(GL20.GL_ONE, GL20.GL_ONE_MINUS_SRC_ALPHA);
            shader.setUniformf("ambient", c.r * c.a, c.g * c.a, c.b * c.a, 1f - c.a);
        }
        lightMapMesh.render(shader, GL20.GL_TRIANGLE_FAN);
        shader.end();
    } else if (needed) {

        Gdx.gl.glBlendFunc(GL20.GL_SRC_ALPHA, GL20.GL_ONE);
        withoutShadowShader.begin();
        // withoutShadowShader.setUniformi("u_texture", 0);
        lightMapMesh.render(withoutShadowShader, GL20.GL_TRIANGLE_FAN);
        withoutShadowShader.end();
    }

    Gdx.gl20.glDisable(GL20.GL_BLEND);
}

From source file:headmade.arttag.screens.ArtTagScreen.java

License:Apache License

public ArtTagScreen(DirectedGame game, String map) {
    super(game);// , new Stage(new ExtendViewport(MIN_WORLD_WIDTH, MIN_WORLD_HEIGHT), game.getBatch()));

    fpsLogger = new FPSLogger();

    Player.instance.inventory.clear();// www  . j  a v  a2  s . c o  m
    Player.instance.setControlArtCount(0);
    Player.instance.setArtScanCount(0);
    Player.instance.setArtViewCount(0);
    Player.instance.isMoveDown = false;
    Player.instance.isMoveUp = false;
    Player.instance.isMoveLeft = false;
    Player.instance.isMoveRight = false;

    camera = new OrthographicCamera(MIN_WORLD_WIDTH, MIN_WORLD_HEIGHT);
    ((OrthographicCamera) camera).zoom = 0.5f;

    // perspectiveCam = new PerspectiveCamera(67, Gdx.graphics.getWidth(), Gdx.graphics.getHeight());
    // perspectiveCam.position.set(300f, 3000f, 1000f);
    // perspectiveCam.lookAt(300, 300, 0);
    // perspectiveCam.near = 0.1f;
    // perspectiveCam.far = 10000f;
    // perspectiveCam.update();

    contactListener = new ArtTagContactListener(this);

    this.world = new World(new Vector2(0f, 0f), true);
    world.setContactListener(contactListener);
    world.setDestructionListener(new DestructionListener() {

    });

    /** BOX2D LIGHT STUFF BEGIN */
    rayHandler = new RayHandler(world);
    rayHandler.setAmbientLight(0.08f, 0.08f, 0.16f, 0.1f);
    rayHandler.setBlurNum(ArtTag.gameSettings.blur);
    rayHandler.diffuseBlendFunc.set(GL20.GL_DST_COLOR, GL20.GL_SRC_COLOR);
    // RayHandler.setGammaCorrection(true);
    RayHandler.useDiffuseLight(true);
    // rayHandler.setBlur(false);
    /** BOX2D LIGHT STUFF END */

    shapeRenderer = new ShapeRenderer();
    box2dDebugRenderer = new Box2DDebugRenderer();
    inputController = new ArtTagInputController(game, this);

    jobDescActor = new Label("", Assets.instance.skin, "jobDesc");
    imageActor = new Image(Assets.assetsManager.get(AssetTextures.animal4, Texture.class));
    jobDescActor.setWrap(true);
    instructionsActor = new Label("Instructions", Assets.instance.skin, "info");
    instructionsActor.setWrap(true);
    instructionsActor.setVisible(false);
    resultActor = new Label("Result", Assets.instance.skin, "scanner");
    resultActor.setVisible(false);
    resultActor.setAlignment(Align.center);
    final Label scoreLabel = new Label("Your Score", Assets.instance.skin, "white");
    final Label highscoreLabel = new Label("Highscore", Assets.instance.skin, "white");
    final Label scoreActor = new Label("$" + Player.instance.getCash(), Assets.instance.skin, "dollar");
    final Label highscoreActor = new Label("$" + ArtTag.highScore, Assets.instance.skin, "dollar");

    Gdx.app.log(TAG, "camera.viewportWidth " + camera.viewportWidth + " Gdx.graphics.getWidth(): "
            + Gdx.graphics.getWidth());
    rootTable = new Table(Assets.instance.skin);
    rootTable.setFillParent(true);
    rootTable.add(jobDescActor).pad(10f).width(camera.viewportWidth / ArtTag.UNIT_SCALE / 4);
    rootTable.add(imageActor).center().expand();
    rootTable.add(instructionsActor).top().right().pad(10f).width(camera.viewportWidth / ArtTag.UNIT_SCALE / 4);
    rootTable.row();
    rootTable.add(scoreLabel).left();
    rootTable.add();
    rootTable.add(highscoreLabel).right();
    rootTable.row();
    rootTable.add(scoreActor).left();
    rootTable.add(resultActor).center().width(camera.viewportWidth / ArtTag.UNIT_SCALE / 4);
    rootTable.add(highscoreActor).right();

    stage.addActor(rootTable);

    newJob();
    MapUtils.loadMap(this, map != null ? map : AssetMaps.map1);

    final Loader<Sprite> loader = Assets.instance.getSpriterLoader();
    drawer = new LibGdxDrawer(loader, game.getBatch(), shapeRenderer);
    final headmade.arttag.spriter.Player player = new headmade.arttag.spriter.Player(
            Assets.instance.getMaggieSpriterData());
    player.setAnimation("run");
    player.setScale(ArtTag.UNIT_SCALE * 0.8f);
    players.add(player);

    smokeEffect = new ParticleEffect();
    smokeEffect.load(Gdx.files.internal(AssetParticles.smoke), Assets.instance.atlas);
    smokeEffect.scaleEffect(ArtTag.UNIT_SCALE);
    smokeEffectPool = new ParticleEffectPool(smokeEffect, 2, 4);

}