GLKTextureLoader
Оператор импорта
Swift
import GLKit
Objective C
@import GLKit;
Доступность
Доступный в iOS 5.0 и позже.
GLKTextureLoader
класс упрощает усилие, требуемое загрузить Ваши данные текстуры. GLKTextureLoader
класс может загрузиться двумерный или текстуры cubemap в большинстве форматов изображения, поддерживаемых Изображением платформа I/O. На iOS это может также загрузить текстуры, сжатые в формате pvrtc. Это может загрузить данные синхронно или асинхронно.
Для загрузки текстур синхронно сделайте контекст с желаемым sharegroup текущим контекстом, и затем вызовите один или больше методов класса. Возвращенный информационный объект текстуры включает подробные данные о загруженной текстуре.
Для загрузки текстур асинхронно код инициализации выделяет и инициализирует новое GLKTextureLoader
объект с помощью объекта sharegroup, который должен быть местом назначения для новых текстур. Затем для загрузки текстуры приложение вызывает один из методов экземпляра загрузчика текстуры, передающих в блоке обработчика завершения, который вызовут, когда была загружена текстура.
Следующие свойства OpenGL установлены для недавно создаваемой, немножественно отображенной текстуры:
GL_TEXTURE_MIN_FILTER
:GL_LINEAR
GL_TEXTURE_MAG_FILTER
:GL_LINEAR
GL_TEXTURE_WRAP_S
:GL_CLAMP_TO_EDGE
GL_TEXTURE_WRAP_T
:GL_CLAMP_TO_EDGE
Следующие свойства OpenGL установлены для недавно создаваемой, множественно отображенной текстуры:
GL_TEXTURE_MIN_FILTER
:GL_LINEAR_MIPMAP_LINEAR
GL_TEXTURE_MAG_FILTER
:GL_LINEAR
GL_TEXTURE_WRAP_S
:GL_CLAMP_TO_EDGE
GL_TEXTURE_WRAP_T
:GL_CLAMP_TO_EDGE
GLKTextureLoader
и GLKTextureInfo
классы не управляют текстурой OpenGL для Вас. Как только текстура возвращается к Вашему приложению, Вы ответственны за него. Это означает, что после того, как Ваше приложение закончено с помощью текстуры OpenGL, оно должно явно освободить его путем вызова glDeleteTextures
функция.
-
Инициализирует новый объект загрузчика текстуры.
Объявление
Swift
init!(sharegroup
sharegroup
: EAGLSharegroup!)Objective C
- (instancetype)initWithSharegroup:(EAGLSharegroup *)
sharegroup
Параметры
sharegroup
sharegroup раньше хранил новые текстуры.
Возвращаемое значение
Недавно инициализированный загрузчик текстуры.
Обсуждение
Когда Ваше приложение должно загрузить текстуры асинхронно, Вы только создаете объект загрузчика текстуры.
Оператор импорта
Objective C
@import GLKit;
Swift
import GLKit
Доступность
Доступный в iOS 5.0 и позже.
-
Загружает 2D изображение текстуры из файла и создает новую текстуру из данных.
Объявление
Swift
class func textureWithContentsOfFile(_
fileName
: String!, optionstextureOperations
: [NSObject : AnyObject]!, erroroutError
: NSErrorPointer) -> GLKTextureInfo!Objective C
+ (GLKTextureInfo *)textureWithContentsOfFile:(NSString *)
fileName
options:(NSDictionary *)textureOperations
error:(NSError **)outError
Параметры
fileName
Путь к файлу для загрузки.
textureOperations
Словарь, описывающий любые дополнительные шаги, которые Вы хотите, чтобы загрузчик текстуры предпринял при загрузке текстуры. Посмотрите
“Texture Loading Options”
.outError
Если ошибка происходит, по возврату содержит
NSError
объект, описывающий проблему.Если Вы не интересуетесь этой информацией, передачей
NULL
.Возвращаемое значение
Информационный объект текстуры, описывающий загруженную текстуру или
nil
если произошла ошибка.Обсуждение
Этот метод класса загружает текстуру в sharegroup, присоединенный к текущему контексту для потока, к этому методу обращаются.
Оператор импорта
Objective C
@import GLKit;
Swift
import GLKit
Доступность
Доступный в iOS 5.0 и позже.
-
textureWithContentsOfFile (_: options:queue:completionHandler:) - textureWithContentsOfFile:options:queue:completionHandler:
Асинхронно загружает 2D изображение текстуры из файла и создает новую текстуру из данных.
Объявление
Swift
func textureWithContentsOfFile(_
fileName
: String!, optionstextureOperations
: [NSObject : AnyObject]!, queuequeue
: dispatch_queue_t!, completionHandlerblock
: GLKTextureLoaderCallback!)Objective C
- (void)textureWithContentsOfFile:(NSString *)
fileName
options:(NSDictionary *)textureOperations
queue:(dispatch_queue_t)queue
completionHandler:(GLKTextureLoaderCallback)block
Параметры
fileName
Путь к файлу для загрузки.
textureOperations
Словарь, описывающий любые дополнительные шаги, которые Вы хотите, чтобы загрузчик текстуры предпринял при загрузке текстуры. Посмотрите
“Texture Loading Options”
.queue
Очередь отгрузки, что к Вашему блоку обращаются, когда завершается задача. Если
NULL
передается, блок вызывают на основной очереди отгрузки.block
Блок, который вызовут, когда завершается задача.
Обсуждение
Этот метод идентичен
textureWithContentsOfFile:options:error:
, за исключением того, что это загружает текстуру асинхронно. Когда этот метод вызывают, он создает новую фоновую задачу для обрабатывания запроса и затем возвращает управление приложению. Позже, когда задача завершена, GLKit вызывает Ваш обработчик завершения на очереди, которую Вы предоставили.Оператор импорта
Objective C
@import GLKit;
Swift
import GLKit
Доступность
Доступный в iOS 5.0 и позже.
-
Загружает 2D изображение текстуры из URL и создает новую текстуру из данных.
Объявление
Swift
class func textureWithContentsOfURL(_
filePath
: NSURL!, optionstextureOperations
: [NSObject : AnyObject]!, erroroutError
: NSErrorPointer) -> GLKTextureInfo!Objective C
+ (GLKTextureInfo *)textureWithContentsOfURL:(NSURL *)
filePath
options:(NSDictionary *)textureOperations
error:(NSError **)outError
Параметры
filePath
URL к файлу для загрузки.
textureOperations
Словарь, описывающий любые дополнительные шаги, которые Вы хотите, чтобы загрузчик текстуры предпринял при загрузке текстуры. Посмотрите
“Texture Loading Options”
.outError
Если ошибка происходит, по возврату содержит
NSError
объект, описывающий проблему.Если Вы не интересуетесь этой информацией, передачей
NULL
.Возвращаемое значение
Информационный объект текстуры, описывающий загруженную текстуру или
nil
если произошла ошибка.Обсуждение
Этот метод класса загружает текстуру в sharegroup, присоединенный к текущему контексту для потока, к этому методу обращаются.
Оператор импорта
Objective C
@import GLKit;
Swift
import GLKit
Доступность
Доступный в iOS 5.0 и позже.
-
textureWithContentsOfURL (_: options:queue:completionHandler:) - textureWithContentsOfURL:options:queue:completionHandler:
Асинхронно загружает 2D изображение текстуры из URL и создает новую текстуру из данных.
Объявление
Swift
func textureWithContentsOfURL(_
filePath
: NSURL!, optionstextureOperations
: [NSObject : AnyObject]!, queuequeue
: dispatch_queue_t!, completionHandlerblock
: GLKTextureLoaderCallback!)Objective C
- (void)textureWithContentsOfURL:(NSURL *)
filePath
options:(NSDictionary *)textureOperations
queue:(dispatch_queue_t)queue
completionHandler:(GLKTextureLoaderCallback)block
Параметры
filePath
URL к файлу для загрузки.
textureOperations
Словарь, описывающий любые дополнительные шаги, которые Вы хотите, чтобы загрузчик текстуры предпринял при загрузке текстуры. Посмотрите
“Texture Loading Options”
.queue
Очередь отгрузки, что к Вашему блоку обращаются, когда завершается задача. Если
NULL
передается, блок вызывают на основной очереди отгрузки.block
Блок, который вызовут, когда завершается задача.
Обсуждение
Этот метод идентичен
textureWithContentsOfURL:options:error:
, за исключением того, что это загружает текстуру асинхронно. Когда этот метод вызывают, он создает новую фоновую задачу для обрабатывания запроса и затем возвращает управление приложению. Позже, когда задача завершена, GLKit вызывает Ваш обработчик завершения на очереди, которую Вы предоставили.Оператор импорта
Objective C
@import GLKit;
Swift
import GLKit
Доступность
Доступный в iOS 5.0 и позже.
-
Загружает 2D изображение текстуры из диапазона памяти и создает новую текстуру из данных.
Объявление
Swift
class func textureWithContentsOfData(_
data
: NSData!, optionstextureOperations
: [NSObject : AnyObject]!, erroroutError
: NSErrorPointer) -> GLKTextureInfo!Objective C
+ (GLKTextureInfo *)textureWithContentsOfData:(NSData *)
data
options:(NSDictionary *)textureOperations
error:(NSError **)outError
Параметры
data
Диапазон памяти для загрузки как текстура.
textureOperations
Словарь, описывающий любые дополнительные шаги, которые Вы хотите, чтобы загрузчик текстуры предпринял при загрузке текстуры. Посмотрите
“Texture Loading Options”
.outError
Если ошибка происходит, по возврату содержит
NSError
объект, описывающий проблему.Если Вы не интересуетесь этой информацией, передачей
NULL
.Возвращаемое значение
Информационный объект текстуры, описывающий загруженную текстуру или
nil
если произошла ошибка.Обсуждение
Этот метод класса загружает текстуру в sharegroup, присоединенный к текущему контексту для потока, к этому методу обращаются.
Оператор импорта
Objective C
@import GLKit;
Swift
import GLKit
Доступность
Доступный в iOS 5.0 и позже.
-
textureWithContentsOfData (_: options:queue:completionHandler:) - textureWithContentsOfData:options:queue:completionHandler:
Асинхронно загружает 2D изображение текстуры из диапазона памяти и создает новую текстуру из данных.
Объявление
Swift
func textureWithContentsOfData(_
data
: NSData!, optionstextureOperations
: [NSObject : AnyObject]!, queuequeue
: dispatch_queue_t!, completionHandlerblock
: GLKTextureLoaderCallback!)Objective C
- (void)textureWithContentsOfData:(NSData *)
data
options:(NSDictionary *)textureOperations
queue:(dispatch_queue_t)queue
completionHandler:(GLKTextureLoaderCallback)block
Параметры
data
Диапазон памяти для загрузки как текстура.
textureOperations
Словарь, описывающий любые дополнительные шаги, которые Вы хотите, чтобы загрузчик текстуры предпринял при загрузке текстуры. Посмотрите
“Texture Loading Options”
.queue
Очередь отгрузки, что к Вашему блоку обращаются, когда завершается задача. Если
NULL
передается, блок вызывают на основной очереди отгрузки.block
Блок, который вызовут, когда завершается задача.
Обсуждение
Этот метод идентичен
textureWithContentsOfData:options:error:
, за исключением того, что это загружает текстуру асинхронно. Когда этот метод вызывают, он создает новую фоновую задачу для обрабатывания запроса и затем возвращает управление приложению. Позже, когда задача завершена, GLKit вызывает Ваш обработчик завершения на очереди, которую Вы предоставили.Оператор импорта
Objective C
@import GLKit;
Swift
import GLKit
Доступность
Доступный в iOS 5.0 и позже.
-
Загружается 2D изображение текстуры от Кварца отображают, и создает новую текстуру из данных.
Объявление
Swift
class func textureWithCGImage(_
cgImage
: CGImage!, optionstextureOperations
: [NSObject : AnyObject]!, erroroutError
: NSErrorPointer) -> GLKTextureInfo!Objective C
+ (GLKTextureInfo *)textureWithCGImage:(CGImageRef)
cgImage
options:(NSDictionary *)textureOperations
error:(NSError **)outError
Параметры
cgImage
Кварцевое изображение, которое будет превращено в текстуру.
textureOperations
Словарь, описывающий любые дополнительные шаги, которые Вы хотите, чтобы загрузчик текстуры предпринял при загрузке текстуры. Посмотрите
“Texture Loading Options”
.outError
Если ошибка происходит, по возврату содержит
NSError
объект, описывающий проблему.Если Вы не интересуетесь этой информацией, передачей
NULL
.Возвращаемое значение
Информационный объект текстуры, описывающий загруженную текстуру или
nil
если произошла ошибка.Обсуждение
Этот метод класса загружает текстуру в sharegroup, присоединенный к текущему контексту для потока, к этому методу обращаются.
Если бы изображение создавалось с помощью функции CGBitmapImageContextCreate, то оно должно использовать один из форматов пикселя, описанных в Таблице 1. CGImages, загруженные из файлов обычно уже, находятся в одном из этих форматов.
Табличные 1Supported растровые форматы Цветовое пространство
Формат пикселя и постоянная растровая информация
Нуль
8 бит/пкс, 8 bpc,
kCGImageAlphaOnly
Серый
8 бит/пкс, 8 bpc,
kCGImageAlphaNone
Серый
8 бит/пкс, 8 bpc,
kCGImageAlphaOnly
RGB
32 бит/пкс, 8 bpc,
kCGImageAlphaNoneSkipFirst
RGB
32 бит/пкс, 8 bpc,
kCGImageAlphaPremultipliedFirst
Оператор импорта
Objective C
@import GLKit;
Swift
import GLKit
Доступность
Доступный в iOS 5.0 и позже.
-
textureWithCGImage (_: options:queue:completionHandler:) - textureWithCGImage:options:queue:completionHandler:
Асинхронно загружается, 2D изображение текстуры от Кварца отображают, и создает новую текстуру из данных.
Объявление
Swift
func textureWithCGImage(_
cgImage
: CGImage!, optionstextureOperations
: [NSObject : AnyObject]!, queuequeue
: dispatch_queue_t!, completionHandlerblock
: GLKTextureLoaderCallback!)Objective C
- (void)textureWithCGImage:(CGImageRef)
cgImage
options:(NSDictionary *)textureOperations
queue:(dispatch_queue_t)queue
completionHandler:(GLKTextureLoaderCallback)block
Параметры
cgImage
Кварцевое изображение, которое будет превращено в текстуру.
textureOperations
Словарь, описывающий любые дополнительные шаги, которые Вы хотите, чтобы загрузчик текстуры предпринял при загрузке текстуры. Посмотрите
“Texture Loading Options”
.queue
Очередь отгрузки, что к Вашему блоку обращаются, когда завершается задача. Если
NULL
передается, блок вызывают на основной очереди отгрузки.block
Блок, который вызовут, когда завершается задача.
Обсуждение
Этот метод идентичен
textureWithCGImage:options:error:
, за исключением того, что это загружает текстуру асинхронно. Когда этот метод вызывают, он создает новую фоновую задачу для обрабатывания запроса и затем возвращает управление приложению. Позже, когда задача завершена, GLKit вызывает Ваш обработчик завершения на очереди, которую Вы предоставили.Оператор импорта
Objective C
@import GLKit;
Swift
import GLKit
Доступность
Доступный в iOS 5.0 и позже.
См. также
-
Загружает изображение текстуры карты куба из единственного файла и создает новую текстуру из данных.
Объявление
Swift
class func cubeMapWithContentsOfFile(_
fileName
: String!, optionstextureOperations
: [NSObject : AnyObject]!, erroroutError
: NSErrorPointer) -> GLKTextureInfo!Objective C
+ (GLKTextureInfo *)cubeMapWithContentsOfFile:(NSString *)
fileName
options:(NSDictionary *)textureOperations
error:(NSError **)outError
Параметры
fileName
Путь к файлу для загрузки.
textureOperations
Словарь, описывающий любые дополнительные шаги, которые Вы хотите, чтобы загрузчик текстуры предпринял при загрузке текстуры. Посмотрите
“Texture Loading Options”
.outError
Если ошибка происходит, по возврату содержит
NSError
объект, описывающий проблему.Если Вы не интересуетесь этой информацией, передачей
NULL
.Возвращаемое значение
Информационный объект текстуры, описывающий загруженную текстуру или
nil
если произошла ошибка.Обсуждение
Файл, как предполагается, является единственным изображением, включающим шесть поверхностей карты куба. Высота изображения должна быть шесть раз шириной, и изображения должны быть расположены в следующем порядке сверху донизу: север, юг, восток, запад, вершина, нижняя часть. Также изображение может иметь ширину, которая является шесть раз высотой, и расположенный слева направо, но это берет дополнительную обработку для загрузки.
Этот метод класса загружает текстуру в sharegroup, присоединенный к текущему контексту для потока, к этому методу обращаются.
Оператор импорта
Objective C
@import GLKit;
Swift
import GLKit
Доступность
Доступный в iOS 5.0 и позже.
-
cubeMapWithContentsOfFile (_: options:queue:completionHandler:) - cubeMapWithContentsOfFile:options:queue:completionHandler:
Асинхронно загружает изображение текстуры карты куба из единственного файла и создает новую текстуру из данных.
Объявление
Swift
func cubeMapWithContentsOfFile(_
fileName
: String!, optionstextureOperations
: [NSObject : AnyObject]!, queuequeue
: dispatch_queue_t!, completionHandlerblock
: GLKTextureLoaderCallback!)Objective C
- (void)cubeMapWithContentsOfFile:(NSString *)
fileName
options:(NSDictionary *)textureOperations
queue:(dispatch_queue_t)queue
completionHandler:(GLKTextureLoaderCallback)block
Параметры
fileName
Путь к файлу для загрузки.
textureOperations
Словарь, описывающий любые дополнительные шаги, которые Вы хотите, чтобы загрузчик текстуры предпринял при загрузке текстуры. Посмотрите
“Texture Loading Options”
.queue
Очередь отгрузки, что к Вашему блоку обращаются, когда завершается задача. Если
NULL
передается, блок вызывают на основной очереди отгрузки.block
Блок, который вызовут, когда завершается задача.
Обсуждение
Этот метод идентичен
cubeMapWithContentsOfFile:options:error:
, за исключением того, что это загружает текстуру асинхронно. Когда этот метод вызывают, он создает новую фоновую задачу для обрабатывания запроса и затем возвращает управление приложению. Позже, когда задача завершена, GLKit вызывает Ваш обработчик завершения на очереди, которую Вы предоставили.Оператор импорта
Objective C
@import GLKit;
Swift
import GLKit
Доступность
Доступный в iOS 5.0 и позже.
-
Загружает изображение текстуры карты куба из серии файлов и создает новую текстуру из данных.
Объявление
Swift
class func cubeMapWithContentsOfFiles(_
filePaths
: [AnyObject]!, optionstextureOperations
: [NSObject : AnyObject]!, erroroutError
: NSErrorPointer) -> GLKTextureInfo!Objective C
+ (GLKTextureInfo *)cubeMapWithContentsOfFiles:(NSArray *)
filePaths
options:(NSDictionary *)textureOperations
error:(NSError **)outError
Параметры
filePaths
textureOperations
Словарь, описывающий любые дополнительные шаги, которые Вы хотите, чтобы загрузчик текстуры предпринял при загрузке текстуры. Посмотрите
“Texture Loading Options”
.outError
Если ошибка происходит, по возврату содержит
NSError
объект, описывающий проблему.Если Вы не интересуетесь этой информацией, передачей
NULL
.Возвращаемое значение
Информационный объект текстуры, описывающий загруженную текстуру или
nil
если произошла ошибка.Обсуждение
Массив путей к файлам должен включать шесть записей для шести поверхностей карты куба. URLs должен быть расположен в следующем порядке: Право (+x), Левый (-x), Вершина (+y), Нижняя часть (-y), Передняя сторона (+z), Обратный (-z). Эта система координат предназначена для левой руки при размышлении о себе в кубе. Система координат предназначена для правой руки при размышлении о себе за пределами куба.
Этот метод класса загружает текстуру в sharegroup, присоединенный к текущему контексту для потока, к этому методу обращаются.
Оператор импорта
Objective C
@import GLKit;
Swift
import GLKit
Доступность
Доступный в iOS 5.0 и позже.
-
cubeMapWithContentsOfFiles (_: options:queue:completionHandler:) - cubeMapWithContentsOfFiles:options:queue:completionHandler:
Асинхронно загружает изображение текстуры карты куба из серии файлов и создает новую текстуру из данных.
Объявление
Swift
func cubeMapWithContentsOfFiles(_
filePaths
: [AnyObject]!, optionstextureOperations
: [NSObject : AnyObject]!, queuequeue
: dispatch_queue_t!, completionHandlerblock
: GLKTextureLoaderCallback!)Objective C
- (void)cubeMapWithContentsOfFiles:(NSArray *)
filePaths
options:(NSDictionary *)textureOperations
queue:(dispatch_queue_t)queue
completionHandler:(GLKTextureLoaderCallback)block
Параметры
filePaths
Массив путей к шести файлам, составляющим карту куба.
textureOperations
Словарь, описывающий любые дополнительные шаги, которые Вы хотите, чтобы загрузчик текстуры предпринял при загрузке текстуры. Посмотрите
“Texture Loading Options”
.queue
Очередь отгрузки, что к Вашему блоку обращаются, когда завершается задача. Если
NULL
передается, блок вызывают на основной очереди отгрузки.block
Блок, который вызовут, когда завершается задача.
Обсуждение
Этот метод идентичен
cubeMapWithContentsOfURL:options:error:
, за исключением того, что это загружает текстуру асинхронно. Когда этот метод вызывают, он создает новую фоновую задачу для обрабатывания запроса и затем возвращает управление приложению. Позже, когда задача завершена, GLKit вызывает Ваш обработчик завершения на очереди, которую Вы предоставили.Оператор импорта
Objective C
@import GLKit;
Swift
import GLKit
Доступность
Доступный в iOS 5.0 и позже.
-
Загружает изображение текстуры карты куба из единственного URL и создает новую текстуру из данных.
Объявление
Swift
class func cubeMapWithContentsOfURL(_
filePath
: NSURL!, optionstextureOperations
: [NSObject : AnyObject]!, erroroutError
: NSErrorPointer) -> GLKTextureInfo!Objective C
+ (GLKTextureInfo *)cubeMapWithContentsOfURL:(NSURL *)
filePath
options:(NSDictionary *)textureOperations
error:(NSError **)outError
Параметры
filePath
Путь к изображению для загрузки.
textureOperations
Словарь, описывающий любые дополнительные шаги, которые Вы хотите, чтобы загрузчик текстуры предпринял при загрузке текстуры. Посмотрите
“Texture Loading Options”
.outError
Если ошибка происходит, по возврату содержит
NSError
объект, описывающий проблему.Если Вы не интересуетесь этой информацией, передачей
NULL
.Возвращаемое значение
Информационный объект текстуры, описывающий загруженную текстуру или
nil
если произошла ошибка.Обсуждение
Файл, как предполагается, является единственным изображением, включающим шесть поверхностей карты куба. Высота изображения должна быть шесть раз шириной, и изображения должны быть расположены в следующем порядке сверху донизу: Право (+x), Левый (-x), Вершина (+y), Нижняя часть (-y), Передняя сторона (+z), Обратный (-z). Эта система координат предназначена для левой руки при размышлении о себе в кубе. Система координат предназначена для правой руки при размышлении о себе за пределами куба.
Также изображение может иметь ширину, которая является шесть раз высотой, и расположенный слева направо, но это берет дополнительную обработку для загрузки.
Этот метод класса загружает текстуру в sharegroup, присоединенный к текущему контексту для потока, к этому методу обращаются.
Оператор импорта
Objective C
@import GLKit;
Swift
import GLKit
Доступность
Доступный в iOS 5.0 и позже.
-
cubeMapWithContentsOfURL (_: options:queue:completionHandler:) - cubeMapWithContentsOfURL:options:queue:completionHandler:
Асинхронно загружает изображение текстуры карты куба из единственного URL и создает новую текстуру из данных.
Объявление
Swift
func cubeMapWithContentsOfURL(_
filePath
: NSURL!, optionstextureOperations
: [NSObject : AnyObject]!, queuequeue
: dispatch_queue_t!, completionHandlerblock
: GLKTextureLoaderCallback!)Objective C
- (void)cubeMapWithContentsOfURL:(NSURL *)
filePath
options:(NSDictionary *)textureOperations
queue:(dispatch_queue_t)queue
completionHandler:(GLKTextureLoaderCallback)block
Параметры
filePath
Путь к изображению для загрузки.
textureOperations
Словарь, описывающий любые дополнительные шаги, которые Вы хотите, чтобы загрузчик текстуры предпринял при загрузке текстуры. Посмотрите
“Texture Loading Options”
.queue
Очередь отгрузки, что к Вашему блоку обращаются, когда завершается задача. Если
NULL
передается, блок вызывают на основной очереди отгрузки.block
Блок, который вызовут, когда завершается задача.
Обсуждение
Этот метод идентичен
cubeMapWithContentsOfURL:options:error:
, за исключением того, что это загружает текстуру асинхронно. Когда этот метод вызывают, он создает новую фоновую задачу для обрабатывания запроса и затем возвращает управление приложению. Позже, когда задача завершена, GLKit вызывает Ваш обработчик завершения на очереди, которую Вы предоставили.Оператор импорта
Objective C
@import GLKit;
Swift
import GLKit
Доступность
Доступный в iOS 5.0 и позже.
Типы данных
-
Подпись для блока выполнилась после того, как асинхронная работа загрузки текстуры завершается.
Объявление
Swift
typealias GLKTextureLoaderCallback = (GLKTextureInfo!, NSError!) -> Void
Objective C
typedef void (^GLKTextureLoaderCallback) (GLKTextureInfo *textureInfo, NSError *outError)
Обсуждение
Блочные параметры определяются следующим образом:
textureInfo
Информационный объект текстуры, описывающий загруженную текстуру или
nil
если произошла ошибка.error
Если работа была успешна, это значение является нолем; иначе, этот параметр содержит объект, описывающий произошедшую проблему.
Оператор импорта
Objective C
@import GLKit;
Swift
import GLKit
Доступность
Доступный в iOS 5.0 и позже.
-
Ключи для указания в a
textureOperations
словарь.Объявление
Swift
let GLKTextureLoaderApplyPremultiplication: String let GLKTextureLoaderGenerateMipmaps: String let GLKTextureLoaderOriginBottomLeft: String let GLKTextureLoaderGrayscaleAsAlpha: String let GLKTextureLoaderSRGB: String
Objective C
NSString *const GLKTextureLoaderApplyPremultiplication; NSString *const GLKTextureLoaderGenerateMipmaps; NSString *const GLKTextureLoaderOriginBottomLeft; NSString *const GLKTextureLoaderGrayscaleAsAlpha; NSString *const GLKTextureLoaderSRGB;
Константы
-
GLKTextureLoaderApplyPremultiplication
Этот ключ указывает, должны ли данные в изображении быть предварительно умножены прежде чем быть загруженным в sharegroup. Значение для этого ключа
NSNumber
объект, указывающий булево значение. ЕслиNO
false
, данные загружаются в sharegroup без того, чтобы быть измененным. ЕслиYES
true
, красные, зеленые и синие компоненты каждого пикселя умножаются на альфа-значение. Если ключ не указан, значение по умолчаниюNO
false
. Никогда не указывайтеYES
true
для текстуры, которая находится в сжатом формате.Доступный в iOS 5.0 и позже.
-
GLKTextureLoaderGenerateMipmaps
Этот ключ указывает, должны ли множественные отображения быть созданы для текстуры. Значение для этого ключа
NSNumber
объект, указывающий булево значение. ЕслиNO
false
, только текстура загружается. ЕслиYES
true
, когда текстура создается, полный набор уровней множественного отображения сгенерирован для текстуры.GL_TEXTURE_MIN_FILTER
параметр для текстуры изменяется наGL_LINEAR_MIPMAP_LINEAR
когда сгенерированы множественные отображения. Если ключ не указан, значение по умолчаниюNO
false
.Доступный в iOS 5.0 и позже.
-
GLKTextureLoaderOriginBottomLeft
Этот ключ указывает, должны ли данные изображения быть вертикально зеркально отражены для соответствия системы координат OpenGL. Значение для этого ключа
NSNumber
объект, указывающий булево значение. ЕслиNO
false
, данные изображения не зеркально отражаются. ЕслиYES
true
, данные изображения зеркально отражаются прежде чем быть загруженным. Если ключ не указан, значение по умолчаниюNO
false
.Доступный в iOS 5.0 и позже.
-
GLKTextureLoaderGrayscaleAsAlpha
Этот ключ указывает, должны ли данные изображения в полутоновом изображении быть обработаны как информация об альфе. Значение для этого ключа
NSNumber
объект, указывающий булево значение. ЕслиNO
false
, данные изображения обрабатываются как данные яркости. ЕслиYES
true
, данные изображения обрабатываются как альфа-данные. Значение по умолчаниюNO
false
. Если исходное изображение не является полутоновым изображением, этот ключ проигнорирован.Доступный в iOS 5.0 и позже.
-
GLKTextureLoaderSRGB
Этот ключ указывает, должны ли данные изображения в текстуре быть обработаны как sRGB данные. Значение для этого ключа
NSNumber
объект, указывающий булево значение. ЕслиNO
false
, данные изображения обрабатываются как линейные пиксельные данные. ЕслиYES
true
, данные изображения обрабатываются как sRGB пиксельные данные. Значение по умолчаниюNO
false
.Доступный в iOS 7.0 и позже.
-
-
Строки, используемые при обработке
NSError
сообщения возвратились из метода загрузки текстуры.Объявление
Swift
let GLKTextureLoaderErrorDomain: String let GLKTextureLoaderErrorKey: String let GLKTextureLoaderGLErrorKey: String
Objective C
extern NSString *const GLKTextureLoaderErrorDomain; extern NSString *const GLKTextureLoaderErrorKey; extern NSString *const GLKTextureLoaderGLErrorKey;
Константы
-
GLKTextureLoaderErrorDomain
Ошибочный домен, используемый GLKit при возврате ошибок загрузки текстуры.
Доступный в iOS 5.0 и позже.
-
GLKTextureLoaderErrorKey
Ключ раньше получал строку ошибки от ошибочного объекта
userInfo
словарь.Доступный в iOS 5.0 и позже.
-
GLKTextureLoaderGLErrorKey
Ключ раньше получал дополнительную информацию от ошибочного объекта
userInfo
словарь.Доступный в iOS 5.0 и позже.
-
-
Значения, которые будут возвращены в
NSError
когда загрузчик текстуры встречается с ошибкой.Объявление
Swift
enum GLKTextureLoaderError : GLuint { case FileOrURLNotFound case InvalidNSData case InvalidCGImage case UnknownPathType case UnknownFileType case PVRAtlasUnsupported case CubeMapInvalidNumFiles case CompressedTextureUpload case UncompressedTextureUpload case UnsupportedCubeMapDimensions case UnsupportedBitDepth case UnsupportedPVRFormat case DataPreprocessingFailure case MipmapUnsupported case UnsupportedOrientation case ReorientationFailure case AlphaPremultiplicationFailure case InvalidEAGLContext case IncompatibleFormatSRGB }
Objective C
enum { GLKTextureLoaderErrorFileOrURLNotFound = 0, GLKTextureLoaderErrorInvalidNSData = 1, GLKTextureLoaderErrorInvalidCGImage = 2, GLKTextureLoaderErrorUnknownPathType = 3, GLKTextureLoaderErrorUnknownFileType = 4, GLKTextureLoaderErrorPVRAtlasUnsupported = 5, GLKTextureLoaderErrorCubeMapInvalidNumFiles = 6, GLKTextureLoaderErrorCompressedTextureUpload = 7, GLKTextureLoaderErrorUncompressedTextureUpload = 8, GLKTextureLoaderErrorUnsupportedCubeMapDimensions = 9, GLKTextureLoaderErrorUnsupportedBitDepth = 10, GLKTextureLoaderErrorUnsupportedPVRFormat = 11, GLKTextureLoaderErrorDataPreprocessingFailure = 12 GLKTextureLoaderErrorMipmapUnsupported = 13, GLKTextureLoaderErrorUnsupportedOrientation = 14, GLKTextureLoaderErrorReorientationFailure = 15, GLKTextureLoaderErrorAlphaPremultiplicationFailure = 16, GLKTextureLoaderErrorInvalidEAGLContext = 17 GLKTextureLoaderErrorIncompatibleFormatSRGB = 18 }; typedef NSUInteger GLKTextureLoaderError;
Константы
-
FileOrURLNotFound
GLKTextureLoaderErrorFileOrURLNotFound
Файл не мог быть найден в предоставленном пути.
Доступный в iOS 5.0 и позже.
-
InvalidNSData
GLKTextureLoaderErrorInvalidNSData
Предоставленные данные не находятся в распознанном формате изображения.
Доступный в iOS 5.0 и позже.
-
InvalidCGImage
GLKTextureLoaderErrorInvalidCGImage
CGImage
предоставленный было недопустимо.Доступный в iOS 5.0 и позже.
-
UnknownPathType
GLKTextureLoaderErrorUnknownPathType
Тип тракта был нераспознанным.
Доступный в iOS 5.0 и позже.
-
UnknownFileType
GLKTextureLoaderErrorUnknownFileType
Файл был в нераспознанном формате.
Доступный в iOS 5.0 и позже.
-
PVRAtlasUnsupported
GLKTextureLoaderErrorPVRAtlasUnsupported
Карты куба не могут быть сжаты в формате PVRTC.
Доступный в iOS 5.0 и позже.
-
CubeMapInvalidNumFiles
GLKTextureLoaderErrorCubeMapInvalidNumFiles
Неправильное число файлов было указано для карты куба.
Доступный в iOS 5.0 и позже.
-
CompressedTextureUpload
GLKTextureLoaderErrorCompressedTextureUpload
Сжатая текстура не могла быть загружена.
Доступный в iOS 5.0 и позже.
-
UncompressedTextureUpload
GLKTextureLoaderErrorUncompressedTextureUpload
Несжатая текстура не могла быть загружена.
Доступный в iOS 5.0 и позже.
-
UnsupportedCubeMapDimensions
GLKTextureLoaderErrorUnsupportedCubeMapDimensions
Размерности карты куба являются неправильными.
Доступный в iOS 5.0 и позже.
-
UnsupportedBitDepth
GLKTextureLoaderErrorUnsupportedBitDepth
Данные в исходном изображении имеют неподдерживаемую битовую глубину.
Доступный в iOS 5.0 и позже.
-
UnsupportedPVRFormat
GLKTextureLoaderErrorUnsupportedPVRFormat
Данные в сжатом формате PVRTC находятся в неподдерживаемом формате.
Доступный в iOS 5.0 и позже.
-
DataPreprocessingFailure
GLKTextureLoaderErrorDataPreprocessingFailure
Данные не могли быть предварительно обработаны правильно.
Доступный в iOS 5.0 и позже.
-
MipmapUnsupported
GLKTextureLoaderErrorMipmapUnsupported
Исходные данные текстуры не позволяют, множественно отображается, чтобы быть сгенерированным.
Доступный в iOS 5.0 и позже.
-
UnsupportedOrientation
GLKTextureLoaderErrorUnsupportedOrientation
Исходные данные текстуры сохранены неподдерживаемой позицией источника.
Доступный в iOS 5.0 и позже.
-
ReorientationFailure
GLKTextureLoaderErrorReorientationFailure
Исходные данные текстуры не позволяют изображению быть переориентированным.
Доступный в iOS 5.0 и позже.
-
AlphaPremultiplicationFailure
GLKTextureLoaderErrorAlphaPremultiplicationFailure
Исходные данные текстуры не позволяют альфе быть предварительно умноженной.
Доступный в iOS 5.0 и позже.
-
InvalidEAGLContext
GLKTextureLoaderErrorInvalidEAGLContext
Контекст EAGL не был допустимым контекстом.
Доступный в iOS 5.0 и позже.
-
IncompatibleFormatSRGB
GLKTextureLoaderErrorIncompatibleFormatSRGB
Декодируемые данные были в несовместимом формате для текстуры sRGB.
Доступный в iOS 5.0 и позже.
Оператор импорта
Objective C
@import GLKit;
Swift
import GLKit
Доступность
Доступный в iOS 5.0 и позже.
-