static JCGLTexture2DType newTexture2D( final JCGLInterfaceGL33Type g, final JCGLTextureFormat f, final int w, final int h, final JCGLTextureUnitType u) { final JCGLTexturesType gt = g.getTextures(); final JCGLTexture2DType t = gt.texture2DAllocate( u, (long) w, (long) h, f, JCGLTextureWrapS.TEXTURE_WRAP_CLAMP_TO_EDGE, JCGLTextureWrapT.TEXTURE_WRAP_CLAMP_TO_EDGE, JCGLTextureFilterMinification.TEXTURE_FILTER_NEAREST, JCGLTextureFilterMagnification.TEXTURE_FILTER_NEAREST); final JCGLTexture2DUpdateType up = JCGLTextureUpdates.newUpdateReplacingAll2D(t); final ByteBuffer data = up.getData(); for (int index = 0; index < data.capacity(); ++index) { data.put(index, (byte) 0); } gt.texture2DUpdate(u, up); gt.textureUnitUnbind(u); return t; } }
static JCGLTexture2DType newTexture2D( final JCGLInterfaceGL33Type g, final JCGLTextureFormat f, final int w, final int h, final JCGLTextureUnitType u) { final JCGLTexturesType gt = g.textures(); final JCGLTexture2DType t = gt.texture2DAllocate( u, (long) w, (long) h, f, JCGLTextureWrapS.TEXTURE_WRAP_CLAMP_TO_EDGE, JCGLTextureWrapT.TEXTURE_WRAP_CLAMP_TO_EDGE, JCGLTextureFilterMinification.TEXTURE_FILTER_NEAREST, JCGLTextureFilterMagnification.TEXTURE_FILTER_NEAREST); final JCGLTexture2DUpdateType up = JCGLTextureUpdates.newUpdateReplacingAll2D(t); final ByteBuffer data = up.data(); for (int index = 0; index < data.capacity(); ++index) { data.put(index, (byte) 0); } gt.texture2DUpdate(u, up); gt.textureUnitUnbind(u); return t; } }
JCGLTextureUpdates.newUpdateReplacingAll2D(ta); Assert.assertEquals(ta, up.getTexture()); new UnsignedRangeInclusiveL(0L, 127L), new UnsignedRangeInclusiveL(0L, 255L)); Assert.assertEquals(expected_area, up.getArea()); final ByteBuffer data = up.getData(); final long expected_size = 128L * 256L * 4L; Assert.assertEquals(expected_size, (long) data.capacity()); final UnsignedRangeInclusiveL expected_range = new UnsignedRangeInclusiveL(0L, expected_size - 1L); Assert.assertEquals(expected_range, up.getDataUpdateRange());
@Test public final void testTexture2DUpdateAllIdentities() { final JCGLTexturesType t = this.getTextures("main"); final List<JCGLTextureUnitType> us = t.textureGetUnits(); final JCGLTextureUnitType u = us.get(0); final JCGLTexture2DType ta = t.texture2DAllocate( u, 128L, 256L, JCGLTextureFormat.TEXTURE_FORMAT_RGBA_8_4BPP, JCGLTextureWrapS.TEXTURE_WRAP_REPEAT, JCGLTextureWrapT.TEXTURE_WRAP_REPEAT, JCGLTextureFilterMinification.TEXTURE_FILTER_LINEAR, JCGLTextureFilterMagnification.TEXTURE_FILTER_LINEAR); final JCGLTexture2DUpdateType up = JCGLTextureUpdates.newUpdateReplacingAll2D(ta); Assert.assertEquals(ta, up.texture()); final AreaL expected_area = AreasL.create(0L, 0L, 128L, 256L); Assert.assertEquals(expected_area, up.area()); final ByteBuffer data = up.data(); final long expected_size = 128L * 256L * 4L; Assert.assertEquals(expected_size, (long) data.capacity()); final UnsignedRangeInclusiveL expected_range = new UnsignedRangeInclusiveL(0L, expected_size - 1L); Assert.assertEquals(expected_range, up.dataUpdateRange()); }
NullCheck.notNull(unit); final JCGLTexture2DUsableType texture = data.getTexture(); FakeTextures.checkTextureUnit(this.context, unit); FakeTextures.checkTexture2D(this.context, texture); final AreaInclusiveUnsignedLType source_area = data.getArea(); final AreaInclusiveUnsignedLType texture_area = texture.textureGetArea(); final FakeTexture2D ft = (FakeTexture2D) data.getTexture(); final ByteBuffer target_data = ft.getData(); final long source_min_y = source_range_y.getLower(); final long source_height = source_range_y.getInterval(); final ByteBuffer source_data = data.getData();
NullCheck.notNull(unit, "Unit"); final JCGLTexture2DUsableType texture = data.texture(); checkTextureUnit(this.context, unit); checkTexture2D(this.context, texture); final AreaL update_area = data.area(); final AreaL texture_area = AreaSizesL.area(texture.size()); final FakeTexture2D ft = (FakeTexture2D) data.texture(); final ByteBuffer target_data = ft.getData(); final long source_min_y = update_area.minimumY(); final long source_height = update_area.height(); final ByteBuffer source_data = data.data();
final List<JCGLTextureUnitType> us = gt.textureGetUnits(); final JCGLTextureUnitType u0 = us.get(0); gt.texture2DBind(u0, up.getTexture()); gt.texture2DUpdate(u0, up); return (JCGLTexture2DType) up.getTexture(); }));
@Test public final void testTexture2DUpdateAreaIdentities() { final JCGLTexturesType t = this.getTextures("main"); final List<JCGLTextureUnitType> us = t.textureGetUnits(); final JCGLTextureUnitType u = us.get(0); final JCGLTexture2DType ta = t.texture2DAllocate( u, 512L, 512L, JCGLTextureFormat.TEXTURE_FORMAT_R_8_1BPP, JCGLTextureWrapS.TEXTURE_WRAP_REPEAT, JCGLTextureWrapT.TEXTURE_WRAP_REPEAT, JCGLTextureFilterMinification.TEXTURE_FILTER_LINEAR, JCGLTextureFilterMagnification.TEXTURE_FILTER_LINEAR); final AreaL expected_area = AreasL.create(128L, 128L, 128L, 128L); final JCGLTexture2DUpdateType up = JCGLTextureUpdates.newUpdateReplacingArea2D(ta, expected_area); Assert.assertEquals(ta, up.texture()); Assert.assertEquals(expected_area, up.area()); final ByteBuffer data = up.data(); final long expected_size = 128L * 128L; Assert.assertEquals(expected_size, (long) data.capacity()); final UnsignedRangeInclusiveL expected_range = new UnsignedRangeInclusiveL(0L, expected_size - 1L); Assert.assertEquals(expected_range, up.dataUpdateRange()); }
NullCheck.notNull(unit); final JCGLTexture2DUsableType texture = data.getTexture(); LWJGL3Textures.checkTextureUnit(this.context, unit); LWJGL3Textures.checkTexture2D(this.context, texture); final AreaInclusiveUnsignedLType update_area = data.getArea(); final JCGLTextureFormat format = texture.textureGetFormat(); final LWJGL3TextureSpec spec = LWJGL3TextureSpecs.getTextureSpec(format); final ByteBuffer buffer = data.getData();
NullCheck.notNull(unit, "Unit"); final JCGLTexture2DUsableType texture = data.texture(); checkTextureUnit(this.context, unit); checkTexture2D(this.context, texture); final AreaL update_area = data.area(); final AreaL texture_area = AreaSizesL.area(texture.size()); final ByteBuffer buffer = data.data();
Assert.assertEquals(tt, u.texture());
Assert.assertEquals(tt, u.getTexture());
final ByteBuffer data = up.getData(); Assert.assertEquals(512L * 512L * 4L, (long) data.capacity()); for (int index = 0; index < data.capacity(); ++index) {
JCGLTextureUpdates.newUpdateReplacingArea2D(ta, expected_area); Assert.assertEquals(ta, up.getTexture()); Assert.assertEquals(expected_area, up.getArea()); final ByteBuffer data = up.getData(); final long expected_size = 128L * 128L; Assert.assertEquals(expected_size, (long) data.capacity()); final UnsignedRangeInclusiveL expected_range = new UnsignedRangeInclusiveL(0L, expected_size - 1L); Assert.assertEquals(expected_range, up.getDataUpdateRange());
final ByteBuffer data = up.data(); Assert.assertEquals(512L * 512L * 4L, (long) data.capacity()); for (int index = 0; index < data.capacity(); ++index) {
final ByteBuffer data = up.getData(); for (int index = 0; index < data.capacity(); ++index) { data.put(index, (byte) 0xff);
final ByteBuffer data = up.data(); for (int index = 0; index < data.capacity(); ++index) { data.put(index, (byte) 0xff);
final ByteBuffer data = up.getData(); Assert.assertEquals(512L * 512L * 2L, (long) data.capacity()); for (int index = 0; index < data.capacity(); ++index) {
final ByteBuffer data = up.data(); Assert.assertEquals(512L * 512L * 3L, (long) data.capacity()); for (int index = 0; index < data.capacity(); ++index) {