Static variables

@:value(RGBA)staticread onlynativeFormat:TextureFormat = RGBA

The default texture color format

Static methods

staticdefaultCubeTexture():Texture

Returns a default dummy 1x1 black cube texture

@:value({ alpha : 1. })staticfromColor(color:Int, alpha:Float = 1.):Null<Texture>

Creates a 1x1 texture using the RGB color passed as parameter.

staticfromPixels(pixels:Pixels):Texture

staticgenChecker(size:Int):Texture

Returns a checker texture of size x size, than can be repeated

@:value({ alpha : 1. })staticgenDisc(size:Int, color:Int, alpha:Float = 1.):Texture

staticgenNoise(size:Int):Texture

Constructor

new(w:Int, h:Int, ?flags:Array<TextureFlags>, ?format:Null<TextureFormat>)

Variables

depthBuffer:DepthBuffer

When the texture is used as render target, tells which depth buffer will be used. If set to null, depth testing is disabled.

read onlyflags:EnumFlags<TextureFlags>

read onlyheight:Int

read onlyid:Int

read onlylayerCount:Int

@:value(0.)lodBias:Float = 0.

read onlymipLevels:Int

read onlyname:String

read onlywidth:Int

realloc:() ‑> Void

If this callback is set, the texture can be re-allocated when the 3D context has been lost or when it's been free because of lack of memory.

Methods

alloc():Void

@:value({ mipLevel : 0, face : 0 })capturePixels(face:Int = 0, mipLevel:Int = 0, ?region:IBounds):Pixels

Downloads the current texture data from the GPU. Beware, this is a very slow operation that shouldn't be done during rendering.

@:value({ layer : -1, alpha : 1. })clear(color:Int, alpha:Float = 1., layer:Int = -1):Void

@:value({ layer : -1, a : 0., b : 0., g : 0., r : 0. })clearF(r:Float = 0., g:Float = 0., b:Float = 0., a:Float = 0., layer:Int = -1):Void

dispose():Void

inlineisDisposed():Bool

isSRGB():Bool

preventAutoDispose():Void

In case of out of GPU memory, textures that hasn't been used for a long time will be disposed. Calling this will make this texture not considered for auto disposal.

resize(width:Int, height:Int):Void

setName(n:String):Void

swapTexture(t:Texture):Void

Swap two textures, this is an immediate operation. BEWARE : if the texture is a cached image (hxd.res.Image), the swap will affect the cache!

@:value({ layer : 0, mipLevel : 0 })uploadBitmap(bmp:BitmapData, mipLevel:Int = 0, layer:Int = 0):Void

@:value({ layer : 0, mipLevel : 0 })uploadPixels(pixels:Pixels, mipLevel:Int = 0, layer:Int = 0):Void

waitLoad(f:() ‑> Void):Void

Some textures might take some time to load. You can check flags.has(Loading) or add a waitLoad callback which will get called either immediately if the texture is already loaded or when loading is complete.