@Override public void setDepthFunc(int func) { gl.glDepthFunc(func); }
/** * @param func * @see com.jogamp.opengl.GL#glDepthFunc(int) */ public void glDepthFunc(int func) { try{delegate.glDepthFunc(func);} catch(GLException e){glException(e); throw e;} } /**
@Override public void draw( final JCameraReadableSnapshotType s, final Optional<Vector3D> target) { final GL3 g = this.gl; if (g != null) { this.view = s.cameraMakeViewMatrix(); g.glClearDepth(1.0); g.glClearColor(0.0f, 0.0f, 0.2f, 1.0f); g.glClear(GL.GL_COLOR_BUFFER_BIT | GL.GL_DEPTH_BUFFER_BIT | GL.GL_STENCIL_BUFFER_BIT); g.glEnable(GL.GL_DEPTH_TEST); g.glDepthFunc(GL.GL_LEQUAL); g.glDisable(GL.GL_CULL_FACE); this.drawGround(g); this.drawSceneQuads(g); target.ifPresent(pos -> this.drawSceneTarget(g, pos)); } if (this.want_warp.get()) { final Window w = this.window; if (w != null) { w.warpPointer(w.getWidth() / 2, w.getHeight() / 2); this.want_warp.set(false); } } }
@Override public void apply(GL3 gl, Collection<SoundEvent> events, double bufferStartTimeSeconds) { gl.glLineWidth(1); gl.glDisable(GL3.GL_LINE_SMOOTH); gl.glDisable(GL3.GL_CULL_FACE); gl.glEnable(GL3.GL_BLEND); gl.glDepthFunc(GL3.GL_ALWAYS); //gl.glProvokingVertex(GL3.GL_FIRST_VERTEX_CONVENTION); gl.glDepthMask(false); gl.glBlendFunc(GL3.GL_ONE, GL3.GL_ONE); soundProgram.use(); //assert vertexIDAttribLocation != -1:"VertexIDAttribLocation failed to init!"; //gl.glBindBuffer(GL3.GL_ARRAY_BUFFER, vertexBufferID); // gl.glEnableVertexAttribArray(vertexIDAttribLocation); //gl.glVertexAttribPointer(vertexIDAttribLocation, 1, GL3.GL_FLOAT, false, 0, 0); soundTextureU.set((int)0); for(SoundEvent ev:events) ev.apply(gl, bufferStartTimeSeconds); //Cleanup //gl.glDisableVertexAttribArray(vertexIDAttribLocation); gl.glBindBuffer(GL3.GL_ARRAY_BUFFER, 0); gl.glBlendFunc(GL2.GL_SRC_ALPHA, GL2.GL_ONE_MINUS_SRC_ALPHA); gl.glDisable(GL3.GL_BLEND); gl.glUseProgram(0); }//end apply(...)
gl.glDepthFunc(GL3.GL_LESS); gl.glEnable(GL3.GL_DEPTH_TEST); gl.glEnable(GL3.GL_DEPTH_CLAMP); gl.glDisable(GL3.GL_CULL_FACE); gl.glDepthRange(0, 1); gl.glDepthFunc(GL3.GL_LEQUAL); gl.glDrawArrays(GL3.GL_TRIANGLES, numOpaqueVertices, numOpaqueUnoccludedVertices); gl.glDisable(GL3.GL_DEPTH_CLAMP); gl.glDepthRange(0, 1); gl.glDepthFunc(GL3.GL_LEQUAL);
gl.glDepthFunc(GL2.GL_LESS); gl.glBlendFunc(GL2.GL_SRC_ALPHA, GL2.GL_ONE_MINUS_SRC_ALPHA); gl.glClear(GL3.GL_COLOR_BUFFER_BIT);