@Override public void onStart() { this.array_object_builder = this.g.getArrayObjects().arrayObjectNewBuilder(); }
/** * Construct a new empty batch. * * @param in_g A GL interface */ public R2DebugLineSegmentsBatch( final JCGLInterfaceGL33Type in_g) { final JCGLInterfaceGL33Type g33 = NullCheck.notNull(in_g, "GL33"); this.g33_array_buffers = g33.getArrayBuffers(); this.g33_array_objects = g33.getArrayObjects(); this.space_available = 0L; }
@Override public void delete( final JCGLInterfaceGL33Type g) throws R2Exception { NullCheck.notNull(g); if (!this.isDeleted()) { final JCGLArrayObjectsType g_ao = g.getArrayObjects(); final JCGLArrayBuffersType g_ab = g.getArrayBuffers(); g_ab.arrayBufferDelete(this.data_vbo); g_ao.arrayObjectDelete(this.data_vao); } }
@Override public void delete(final JCGLInterfaceGL33Type g) throws R2Exception { if (!this.isDeleted()) { g.getArrayBuffers().arrayBufferDelete(this.array_buffer); g.getArrayObjects().arrayObjectDelete(this.array_object); g.getIndexBuffers().indexBufferDelete(this.index_buffer); } }
@Override public void delete(final JCGLInterfaceGL33Type g) throws R2Exception { if (!this.isDeleted()) { g.getArrayBuffers().arrayBufferDelete(this.array_buffer); g.getArrayObjects().arrayObjectDelete(this.array_object); g.getIndexBuffers().indexBufferDelete(this.index_buffer); } }
@Override public void delete(final JCGLInterfaceGL33Type g) throws R2Exception { NullCheck.notNull(g); if (!this.isDeleted()) { final JCGLArrayObjectsType g_ao = g.getArrayObjects(); final JCGLArrayBuffersType g_ab = g.getArrayBuffers(); g_ab.arrayBufferDelete(this.matrix_vbo); g_ao.arrayObjectDelete(this.matrix_vao); this.disableAll(); } }
@Override public void onStart() { this.shaders = this.g33.getShaders(); this.textures = this.g33.getTextures(); this.array_objects = this.g33.getArrayObjects(); this.draw = this.g33.getDraw(); this.program.onActivate(this.g33); this.program.onReceiveViewValues( this.g33, this.configureViewParameters()); }
@Override public void onFinish(final JCGLInterfaceGL33Type g) { final JCGLArrayBuffersType g_ab = g.getArrayBuffers(); final JCGLArrayObjectsType g_ao = g.getArrayObjects(); final JCGLIndexBuffersType g_ib = g.getIndexBuffers(); final JCGLShadersType g_sh = g.getShaders(); /** * Delete everything. */ g_ib.indexBufferDelete(this.index_buffer); g_ab.arrayBufferDelete(this.array_buffer); g_ao.arrayObjectDelete(this.array_object); g_sh.shaderDeleteProgram(this.program); } }
@Override public void onFinish(final JCGLInterfaceGL33Type g) { final JCGLArrayBuffersType g_ab = g.getArrayBuffers(); final JCGLArrayObjectsType g_ao = g.getArrayObjects(); final JCGLIndexBuffersType g_ib = g.getIndexBuffers(); final JCGLShadersType g_sh = g.getShaders(); /** * Delete everything. */ g_ib.indexBufferDelete(this.index_buffer); g_ab.arrayBufferDelete(this.array_buffer); g_ao.arrayObjectDelete(this.array_object); g_sh.shaderDeleteProgram(this.program); } }
@Override public void delete(final JCGLInterfaceGL33Type g) throws R2Exception { NullCheck.notNull(g); if (!this.isDeleted()) { final JCGLArrayBuffersType ga = g.getArrayBuffers(); final JCGLArrayObjectsType go = g.getArrayObjects(); final JCGLIndexBuffersType gi = g.getIndexBuffers(); ga.arrayBufferDelete(this.array_buffer); gi.indexBufferDelete(this.index_buffer); go.arrayObjectDelete(this.array_object); } }
@Override public void onFinish(final JCGLInterfaceGL33Type g) { final JCGLArrayBuffersType g_ab = g.getArrayBuffers(); final JCGLArrayObjectsType g_ao = g.getArrayObjects(); final JCGLIndexBuffersType g_ib = g.getIndexBuffers(); final JCGLShadersType g_sh = g.getShaders(); /** * Delete everything. */ g_ib.indexBufferDelete(this.index_buffer); g_ab.arrayBufferDelete(this.array_buffer); g_ao.arrayObjectDelete(this.array_object); g_sh.shaderDeleteProgram(this.program); } }
@Override public void onFinish(final JCGLInterfaceGL33Type g) { final JCGLArrayBuffersType g_ab = g.getArrayBuffers(); final JCGLArrayObjectsType g_ao = g.getArrayObjects(); final JCGLIndexBuffersType g_ib = g.getIndexBuffers(); final JCGLShadersType g_sh = g.getShaders(); /** * Delete everything. */ g_ib.indexBufferDelete(this.index_buffer); g_ab.arrayBufferDelete(this.array_buffer); g_ao.arrayObjectDelete(this.array_object); g_sh.shaderDeleteProgram(this.program); } }
private OpaqueConsumer( final JCGLInterfaceGL33Type ig) { this.g33 = NullCheck.notNull(ig); this.shaders = this.g33.getShaders(); this.textures = this.g33.getTextures(); this.array_objects = this.g33.getArrayObjects(); this.draw = this.g33.getDraw(); this.render_state = JCGLRenderStateMutable.create(); this.stencil_state = JCGLStencilStateMutable.create(); this.params_view = R2ShaderParametersViewMutable.create(); this.params_material = R2ShaderParametersMaterialMutable.create(); }
@Override public void onFinish(final JCGLInterfaceGL33Type g) { final JCGLArrayBuffersType g_ab = g.getArrayBuffers(); final JCGLArrayObjectsType g_ao = g.getArrayObjects(); final JCGLIndexBuffersType g_ib = g.getIndexBuffers(); final JCGLShadersType g_sh = g.getShaders(); /** * Delete everything. */ g_ib.indexBufferDelete(this.index_buffer); g_ab.arrayBufferDelete(this.array_buffer); g_ao.arrayObjectDelete(this.array_object); g_sh.shaderDeleteProgram(this.program); } }
@Override public void onFinish(final JCGLInterfaceGL33Type g) { final JCGLArrayBuffersType g_ab = g.getArrayBuffers(); final JCGLArrayObjectsType g_ao = g.getArrayObjects(); final JCGLIndexBuffersType g_ib = g.getIndexBuffers(); final JCGLShadersType g_sh = g.getShaders(); /** * Delete everything. */ g_ib.indexBufferDelete(this.index_buffer); g_ab.arrayBufferDelete(this.array_buffer); g_ao.arrayObjectDelete(this.array_object); g_sh.shaderDeleteProgram(this.program); } }
@Override public void onFinish(final JCGLInterfaceGL33Type g) { final JCGLArrayBuffersType g_ab = g.getArrayBuffers(); final JCGLArrayObjectsType g_ao = g.getArrayObjects(); final JCGLIndexBuffersType g_ib = g.getIndexBuffers(); final JCGLShadersType g_sh = g.getShaders(); /** * Delete everything. */ g_ib.indexBufferDelete(this.index_buffer); g_ab.arrayBufferDelete(this.array_buffer); g_ao.arrayObjectDelete(this.array_object); g_sh.shaderDeleteProgram(this.program); } }
@Override public void onFinish() { final JCGLArrayBuffersType g_ab = this.g.getArrayBuffers(); final JCGLIndexBuffersType g_ib = this.g.getIndexBuffers(); if (!this.errors.isEmpty()) { if (this.array_buffer != null) { g_ab.arrayBufferDelete(this.array_buffer); this.array_buffer = null; } if (this.index_buffer != null) { g_ib.indexBufferDelete(this.index_buffer); this.index_buffer = null; } } g_ab.arrayBufferUpdate(this.array_update); g_ib.indexBufferUpdate(this.index_update); this.array_object = this.g.getArrayObjects().arrayObjectAllocate(this.array_object_builder); }
@Override public void onRender(final JCGLInterfaceGL33Type g) { final JCGLArrayObjectsType g_ao = g.getArrayObjects(); final JCGLClearType g_c = g.getClear(); final JCGLDrawType g_d = g.getDraw(); final JCGLShadersType g_sh = g.getShaders(); /** * Clear the window. */ g_c.clear(this.clear); /** * Activate the program, bind the created array object, draw a triangle. */ g_sh.shaderActivateProgram(this.program); g_ao.arrayObjectBind(this.array_object); g_d.drawElements(JCGLPrimitives.PRIMITIVE_TRIANGLES); g_ao.arrayObjectUnbind(); g_sh.shaderDeactivateProgram(); }
OpaqueConsumer( final JCGLInterfaceGL33Type ig, final R2ShaderInstanceSingleType<PVectorI4F<R2SpaceRGBAType>> in_shader_single, final R2ShaderInstanceBatchedType<PVectorI4F<R2SpaceRGBAType>> in_shader_batched, final R2ShaderInstanceBillboardedType<PVectorI4F<R2SpaceRGBAType>> in_shader_billboarded) { this.g33 = NullCheck.notNull(ig); this.shader_single = NullCheck.notNull(in_shader_single); this.shader_batched = NullCheck.notNull(in_shader_batched); this.shader_billboarded = NullCheck.notNull(in_shader_billboarded); this.shaders = this.g33.getShaders(); this.textures = this.g33.getTextures(); this.array_objects = this.g33.getArrayObjects(); this.draw = this.g33.getDraw(); this.render_state = JCGLRenderStateMutable.create(); this.params_view = R2ShaderParametersViewMutable.create(); this.params_material = R2ShaderParametersMaterialMutable.create(); }
@Test public void testTooMany() { final JCGLContextType c = this.newGL33Context("main", 24, 8); final JCGLInterfaceGL33Type g33 = c.contextGetGL33(); final R2IDPoolType id_pool = R2IDPool.newPool(); final R2UnitQuadType quad = R2UnitQuad.newUnitQuad(g33); final R2InstanceBatchedDynamicType i = R2InstanceBatchedDynamic.newBatch( id_pool, g33.getArrayBuffers(), g33.getArrayObjects(), quad.arrayObject(), 8); for (int index = 0; index < 8; ++index) { i.enableInstance(R2TransformT.newTransform()); } this.expected.expect(R2ExceptionBatchIsFull.class); i.enableInstance(R2TransformT.newTransform()); } }