loadKTX

loadKTX(urlOrBuffer, headers, request)Promise.<CompressedTextureBuffer>|undefined

异步加载和解析指向 KTX 文件的给定 URL,或解析 KTX 文件的原始二进制数据。 加载完成后,将返回一个Promise,该Promise将解析为一个包含image buffer、宽度、高度和格式的对象;如果 URL 加载失败或数据解析失败,则返回拒绝。 数据是使用 XMLHttpRequest 加载的,这意味着要向其他来源发出请求,服务器必须启用跨来源资源共享(CORS)headers。

以下是 KTX 格式规范的一部分,但不受支持:

  • Big-endian files
  • Metadata
  • 3D textures
  • Texture Arrays
  • Cubemaps
  • Mipmaps

Name Type Description
urlOrBuffer String | ArrayBuffer 二进制数据的 URL 或 ArrayBuffer。
headers Object optional 与请求一起发送的 HTTP headers。
request Request optional 请求对象。仅供内部使用。
Returns:
加载时将解析请求数据的Promise。如果 request.throttle 为 true 且请求的优先级不够高,则返回未定义。
Throws:
Example:
// load a single URL asynchronously
SuperMap3D.loadKTX('some/url').then(function(ktxData) {
    var width = ktxData.width;
    var height = ktxData.height;
    var format = ktxData.internalFormat;
    var arrayBufferView = ktxData.bufferView;
    // use the data to create a texture
}).otherwise(function(error) {
    // an error occurred
});
See: