@Override public void update( final JCGLInterfaceGL33Type g, final R2TransformContextType context) { NullCheck.notNull(context); NullCheck.notNull(g); final JCGLArrayBuffersType g_ab = g.getArrayBuffers(); final JCGLArrayObjectsType g_ao = g.getArrayObjects(); final FloatBuffer floats = this.update_vbo.getData().asFloatBuffer(); for (int index = this.used; index < this.max_size; ++index) { final int offset = Math.multiplyExact(index, 5); floats.put(offset + 0, 0.0f); floats.put(offset + 1, 0.0f); floats.put(offset + 2, 0.0f); floats.put(offset + 3, 0.0f); floats.put(offset + 4, 0.0f); } g_ao.arrayObjectBind(this.data_vao); g_ab.arrayBufferBind(this.data_vbo); g_ab.arrayBufferReallocate(this.data_vbo); g_ab.arrayBufferUpdate(this.update_vbo); g_ao.arrayObjectUnbind(); }
@Test public final void testArrayReallocateNotBound() { final JCGLArrayBuffersType ga = this.getArrayBuffers("main"); final JCGLArrayBufferType a = ga.arrayBufferAllocate(100L, JCGLUsageHint.USAGE_STATIC_DRAW); ga.arrayBufferUnbind(); this.expected.expect(JCGLExceptionBufferNotBound.class); ga.arrayBufferReallocate(a); Assert.fail(); }
@Test public final void testArrayReallocateNotBound() { final JCGLArrayBuffersType ga = this.getArrayBuffers("main"); final JCGLArrayBufferType a = ga.arrayBufferAllocate(100L, JCGLUsageHint.USAGE_STATIC_DRAW); ga.arrayBufferUnbind(); this.expected.expect(JCGLExceptionBufferNotBound.class); ga.arrayBufferReallocate(a); Assert.fail(); }
g_ab.arrayBufferReallocate(this.matrix_vbo); g_ab.arrayBufferUpdate(this.update_vbo); g_ao.arrayObjectUnbind();
@Test public final void testArrayReallocateIdentities() { final JCGLArrayBuffersType ga = this.getArrayBuffers("main"); final JCGLArrayBufferType a = ga.arrayBufferAllocate(100L, JCGLUsageHint.USAGE_STATIC_DRAW); final UnsignedRangeInclusiveL r = a.byteRange(); Assert.assertEquals(0L, r.getLower()); Assert.assertEquals(99L, r.getUpper()); Assert.assertEquals(JCGLUsageHint.USAGE_STATIC_DRAW, a.usageHint()); Assert.assertFalse(a.isDeleted()); ga.arrayBufferReallocate(a); Assert.assertEquals(0L, r.getLower()); Assert.assertEquals(99L, r.getUpper()); Assert.assertEquals(JCGLUsageHint.USAGE_STATIC_DRAW, a.usageHint()); Assert.assertFalse(a.isDeleted()); }
@Test public final void testArrayReallocateIdentities() { final JCGLArrayBuffersType ga = this.getArrayBuffers("main"); final JCGLArrayBufferType a = ga.arrayBufferAllocate(100L, JCGLUsageHint.USAGE_STATIC_DRAW); final UnsignedRangeInclusiveL r = a.getRange(); Assert.assertEquals(0L, r.getLower()); Assert.assertEquals(99L, r.getUpper()); Assert.assertEquals(JCGLUsageHint.USAGE_STATIC_DRAW, a.getUsageHint()); Assert.assertFalse(a.isDeleted()); ga.arrayBufferReallocate(a); Assert.assertEquals(0L, r.getLower()); Assert.assertEquals(99L, r.getUpper()); Assert.assertEquals(JCGLUsageHint.USAGE_STATIC_DRAW, a.getUsageHint()); Assert.assertFalse(a.isDeleted()); }