public void glFinish () { GL11.glFinish(); }
public void glFinish () { GL11.glFinish(); }
public void glFinish () { GL11.glFinish(); }
public void glFinish () { GL11.glFinish(); }
private void renderFinalStereoImage(RenderingStage renderingStage) { // TODO: verify if we can use glCopyTexSubImage2D instead of pass-through shaders, // TODO: in terms of code simplicity and performance. switch (renderingStage) { case LEFT_EYE: vrProvider.updateState(); leftEyeFbo.bind(); glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); renderFullscreenQuad(); break; case RIGHT_EYE: rightEyeFbo.bind(); glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); renderFullscreenQuad(); vrProvider.submitFrame(); GL11.glFinish(); break; } // Bind the default FBO. The DAG does not recognize that this node has // bound a different FBO, so as far as it is concerned, FBO 0 is still // bound. As a result, without the below line, the image is only copied // to the HMD - not to the screen as we would like. To get around this, // we bind the default FBO here at the end. This is a bit brittle // because it assumes that FBO 0 is bound before this node is run. // TODO: break this node into two different nodes that use addDesiredStateChange(BindFbo...)) glBindFramebufferEXT(GL_FRAMEBUFFER_EXT, 0); } }
@Override public void glFinish() { GL11.glFinish(); }
@Override public void glFinish() { GL11.glFinish(); }
@Override public void glFinish() { GL11.glFinish(); }
public void glFinish () { GL11.glFinish(); }
@Override public void glFinish() { GL11.glFinish(); }
public void glFinish () { GL11.glFinish(); }
public void finishGraphics() { GL11.glFinish(); }
public void renderWireframe(){ fft.render(); super.renderWireframe(); // glFinish() important, to prevent conflicts with following compute shaders glFinish(); }
public void render(GLTexture heightmap){ computeShader.bind(); computeShader.updateUniforms(heightmap, N, strength); glBindImageTexture(0, normalmap.getHandle(), 0, false, 0, GL_WRITE_ONLY, GL_RGBA32F); glDispatchCompute(N/16,N/16,1); glFinish(); normalmap.bind(); normalmap.trilinearFilter(); }
public void render(List<FractalMap> fractals){ shader.bind(); shader.updateUniforms(fractals, N); glBindImageTexture(0, fractalmap.getHandle(), 0, false, 0, GL_WRITE_ONLY, GL_RGBA32F); glDispatchCompute(N/16,N/16,1); glFinish(); fractalmap.bind(); fractalmap.bilinearFilter(); }
public void render(GLTexture normalmap, GLTexture heightmap, float yScale){ shader.bind(); shader.updateUniforms(normalmap, heightmap, N, yScale); glBindImageTexture(0, splatmap.getHandle(), 0, false, 0, GL_WRITE_ONLY, GL_RGBA16F); glDispatchCompute(N/16,N/16,1); glFinish(); splatmap.bind(); splatmap.bilinearFilter(); }
public void render(GLTexture sceneSampler) { contrastShader.bind(); glBindImageTexture(0, sceneSampler.getHandle(), 0, false, 0, GL_READ_ONLY, GL_RGBA16F); glBindImageTexture(1, contrastTexture.getHandle(), 0, false, 0, GL_WRITE_ONLY, GL_RGBA16F); contrastShader.updateUniforms(contrastFactor, brightnessFactor); glDispatchCompute(BaseContext.getWindow().getWidth()/16, BaseContext.getWindow().getHeight()/16, 1); glFinish(); }
public void render(float t) { shader.bind(); shader.updateUniforms(L,N,t); glBindImageTexture(0, imageDyCoeficcients.getHandle(), 0, false, 0, GL_READ_WRITE, GL_RGBA32F); glBindImageTexture(1, imageDxCoefficients.getHandle(), 0, false, 0, GL_READ_WRITE, GL_RGBA32F); glBindImageTexture(2, imageDzCoefficients.getHandle(), 0, false, 0, GL_READ_WRITE, GL_RGBA32F); glBindImageTexture(3, imageH0k.getHandle(), 0, false, 0, GL_READ_ONLY, GL_RGBA32F); glBindImageTexture(4, imageH0minusK.getHandle(), 0, false, 0, GL_READ_ONLY, GL_RGBA32F); glDispatchCompute(N/16,N/16,1); glFinish(); } }
public void render(GLTexture sceneTexture, GLTexture sceneDepthMap) { underWaterShader.bind(); glBindImageTexture(0, sceneTexture.getHandle(), 0, false, 0, GL_READ_ONLY, GL_RGBA16F); glBindImageTexture(1, underwaterSceneTexture.getHandle(), 0, false, 0, GL_WRITE_ONLY, GL_RGBA16F); underWaterShader.updateUniforms(sceneDepthMap); glDispatchCompute(BaseContext.getWindow().getWidth()/8, BaseContext.getWindow().getHeight()/8, 1); glFinish(); distortion += distortion_delta; GLContext.getResources().setUnderwaterDistortion(distortion); }
public void render(GLTexture sceneSampler, GLTexture lightScatteringMask) { lightScatteringShader.bind(); glBindImageTexture(0, lightScatteringMask.getHandle(), 0, false, 0, GL_READ_ONLY, GL_RGBA16F); glBindImageTexture(1, sunLightScatteringTexture.getHandle(), 0, false, 0, GL_WRITE_ONLY, GL_RGBA16F); lightScatteringShader.updateUniforms(BaseContext.getWindow().getWidth(), BaseContext.getWindow().getHeight(), BaseContext.getCamera().getViewProjectionMatrix()); glDispatchCompute(BaseContext.getWindow().getWidth()/8, BaseContext.getWindow().getHeight()/8, 1); glFinish(); additiveBlendShader.bind(); glBindImageTexture(0, sunLightScatteringTexture.getHandle(), 0, false, 0, GL_READ_ONLY, GL_RGBA16F); glBindImageTexture(1, sceneSampler.getHandle(), 0, false, 0, GL_READ_ONLY, GL_RGBA16F); glBindImageTexture(2, sunLightScatteringSceneTexture.getHandle(), 0, false, 0, GL_WRITE_ONLY, GL_RGBA16F); glDispatchCompute(BaseContext.getWindow().getWidth()/8, BaseContext.getWindow().getHeight()/8, 1); glFinish(); }