包 | flash.display3D.textures |
类 | public final class Texture |
继承 | Texture TextureBase EventDispatcher Object |
定义一个 2D 纹理,以便在渲染期间使用。
无法直接实例化 Texture。使用 Context3D createTexture()
方法创建实例。
相关 API 元素
方法 | 由以下参数定义 | ||
---|---|---|---|
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
使用 EventDispatcher 对象注册事件侦听器对象,以使侦听器能够接收事件通知。 | EventDispatcher | ||
将事件调度到事件流中。 | EventDispatcher | ||
释放与此纹理关联的所有 GPU 资源。 | TextureBase | ||
检查 EventDispatcher 对象是否为特定事件类型注册了任何侦听器。 | EventDispatcher | ||
表示对象是否已经定义了指定的属性。 | Object | ||
表示 Object 类的实例是否在指定为参数的对象的原型链中。 | Object | ||
表示指定的属性是否存在、是否可枚举。 | Object | ||
从 EventDispatcher 对象中删除侦听器。 | EventDispatcher | ||
设置循环操作动态属性的可用性。 | Object | ||
返回此对象的字符串表示形式,其格式设置遵守区域设置特定的约定。 | Object | ||
返回指定对象的字符串表示形式。 | Object | ||
uploadCompressedTextureFromByteArray(data:ByteArray, byteArrayOffset:uint, async:Boolean = false):void
从 ByteArray 对象上载 Adobe 纹理格式 (ATF) 的压缩纹理。 | Texture | ||
从 BitmapData 对象上传纹理。 | Texture | ||
从 BitmapData 对象异步上载 miplevel 为 0 的纹理。 | Texture | ||
从 ByteArray 上传纹理。 | Texture | ||
从 ByteArray 异步上载 miplevel 为 0 的纹理。 | Texture | ||
返回指定对象的原始值。 | Object | ||
检查是否用此 EventDispatcher 对象或其任何祖代为指定事件类型注册了事件侦听器。 | EventDispatcher |
uploadCompressedTextureFromByteArray | () | 方法 |
public function uploadCompressedTextureFromByteArray(data:ByteArray, byteArrayOffset:uint, async:Boolean = false):void
语言版本: | ActionScript 3.0 |
运行时版本: | Flash Player 11, AIR 3 |
从 ByteArray 对象上传 Adobe 纹理格式 (ATF) 的压缩纹理。ATF 文件版本 2 需要 SWF 21 或更高版本,ATF 文件版本 3 需要 SWF 29 或更高版本。对于使用没有 alpha 的 png 图像创建的 ATF 文件,在 Context3DObject::createTexture
期间给定的 format
字符串应为“COMPRESSED”;对于使用具有 alpha 的 png 图像创建的 ATF 文件,在 Context3DObject::createTexture
期间给定的 format
字符串应为“COMPRESSED_ALPHA”。
参数
data:ByteArray — 包含 mipmaps 等压缩纹理的字节数组。ByteArray 对象必须使用 little endian 格式。
| |
byteArrayOffset:uint — 字节数组中开始读取纹理数据的位置。
| |
async:Boolean (default = false ) — 如果为 true,此函数将立即返回。在成功完成上传前,尝试使用纹理的任何绘图方法都将失败。成功上传后,此 CubeTexture 对象将调度 Event.TEXTURE_READY 。默认值:false。
|
引发
TypeError — Null 指针错误:当 data 为 null 时。
| |
ArgumentError — 纹理解码失败:如果无法从 data 中压缩数据的格式派生此对象的压缩格式或 SWF 版本与 ATF 文件版本不兼容。
| |
ArgumentError — 纹理大小不匹配:如果解压缩的纹理的宽度和高度与此 Texture 对象的尺寸不相等。
| |
ArgumentError — Miplevel 过大:如果解压缩的纹理的 mip 级别大于纹理大小所隐含的级别。
| |
ArgumentError — 纹理格式不匹配:如果解码的 ATF 字节不包含与此纹理格式兼容的纹理。
| |
Error — 3768:后台执行期间不可使用 Stage3D API。
| |
RangeError — 输入大小错误:如果 byteArrayOffset 存在整数溢出或 byteArrayOffset + 6 大于 data 的长度,或者从 byteArrayOffset 到 data 字节数组末尾的可用字节数少于 ATF 纹理所需的数据量。
|
相关 API 元素
uploadFromBitmapData | () | 方法 |
public function uploadFromBitmapData(source:BitmapData, miplevel:uint = 0):void
语言版本: | ActionScript 3.0 |
运行时版本: | Flash Player 11, AIR 3 |
从 BitmapData 对象上载纹理。
参数
source:BitmapData — 一个位图。
| |
miplevel:uint (default = 0 ) — 要加载的 mip 级别,级别零是高级全分辨率图像。
|
引发
TypeError — Null 指针错误:当 source 为 null 时。
| |
ArgumentError — Miplevel 过大:如果指定的 mip 级别大于较大的纹理尺寸所隐含的级别。
| |
ArgumentError — 无效的 BitmapData 错误:如果 source BitmapData 对象不包含有效的立方体纹理表面。图像的面数必须是 2 的幂数,并具有 miplevel 所指定的正确大小。
| |
ArgumentError — 纹理格式不匹配:如果纹理格式是Context3DTextureFormat.COMPRESSED 或 Context3DTextureFormat.COMPRESSED_ALPHA,且代码是在不支持运行时纹理压缩的移动平台上执行。
| |
Error — 3768:后台执行期间不可使用 Stage3D API。
|
uploadFromBitmapDataAsync | () | 方法 |
public function uploadFromBitmapDataAsync(source:BitmapData, miplevel:uint = 0):void
语言版本: | ActionScript 3.0 |
运行时版本: | AIR 24 |
从 BitmapData 对象异步上载 miplevel 为 0 的纹理。在成功完成上传前,尝试使用纹理的任何绘图方法都将失败。成功上传后,此 Texture
对象将调度 Event.TEXTURE_READY
。Event.TEXTURE_READY 是一个回调,表示对已成功执行的纹理对象收到了异步调用。在后台上载期间如发生任何错误,此 Texture
对象将调度 Event.ERROREVENT
。
参数
source:BitmapData — 一个位图
| |
miplevel:uint (default = 0 )
|
引发
TypeError — Null 指针错误:当 source 为 null 时。
| |
ArgumentError — 无效 BitmapData 错误:如果 source BitmapData 对象未包含有效的纹理,则引发此错误。图像的面数必须是 2 的幂数,并具有 miplevel 所指定的正确大小。
| |
ArgumentError — 纹理格式不匹配:如果纹理格式是Context3DTextureFormat.COMPRESSED 或 Context3DTextureFormat.COMPRESSED_ALPHA,且代码是在不支持运行时纹理压缩的移动平台上执行。
| |
ArgumentError — 异步上载仅支持 miplevel 为 0。
| |
Error — 3768:后台执行期间不可使用 Stage3D API。
|
相关 API 元素
uploadFromByteArray | () | 方法 |
public function uploadFromByteArray(data:ByteArray, byteArrayOffset:uint, miplevel:uint = 0):void
语言版本: | ActionScript 3.0 |
运行时版本: | Flash Player 11, AIR 3 |
从 ByteArray 上载纹理。
参数
data:ByteArray — 一个字节数组,包含的采用纹理内部格式的字节足以填充纹理。rgba 纹理被读作每个 texel 组件的字节数(1 或 4)。浮点纹理被读作每个 texel 组件的浮点数(1 或 4)。ByteArray 对象必须使用 little endian 格式。
| |
byteArrayOffset:uint — 字节数组对象中开始读取纹理数据的位置。
| |
miplevel:uint (default = 0 ) — 要加载的 mip 级别,级别零是高级全分辨率图像。
|
引发
TypeError — Null 指针错误:当 data 为 null 时。
| |
ArgumentError — Miplevel 过大:如果指定的 mip 级别大于较大的纹理尺寸所隐含的级别。
| |
RangeError — 输入大小错误:如果从 byteArrayOffset 到 data 字节数组末尾的可用字节数少于此 mip 级别的纹理所需的数据量或 byteArrayOffset 大于等于 data 的长度。
| |
ArgumentError — 纹理格式不匹配:如果纹理格式是Context3DTextureFormat.COMPRESSED 或 Context3DTextureFormat.COMPRESSED_ALPHA,且代码是在不支持运行时纹理压缩的移动平台上执行。
| |
Error — 3768:后台执行期间不可使用 Stage3D API。
|
uploadFromByteArrayAsync | () | 方法 |
public function uploadFromByteArrayAsync(data:ByteArray, byteArrayOffset:uint, miplevel:uint = 0):void
语言版本: | ActionScript 3.0 |
运行时版本: | AIR 24 |
从 ByteArray 异步上载 miplevel 为 0 的纹理。在成功完成上传前,尝试使用纹理的任何绘图方法都将失败。成功上传后,此 Texture
对象将调度 Event.TEXTURE_READY
。Event.TEXTURE_READY 是一个回调,表示对已成功执行的纹理对象收到了异步调用。在后台上载期间如发生任何错误,此 Texture
对象将调度 Event.ERROREVENT
。
参数
data:ByteArray — 一个字节数组,包含的采用纹理内部格式的字节足以填充纹理。rgba 纹理被读作每个 texel 组件的字节数(1 或 4)。浮点纹理被读作每个 texel 组件的浮点数(1 或 4)。ByteArray 对象必须使用 little endian 格式。
| |
byteArrayOffset:uint — 字节数组对象中开始读取纹理数据的位置。
| |
miplevel:uint (default = 0 )
|
引发
TypeError — Null 指针错误:当 data 为 null 时。
| |
RangeError — 输入大小错误:如果从 byteArrayOffset 到 data 字节数组末尾的可用字节数少于 mip 级别为 0 的纹理所需的数据量或 byteArrayOffset 大于等于 data 的长度。
| |
ArgumentError — 纹理格式不匹配:如果纹理格式是Context3DTextureFormat.COMPRESSED 或 Context3DTextureFormat.COMPRESSED_ALPHA,且代码是在不支持运行时纹理压缩的移动平台上执行。
| |
ArgumentError — 异步上载仅支持 miplevel 为 0。
| |
Error — 3768:后台执行期间不可使用 Stage3D API。
| |
Error — 如果已对纹理对象启动异步上载,又对同一纹理对象调用了另一个异步上载。
|
相关 API 元素
Tue Jun 12 2018, 11:04 AM Z