Packageflash.display3D.textures
Classpublic final class Texture
InheritanceTexture Inheritance TextureBase Inheritance EventDispatcher Inheritance Object

The Texture class represents a 2-dimensional texture uploaded to a rendering context.

Defines a 2D texture for use during rendering.

Texture cannot be instantiated directly. Create instances by using Context3D createTexture() method.

See also

flash.display3D.Context3D.createTexture()
flash.display3D.Context3D.setTextureAt()


Public Properties
 PropertyDefined by
 Inheritedconstructor : Object
A reference to the class object or constructor function for a given object instance.
Object
 Inheritedprototype : Object
[static] A reference to the prototype object of a class or function object.
Object
Public Methods
 MethodDefined by
 Inherited
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
Registers an event listener object with an EventDispatcher object so that the listener receives notification of an event.
EventDispatcher
 Inherited
Dispatches an event into the event flow.
EventDispatcher
 Inherited
Frees all GPU resources associated with this texture.
TextureBase
 Inherited
Checks whether the EventDispatcher object has any listeners registered for a specific type of event.
EventDispatcher
 Inherited
Indicates whether an object has a specified property defined.
Object
 Inherited
Indicates whether an instance of the Object class is in the prototype chain of the object specified as the parameter.
Object
 Inherited
Indicates whether the specified property exists and is enumerable.
Object
 Inherited
removeEventListener(type:String, listener:Function, useCapture:Boolean = false):void
Removes a listener from the EventDispatcher object.
EventDispatcher
 Inherited
Sets the availability of a dynamic property for loop operations.
Object
 Inherited
Returns the string representation of this object, formatted according to locale-specific conventions.
Object
 Inherited
Returns the string representation of the specified object.
Object
  
uploadCompressedTextureFromByteArray(data:ByteArray, byteArrayOffset:uint, async:Boolean = false):void
Uploads a compressed texture in Adobe Texture Format (ATF) from a ByteArray object.
Texture
  
uploadFromBitmapData(source:BitmapData, miplevel:uint = 0):void
Uploads a texture from a BitmapData object.
Texture
  
Uploads miplevel 0 for a texture from a BitmapData object asynchronously.
Texture
  
uploadFromByteArray(data:ByteArray, byteArrayOffset:uint, miplevel:uint = 0):void
Uploads a texture from a ByteArray.
Texture
  
uploadFromByteArrayAsync(data:ByteArray, byteArrayOffset:uint, miplevel:uint = 0):void
Uploads miplevel 0 for a texture from a ByteArray asynchronously.
Texture
 Inherited
Returns the primitive value of the specified object.
Object
 Inherited
Checks whether an event listener is registered with this EventDispatcher object or any of its ancestors for the specified event type.
EventDispatcher
Events
 EventSummaryDefined by
 Inherited [broadcast event] Dispatched when the Flash Player or AIR application gains operating system focus and becomes active.EventDispatcher
 Inherited [broadcast event] Dispatched when the Flash Player or AIR application operating loses system focus and is becoming inactive.EventDispatcher
Method detail
uploadCompressedTextureFromByteArray()method
public function uploadCompressedTextureFromByteArray(data:ByteArray, byteArrayOffset:uint, async:Boolean = false):void

Language version: ActionScript 3.0
Runtime version: AIR 3

Uploads a compressed texture in Adobe Texture Format (ATF) from a ByteArray object. ATF file version 2 requires SWF version 21 or newer and ATF file version 3 requires SWF version 29 or newer. For ATF files created with png image without alpha the format string given during Context3DObject::createTexture should be "COMPRESSED" and for ATF files created with png image with alpha the format string given during Context3DObject::createTexture should be "COMPRESSED_ALPHA".

Parameters
data:ByteArray — a byte array that contains a compressed texture including mipmaps. The ByteArray object must use the little endian format.
 
byteArrayOffset:uint — the position in the byte array at which to start reading the texture data.
 
async:Boolean (default = false) — If true, this function returns immediately. Any draw method which attempts to use the texture will fail until the upload completes successfully. Upon successful upload, this CubeTexture object dispatches Event.TEXTURE_READY. Default value: false.

Throws
TypeError — Null Pointer Error: when data is null.
 
ArgumentError — Texture Decoding Failed: when the compression format of this object cannot be derived from the format of the compressed data in data or when the SWF version is incompatible with the ATF file version.
 
ArgumentError — Texture Size Does Not Match: when the width and height of the decompressed texture do not equal the dimensions of this Texture object.
 
ArgumentError — Miplevel Too Large: if the mip level of the decompressed texture is greater than that implied by the size of the texture.
 
ArgumentError — Texture Format Mismatch: if the decoded ATF bytes don't contain a texture compatible with this texture's format.
 
Error — 3768: The Stage3D API may not be used during background execution.
 
RangeError — Bad Input Size: when there is integer overflow of byteArrayOffset or if byteArrayOffset + 6 is greater than the length of data, or if the number of bytes available from byteArrayOffset to the end of the data byte array is less than the amount of data required for ATF texture.

See also

uploadFromBitmapData()method 
public function uploadFromBitmapData(source:BitmapData, miplevel:uint = 0):void

Language version: ActionScript 3.0
Runtime version: AIR 3

Uploads a texture from a BitmapData object.

