public static void setClippingEnabled(final RendererRecord rendRecord, final boolean enabled) { if (enabled && (!rendRecord.isClippingTestValid() || !rendRecord.isClippingTestEnabled())) { GL11C.glEnable(GL11C.GL_SCISSOR_TEST); rendRecord.setClippingTestEnabled(true); } else if (!enabled && (!rendRecord.isClippingTestValid() || rendRecord.isClippingTestEnabled())) { GL11C.glDisable(GL11C.GL_SCISSOR_TEST); rendRecord.setClippingTestEnabled(false); } rendRecord.setClippingTestValid(true); } }
@Override public void invalidate() { invalidateMatrix(); invalidateVBO(); _drawBufferTarget = null; _clippingTestValid = false; _texturesValid = false; _normalMode = -1; _currentTextureArraysUnit = -1; }
protected RendererRecord createRendererRecord() { final RendererRecord rendererRecord = new RendererRecord(); return rendererRecord; }
public static void setBoundElementVBO(final RendererRecord rendRecord, final int id) { if (!rendRecord.isElementVboValid() || rendRecord.getCurrentElementVboId() != id) { ARBBufferObject.glBindBufferARB(ARBVertexBufferObject.GL_ELEMENT_ARRAY_BUFFER_ARB, id); rendRecord.setCurrentElementVboId(id); rendRecord.setElementVboValid(true); } }
public void popClip() { final RenderContext context = ContextManager.getCurrentContext(); final RendererRecord record = context.getRendererRecord(); record.getScissorClips().pop(); LwjglRendererUtil.applyScissors(record); }
@Override public void setDrawBuffer(final DrawBufferTarget target) { final RendererRecord record = ContextManager.getCurrentContext().getRendererRecord(); if (record.getDrawBufferTarget() != target) { int buffer = GL11C.GL_BACK; switch (target) { record.setDrawBufferTarget(target);
public static int setupVBO(final AbstractBufferData<? extends Buffer> data, final RenderContext context) { if (data == null) { return 0; } final GL gl = GLContext.getCurrentGL(); final RendererRecord rendRecord = context.getRendererRecord(); int vboID = data.getVBOID(context.getGlContextRep()); if (vboID != 0) { updateVBO(data, rendRecord, vboID, 0); return vboID; } final Buffer dataBuffer = data.getBuffer(); if (dataBuffer != null) { // XXX: should we be rewinding? Maybe make that the programmer's responsibility. dataBuffer.rewind(); vboID = makeVBOId(); data.setVBOID(context.getGlContextRep(), vboID); rendRecord.invalidateVBO(); JoglRendererUtil.setBoundVBO(rendRecord, vboID); gl.glBufferData(GL.GL_ARRAY_BUFFER, dataBuffer.limit() * data.getByteCount(), dataBuffer, getGLVBOAccessMode(data.getVboAccessMode())); } else { throw new Ardor3dException("Attempting to create a vbo id for an AbstractBufferData with no Buffer value."); } return vboID; }
public boolean isClipTestEnabled() { final RenderContext context = ContextManager.getCurrentContext(); final RendererRecord record = context.getRendererRecord(); return record.isClippingTestEnabled(); }
record.setClippingTestEnabled(true);
record.setClippingTestValid(false);
public void pushClip(final ReadOnlyRectangle2 rectangle) { final RenderContext context = ContextManager.getCurrentContext(); final RendererRecord record = context.getRendererRecord(); record.getScissorClips().push(rectangle); LwjglRendererUtil.applyScissors(record); }
public static void setBoundElementVBO(final RendererRecord rendRecord, final int id) { final GL gl = GLContext.getCurrentGL(); if (!rendRecord.isElementVboValid() || rendRecord.getCurrentElementVboId() != id) { gl.glBindBuffer(GL.GL_ELEMENT_ARRAY_BUFFER, id); rendRecord.setCurrentElementVboId(id); rendRecord.setElementVboValid(true); } }
public void setDrawBuffer(final DrawBufferTarget target) { final RendererRecord record = ContextManager.getCurrentContext().getRendererRecord(); if (record.getDrawBufferTarget() != target) { int buffer = GL11.GL_BACK; switch (target) { record.setDrawBufferTarget(target);
data.setVBOID(context.getGlContextRep(), vboID); rendRecord.invalidateVBO(); JoglRendererUtil.setBoundElementVBO(rendRecord, vboID); gl.glBufferData(GL.GL_ELEMENT_ARRAY_BUFFER, dataBuffer.limit() * data.getByteCount(), dataBuffer,
@Override public boolean isClipTestEnabled() { final RenderContext context = ContextManager.getCurrentContext(); final RendererRecord record = context.getRendererRecord(); return record.isClippingTestEnabled(); }
record.setClippingTestEnabled(true);
record.setClippingTestValid(false);
public static void setClippingEnabled(final RendererRecord rendRecord, final boolean enabled) { if (enabled && (!rendRecord.isClippingTestValid() || !rendRecord.isClippingTestEnabled())) { GL11.glEnable(GL11.GL_SCISSOR_TEST); rendRecord.setClippingTestEnabled(true); } else if (!enabled && (!rendRecord.isClippingTestValid() || rendRecord.isClippingTestEnabled())) { GL11.glDisable(GL11.GL_SCISSOR_TEST); rendRecord.setClippingTestEnabled(false); } rendRecord.setClippingTestValid(true); } }
@Override public void popClip() { final RenderContext context = ContextManager.getCurrentContext(); final RendererRecord record = context.getRendererRecord(); record.getScissorClips().pop(); applyScissors(record); }
public void setDrawBuffer(final DrawBufferTarget target) { final RendererRecord record = ContextManager.getCurrentContext().getRendererRecord(); if (record.getDrawBufferTarget() != target) { int buffer = GL.GL_BACK; switch (target) { gl.getGL2GL3().glDrawBuffer(buffer); record.setDrawBufferTarget(target);