List of usage examples for com.badlogic.gdx.graphics GL20 GL_DEPTH_BUFFER_BIT
int GL_DEPTH_BUFFER_BIT
To view the source code for com.badlogic.gdx.graphics GL20 GL_DEPTH_BUFFER_BIT.
Click Source Link
From source file:com.bladecoder.engine.model.Sprite3DRenderer.java
License:Apache License
/** * Render the 3D model into the texture//from w ww.j a v a 2s. c om */ private void renderTex() { updateViewport(); fb.begin(); Gdx.gl.glClearColor(0, 0, 0, 0); Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT | GL20.GL_DEPTH_BUFFER_BIT); drawModel(); fb.end((int) VIEWPORT.x, (int) VIEWPORT.y, (int) VIEWPORT.width, (int) VIEWPORT.height); }
From source file:com.bladecoder.engine.model.Sprite3DRenderer.java
License:Apache License
@Override public void draw(SpriteBatch batch, float x, float y, float scale) { x = x - getWidth() / 2 * scale;//from w ww .j a va2 s .c o m if (USE_FBO) { batch.draw(tex, x, y, 0, 0, width, height, scale, scale, 0); } else { float p0x, p0y, pfx, pfy; Vector3 tmp = new Vector3(); // TODO Make static for performance? updateViewport(); // get screen coords for x and y tmp.set(x, y, 0); tmp.mul(batch.getTransformMatrix()); tmp.prj(batch.getProjectionMatrix()); p0x = VIEWPORT.width * (tmp.x + 1) / 2; p0y = VIEWPORT.height * (tmp.y + 1) / 2; tmp.set(x + width * scale, y + height * scale, 0); tmp.mul(batch.getTransformMatrix()); tmp.prj(batch.getProjectionMatrix()); pfx = VIEWPORT.width * (tmp.x + 1) / 2; pfy = VIEWPORT.height * (tmp.y + 1) / 2; batch.end(); Gdx.gl20.glViewport((int) (p0x + VIEWPORT.x), (int) (p0y + VIEWPORT.y), (int) (pfx - p0x), (int) (pfy - p0y)); Gdx.gl.glClear(GL20.GL_DEPTH_BUFFER_BIT | (Gdx.graphics.getBufferFormat().coverageSampling ? GL20.GL_COVERAGE_BUFFER_BIT_NV : 0)); drawModel(); Gdx.gl20.glViewport((int) VIEWPORT.x, (int) VIEWPORT.y, (int) VIEWPORT.width, (int) VIEWPORT.height); batch.begin(); } }
From source file:com.blastedstudios.ledge.ui.postprocessing.PostProcessor.java
License:Apache License
/** Construct a new PostProcessor with the given parameters and the specified texture wrap mode */ public PostProcessor(int fboWidth, int fboHeight, boolean useDepth, boolean useAlphaChannel, boolean use32Bits, TextureWrap u, TextureWrap v) {/*ww w. ja va 2 s . c o m*/ if (use32Bits) { if (useAlphaChannel) { fbFormat = Format.RGBA8888; } else { fbFormat = Format.RGB888; } } else { if (useAlphaChannel) { fbFormat = Format.RGBA4444; } else { fbFormat = Format.RGB565; } } composite = newPingPongBuffer(fboWidth, fboHeight, fbFormat, useDepth); setBufferTextureWrap(u, v); pipelineState = new PipelineState(); capturing = false; hasCaptured = false; enabled = true; this.useDepth = useDepth; if (useDepth) { clearBits |= GL20.GL_DEPTH_BUFFER_BIT; } setViewport(null); }
From source file:com.cyphercove.doublehelix.MainRenderer.java
License:Apache License
@Override public void draw(float deltaTime, float xOffsetFake, float xOffsetLooping, float xOffsetSmooth, float yOffset) { deltaTime = Math.min(deltaTime, MAX_FRAME_TIME); if (screenshotPause) deltaTime = 0;//w w w . j av a 2 s . c om float _xOffset = isPreview ? 0.5f : (Settings.pseudoScrolling ? xOffsetFake : (Settings.smoothScrolling ? xOffsetSmooth : xOffsetLooping)); GL20 gl = Gdx.gl; if (!firstFrameDrawn) { gl.glViewport(0, 0, Gdx.graphics.getWidth(), Gdx.graphics.getHeight()); gl.glClearColor(0, 0, 0, 1); gl.glClear(GL20.GL_COLOR_BUFFER_BIT | GL20.GL_DEPTH_BUFFER_BIT); firstFrameDrawn = true; return; } if (needFinishCreate) { finishCreate(); //film grain wasn't created til now so need to initialize its size filmGrain.resize(Gdx.graphics.getWidth(), Gdx.graphics.getHeight()); filmGrainForBloom.resize(Gdx.graphics.getWidth(), Gdx.graphics.getHeight()); } if (settingsAdapter != null) settingsAdapter.updateInLoop(deltaTime); //UPDATES Texture.TextureFilter particleMinFilter = Settings.trilinearParticles ? Texture.TextureFilter.MipMapLinearLinear : Texture.TextureFilter.MipMapLinearNearest; particleATexture.setFilter(particleMinFilter, Texture.TextureFilter.Linear); particlePointTexture.setFilter(particleMinFilter, Texture.TextureFilter.Linear); mainHelixTransformManager.localEulers.z += deltaTime * MAIN_HELIX_ROTATION_DPS * Settings.speed; mainHelixTransformManager.apply(); rearHelixTransformManager.localEulers.z += deltaTime * 0.5f * MAIN_HELIX_ROTATION_DPS * Settings.speed; rearHelixTransformManager.apply(); cam.up.set(0, 1, 0); cam.direction.set(0, 0, -1); cam.rotate(-41.998f, 1, 0, 0); cam.rotate(146.964f, 0, 1, 0); cam.rotate(18.503f, 0, 0, 1); camPosition.set(0.45617f, 4.11359f, 0.14467f); //set it here and reapply when needed. if (cam.viewportWidth > cam.viewportHeight) {//landscape camPosition.rotate(Vector3.Z, -(_xOffset - 0.5f) * 47.5f - 15.0f); } else {//portrait camPosition.rotate(Vector3.Z, -(_xOffset - 0.5f) * 65f); } cam.position.set(camPosition); //temporarily apply it to get correct direction with lookAt cam.lookAt(-.4703f, 0f, 3.5032f); sssShader.lightDirection.set(1, 0, 0).rotate(Vector3.Y, lightH).rotate(Vector3.X, lightV); particles.update(deltaTime, sssShader.lightDirection); //MUST BE DONE WHILE CAM IS IN POSITION backgroundShader.color.set(Settings.backgroundColor); //BLOOM SURFACE DRAWING if (Settings.bloom) { bloom.begin(); cam.position.set(0, 0, 0); cam.update(); modelBatch.begin(cam); modelBatch.render(backgroundBloomModelInstance, unlitShader); modelBatch.end(); cam.position.set(camPosition); cam.update(); modelBatch.begin(cam); modelBatch.render(mainHelixModelInstance, blackShader); modelBatch.render(rearHelixModelInstance, blackShader); modelBatch.end(); bloom.end(); } //BLUR SURFACE DRAWING if (Settings.dof) { rearDOFBlur.setClearColor(tmpColor.set(Settings.backgroundColor).mul(AMBIENT_BRIGHTNESS)); rearDOFBlur.begin(); modelBatch.begin(cam); modelBatch.render(backgroundModelInstance, backgroundShader); modelBatch.end(); cam.position.set(camPosition); cam.update(); sssShader.setShouldFadeEnds(true); modelBatch.begin(cam); modelBatch.render(rearHelixModelInstance, sssShader); modelBatch.end(); rearDOFBlur.end(); } //MAIN DRAWING Gdx.gl.glClearColor(Settings.backgroundColor.r, Settings.backgroundColor.g, Settings.backgroundColor.b, 1); Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT | GL20.GL_DEPTH_BUFFER_BIT); if (Settings.dof) { rearDOFBlur.render(); } else { modelBatch.begin(cam); modelBatch.render(backgroundModelInstance, backgroundShader); modelBatch.end(); } cam.position.set(camPosition); cam.update(); sssShader.setShouldFadeEnds(false); modelBatch.begin(cam); modelBatch.render(mainHelixModelInstance, sssShader); modelBatch.end(); if (!Settings.dof) { sssShader.setShouldFadeEnds(true); modelBatch.begin(cam); modelBatch.render(rearHelixModelInstance, sssShader); modelBatch.end(); } boolean doFilmGrain = Settings.filmGrain || Settings.scanLines || Settings.vignette; if (Settings.bloom) { if (doFilmGrain) { bloom.setCustomShaderPreparer(filmGrainForBloom); bloom.render(filmGrainForBloom.filmGrainShaderProgram); } else { bloom.setCustomShaderPreparer(null); bloom.render(bloomShaderProgram); } } else if (doFilmGrain) { filmGrain.render(); } particles.draw(decalBatch, billboardDecalBatch); fader.render(deltaTime); }
From source file:com.gamemaker.gameworld.GameRenderer.java
License:Apache License
public void render(float runTime, float delta) { Gdx.app.log("GameRenderer", "render"); Gdx.gl.glClearColor(0, 0, 0, 1);//ww w . j a v a2s . co m Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT | GL20.GL_DEPTH_BUFFER_BIT); if (myWorld.isGameOver()) { drawGameOver(delta); } else if (myWorld.isMap1()) { drawMap1(runTime); } else if (myWorld.isMap6()) { drawMap6(runTime); } else if (myWorld.isLevel1()) { drawLevel1(runTime); } else { drawLevelFin(runTime, delta); } }
From source file:com.gamemaker.screens.AboutScreen.java
License:Apache License
public void draw(float deltaTime) { Gdx.gl.glClearColor(0, 0, 0, 1);/*from w w w . ja v a 2 s . c om*/ Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT | GL20.GL_DEPTH_BUFFER_BIT); batcher.begin(); //batcher.disableBlending() batcher.draw(menuBG, 0, 0, 1280, 720); layout.setText(font3, "COPYRIGHT 2016 EndlessRunner Tjinari "); font3.draw(batcher, layout, 300, 120); layout.setText(font3, "All rights reserved "); font3.draw(batcher, layout, 300, 220); layout.setText(font3, "Programming team: Jixuan Cao; Qiancheng Wang; Shuaichen Song; Jaimou Sun "); font3.draw(batcher, layout, 150, 320); layout.setText(font3, "Artist: Conor Tow"); font3.draw(batcher, layout, 300, 420); layout.setText(font3, "Bands: "); font3.draw(batcher, layout, 300, 520); //batcher.draw(menuTitle1,295,100,650,150); //batcher.draw(menuStart,520,340,200,200); //batcher.draw(menuTitle2,500,400,230,75);//half size of original image drawButton(); batcher.end(); }
From source file:com.gamemaker.screens.GameOverScreen.java
License:Apache License
public void draw(float deltaTime) { Gdx.gl.glClearColor(0, 0, 0, 1);// w w w .ja va 2s. c om Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT | GL20.GL_DEPTH_BUFFER_BIT); batcher.begin(); //batcher.disableBlending(); batcher.draw(menuBG, 0, 0, 1280, 720); batcher.draw(menuTitle1, 40, 180, 650, 150); batcher.draw(menuStart, 520, 340, 200, 200); batcher.draw(menuTitle2, 720, 180, 460, 150); batcher.end(); }
From source file:com.gamemaker.screens.HowtoplayScreen.java
License:Apache License
public void draw(float delta) { Gdx.gl.glClearColor(0, 0, 0, 1);//from w ww . j ava 2 s.com Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT | GL20.GL_DEPTH_BUFFER_BIT); batcher.begin(); //batcher.disableBlending(); batcher.draw(mapBg, 0, 0, 1280, 720); // batcher.draw(introText, 0, 0, 1280, 720); drawButton(delta); batcher.end(); }
From source file:com.gamemaker.screens.IntroScreen.java
License:Apache License
public void draw(float deltaTime) { Gdx.gl.glClearColor(0, 0, 0, 1);/* w ww .ja v a 2 s.c om*/ Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT | GL20.GL_DEPTH_BUFFER_BIT); batcher.begin(); //batcher.disableBlending(); batcher.draw(mapBg, 0, 0, 1280, 720); batcher.draw(introText, 0, 0, 1280, 720); batcher.end(); }
From source file:com.gamemaker.screens.MenuScreen.java
License:Apache License
public void draw(float deltaTime) { Gdx.gl.glClearColor(0, 0, 0, 1);/*from w ww . ja va 2s.co m*/ Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT | GL20.GL_DEPTH_BUFFER_BIT); batcher.begin(); //batcher.disableBlending(); batcher.draw(menuBG, 0, 0, 1280, 720); batcher.draw(menuTitle1, 295, 100, 650, 150); //batcher.draw(menuStart,520,340,200,200); //batcher.draw(menuTitle2,500,400,230,75);//half size of original image drawButton(); batcher.end(); }