Parameters
source:BitmapData — a bitmap.
 
miplevel:uint (default = 0) — the mip level to be loaded, level zero being the top-level full-resolution image.

Throws
TypeError — Null Pointer Error: when source is null.
 
ArgumentError — Miplevel Too Large: if the specified mip level is greater than that implied by the larger of the Texture's dimensions.
 
ArgumentError — Invalid BitmapData Error: if source if the BitmapData object does not contain a valid cube texture face. The image must have sides equal to a power of two, and the correct size for the miplevel specified.
 
ArgumentError — Texture Format Mismatch: if the texture format is Context3DTextureFormat.COMPRESSED or Context3DTextureFormat.COMPRESSED_ALPHA and the code is executing on a mobile platform where runtime texture compression is not supported.
 
Error — 3768: The Stage3D API may not be used during background execution.
uploadFromBitmapDataAsync()method 
public function uploadFromBitmapDataAsync(source:BitmapData, miplevel:uint = 0):void

Language version: ActionScript 3.0
Runtime version: AIR 24

Uploads miplevel 0 for a texture from a BitmapData object asynchronously. Any draw method which attempts to use the texture fails until the upload completes successfully. Upon successful upload, this Texture object dispatches Event.TEXTURE_READY. Event.TEXTURE_READY is a callback to indicate that the asynchronous call received for the texture object have been executed successfully. Upon any error during the background upload , this Texture object dispatches Event.ERROREVENT.

Parameters
source:BitmapData — a bitmap
 
miplevel:uint (default = 0)

Throws
TypeError — Null Pointer Error: when source is null.
 
ArgumentError — Invalid BitmapData Error: if source if the BitmapData object does not contain a valid texture. The image must be equal to a power of two, and the correct size for the miplevel specified.
 
ArgumentError — Texture Format Mismatch: if the texture format is Context3DTextureFormat.COMPRESSED or Context3DTextureFormat.COMPRESSED_ALPHA and the code is executing on a mobile platform where runtime texture compression is not supported.
 
ArgumentError — Asynchronous upload supported for miplevel 0 only.
 
Error — 3768: The Stage3D API may not be used during background execution.

See also

uploadFromByteArray()method 
public function uploadFromByteArray(data:ByteArray, byteArrayOffset:uint, miplevel:uint = 0):void

Language version: ActionScript 3.0
Runtime version: AIR 3

Uploads a texture from a ByteArray.

Parameters
data:ByteArray — a byte array that is contains enough bytes in the textures internal format to fill the texture. rgba textures are read as bytes per texel component (1 or 4). float textures are read as floats per texel component (1 or 4). The ByteArray object must use the little endian format.
 
byteArrayOffset:uint — the position in the byte array object at which to start reading the texture data.
 
miplevel:uint (default = 0) — the mip level to be loaded, level zero is the top-level, full-resolution image.

Throws
TypeError — Null Pointer Error: when data is null.
 
ArgumentError — Miplevel Too Large: if the specified mip level is greater than that implied by the larger of the Texture's dimensions.
 
RangeError — Bad Input Size: if the number of bytes available from byteArrayOffset to the end of the data byte array is less than the amount of data required for a texture of this mip level or if byteArrayOffset is greater than or equal to the length of data.
 
ArgumentError — Texture Format Mismatch: if the texture format is Context3DTextureFormat.COMPRESSED or Context3DTextureFormat.COMPRESSED_ALPHA and the code is executing on a mobile platform where runtime texture compression is not supported.
 
Error — 3768: The Stage3D API may not be used during background execution.
uploadFromByteArrayAsync()method 
public function uploadFromByteArrayAsync(data:ByteArray, byteArrayOffset:uint, miplevel:uint = 0):void

Language version: ActionScript 3.0
Runtime version: AIR 24

Uploads miplevel 0 for a texture from a ByteArray asynchronously. Any draw method which attempts to use the texture fails until the upload completes successfully. Upon successful upload, this Texture object dispatches Event.TEXTURE_READY. Event.TEXTURE_READY is a callback to indicate that the asynchronous calls received for the texture object have been executed successfully. Upon any error during the background upload, this Texture object dispatches Event.ERROREVENT.

Parameters
data:ByteArray — a byte array that contains enough bytes in the textures internal format to fill the texture. rgba textures are read as bytes per texel component (1 or 4). float textures are read as floats per texel component (1 or 4). The ByteArray object must use the little endian format.
 
byteArrayOffset:uint — the position in the byte array object at which to start reading the texture data.
 
miplevel:uint (default = 0)

Throws
TypeError — Null Pointer Error: when data is null.
 
RangeError — Bad Input Size: if the number of bytes available from byteArrayOffset to the end of the data byte array is less than the amount of data required for a texture of mip level 0 or if byteArrayOffset is greater than or equal to the length of data.
 
ArgumentError — Texture Format Mismatch: if the texture format is Context3DTextureFormat.COMPRESSED or Context3DTextureFormat.COMPRESSED_ALPHA and the code is executing on a mobile platform where runtime texture compression is not supported.
 
ArgumentError — Asynchronous upload supported for miplevel 0 only.
 
Error — 3768: The Stage3D API may not be used during background execution.
 
Error — if an async upload has been initiated on a texture object and there is another asynchronous upload call on the same texture object.

See also