GLKView
Соответствует
-
AnyObject -
CVarArgType -
Сопоставимый -
Hashable -
NSCoding -
NSObjectProtocol -
Печатаемый -
Reflectable -
UIAccessibilityIdentification -
UIAppearance -
UIAppearanceContainer -
UICoordinateSpace -
UIDynamicItem -
UITraitEnvironment -
NSCoding -
NSObject -
UIAppearance -
UIAppearanceContainer -
UICoordinateSpace -
UIDynamicItem -
UITraitEnvironment
Оператор импорта
Swift
import GLKit
Objective C
@import GLKit;
Доступность
Доступный в iOS 5.0 и позже.
GLKView класс упрощает усилие, требуемое создать OpenGL приложение ES путем обеспечения реализации по умолчанию OpenGL осведомленное о ES представление. A GLKView непосредственно управляет объектом кадрового буфера от имени Вашего приложения; когда содержание должно быть обновлено, Ваше приложение просто должно вовлечь кадровый буфер.
Использовать a GLKView в Вашем приложении выделите и инициализируйте новое GLKView возразите и обеспечьте его OpenGL контекст ES. Затем измените представление drawableColorFormat, drawableDepthFormat, drawableStencilFormat, и drawableMultisample свойства для конфигурирования формата объекта кадрового буфера drawable. После этого представление автоматически создает или обновляет объект кадрового буфера каждый раз, когда должно быть перерисовано представление. A GLKView возразите использует регулярный цикл рисования представления для a UIView объект, вызывая drawRect: метод каждый раз, когда должно быть обновлено содержание представления. Прежде, чем вызвать drawRect: метод, представление делает EAGLContext возразите текущему OpenGL контекст ES, и связывает его объект кадрового буфера с OpenGL контекст ES как цель для рендеринга команд. Реализация Вашего приложения drawRect: метод должен вызвать один или несколько OpenGL функции ES для рендеринга изображения в объекте кадрового буфера. Затем представление разрешает любую мультивыборку, что Вы, возможно, включили и поставляете законченные результаты.
GLKView класс может использоваться в сочетании с a GLKViewController объект создать цикл рендеринга анимации, перерисовывающий содержание представления в указанной частоте кадров.
Разделение на подклассы примечаний
Как правило, нет никакой потребности разделить на подклассы GLKView класс. Вместо этого обеспечьте объект делегата нарисовать содержание представления. Посмотрите Ссылку на протокол GLKViewDelegate.
-
Инициализирует новое представление.
Объявление
Swift
init!(frameframe: CGRect, contextcontext: EAGLContext!)Objective C
- (instancetype)initWithFrame:(CGRect)framecontext:(EAGLContext *)contextПараметры
framecontextOpenGL контекст ES раньше хранил объект кадрового буфера.
Возвращаемое значение
Инициализированное представление возражает или
nilесли не мог бы быть создан объект.Оператор импорта
Objective C
@import GLKit;Swift
import GLKitДоступность
Доступный в iOS 5.0 и позже.
-
delegateСвойствоДелегат представления.
Объявление
Swift
@IBOutlet unowned(unsafe) var delegate: GLKViewDelegate!Objective C
@property(nonatomic, assign) IBOutlet id<GLKViewDelegate> delegateОбсуждение
Делегат является дополнительным. Если делегату предоставлены, вместо этого вызывают того, чтобы вызвать a
drawRect:метод каждый раз, когда должно быть нарисовано содержание представления. Необходимо или разделить представление на подклассы для переопределенияdrawRect:метод, или предоставляют делегату, но не обоим.Оператор импорта
Objective C
@import GLKit;Swift
import GLKitДоступность
Доступный в iOS 5.0 и позже.
-
drawableColorFormatСвойствоФормат цвета renderbuffer.
Объявление
Swift
var drawableColorFormat: GLKViewDrawableColorFormatObjective C
@property(nonatomic) GLKViewDrawableColorFormat drawableColorFormatОбсуждение
Значение по умолчанию
GLKViewDrawableColorFormatRGBA8888.После Ваших изменений приложений значение этого свойства представление воссоздает свой объект кадрового буфера в следующий раз, когда представление нарисовано.
Оператор импорта
Objective C
@import GLKit;Swift
import GLKitДоступность
Доступный в iOS 5.0 и позже.
-
drawableDepthFormatСвойствоФормат глубины renderbuffer
Объявление
Swift
var drawableDepthFormat: GLKViewDrawableDepthFormatObjective C
@property(nonatomic) GLKViewDrawableDepthFormat drawableDepthFormatОбсуждение
Значение по умолчанию
GLKViewDrawableDepthFormatNone.После Ваших изменений приложений значение этого свойства представление воссоздает свой объект кадрового буфера в следующий раз, когда представление нарисовано.
Оператор импорта
Objective C
@import GLKit;Swift
import GLKitДоступность
Доступный в iOS 5.0 и позже.
-
drawableStencilFormatСвойствоФормат шаблона renderbuffer.
Объявление
Swift
var drawableStencilFormat: GLKViewDrawableStencilFormatObjective C
@property(nonatomic) GLKViewDrawableStencilFormat drawableStencilFormatОбсуждение
Значение по умолчанию
GLKViewDrawableStencilFormatNone.После Ваших изменений приложений значение этого свойства представление воссоздает свой объект кадрового буфера в следующий раз, когда представление нарисовано.
Оператор импорта
Objective C
@import GLKit;Swift
import GLKitДоступность
Доступный в iOS 5.0 и позже.
-
drawableMultisampleСвойствоФормат буфера мультивыборки.
Объявление
Swift
var drawableMultisample: GLKViewDrawableMultisampleObjective C
@property(nonatomic) GLKViewDrawableMultisample drawableMultisampleОбсуждение
Значение по умолчанию
GLKViewDrawableMultisampleNone.После Ваших изменений приложений значение этого свойства представление воссоздает свой объект кадрового буфера в следующий раз, когда представление нарисовано.
Оператор импорта
Objective C
@import GLKit;Swift
import GLKitДоступность
Доступный в iOS 5.0 и позже.
-
drawableHeightСвойствоВысота, в пикселях, базового объекта кадрового буфера. (только для чтения)
Объявление
Swift
var drawableHeight: Int { get }Objective C
@property(nonatomic, readonly) NSInteger drawableHeightОбсуждение
Высота и ширина базового объекта кадрового буфера вычисляются автоматически представлением, основанным на объектах на
boundsиcontentScaleFactorсвойства и изменение каждый раз, когда любое из тех свойств изменение. Ваше приложение никогда непосредственно корректирует размер объекта кадрового буфера. Вместо этого Ваше приложение должно читатьdrawableHeightиdrawableWidthсвойства и использование те для конфигурирования его OpenGL код рендеринга ES. Например, Вы могли бы использоватьdrawableHeightиdrawableWidthсвойства для установки OpenGL область просмотра ES, определяя размер и сложность художественных активов для загрузки, и т.д.Оператор импорта
Objective C
@import GLKit;Swift
import GLKitДоступность
Доступный в iOS 5.0 и позже.
См. также
-
drawableWidthСвойствоШирина, в пикселях, базового объекта кадрового буфера. (только для чтения)
Объявление
Swift
var drawableWidth: Int { get }Objective C
@property(nonatomic, readonly) NSInteger drawableWidthОбсуждение
Высота и ширина базового объекта кадрового буфера вычисляются автоматически представлением, основанным на объектах на
boundsиcontentScaleFactorсвойства и изменение каждый раз, когда любое из тех свойств изменение. Ваше приложение никогда непосредственно корректирует размер объекта кадрового буфера. Вместо этого Ваше приложение должно читатьdrawableHeightиdrawableWidthсвойства и использование те для конфигурирования его OpenGL код рендеринга ES. Например, Вы могли бы использоватьdrawableHeightиdrawableWidthсвойства для установки OpenGL область просмотра ES, определяя размер и сложность художественных активов для загрузки, и т.д.Оператор импорта
Objective C
@import GLKit;Swift
import GLKitДоступность
Доступный в iOS 5.0 и позже.
См. также
-
contextСвойствоOpenGL контекст ES, используемый при рисовании содержания представления.
Объявление
Swift
var context: EAGLContext!Objective C
@property(nonatomic, retain) EAGLContext *contextОбсуждение
Представление использует этот контекст в качестве места для создания его базового объекта кадрового буфера, и это также устанавливает контекст прежде, чем вызвать метод рисования. Никогда не изменяйте контекст из своего метода рисования.
Оператор импорта
Objective C
@import GLKit;Swift
import GLKitДоступность
Доступный в iOS 5.0 и позже.
-
Связывает базовый объект кадрового буфера с OpenGL ES.
Объявление
Swift
func bindDrawable()Objective C
- (void)bindDrawableОбсуждение
Прежде, чем вызвать Ваш метод рисования, представление связывает базовый объект кадрового буфера с контекстом так, чтобы представляющие команды были автоматически вовлечены в него. Однако некоторые стратегии рендеринга требуют, чтобы Вы изменили цель своих команд рендеринга к другому объекту кадрового буфера, такой как тогда, когда необходимо представить к текстуре сначала. Если Ваше приложение изменило объект кадрового буфера, связанный с OpenGL ES, это вызывает этот метод для повторного переплетения объекта кадрового буфера представления к OpenGL ES.
Оператор импорта
Objective C
@import GLKit;Swift
import GLKitДоступность
Доступный в iOS 5.0 и позже.
-
enableSetNeedsDisplayСвойствоБулево значение, указывающее, реагирует ли представление на сообщения, лишающие законной силы содержание представления.
Объявление
Swift
var enableSetNeedsDisplay: BoolObjective C
@property(nonatomic) BOOL enableSetNeedsDisplayОбсуждение
По умолчанию, a
GLKViewвозразите уважает стандартный цикл рисования представления за aUIViewобъект, как описано в Ссылке класса UIView. Однако многие OpenGL приложения ES должны обновить их содержание явно в цикле рендеринга анимации. При обновлении содержания в цикле рендеринга нормальное по требованию механизм для обновлений представления может быть отключен путем установки значения этого свойства кNOfalse. Если Ваше приложение использует aGLKViewControllerвозразите для управления циклом рендеринга, контроллер представления автоматически устанавливает это свойство вNOfalse.Оператор импорта
Objective C
@import GLKit;Swift
import GLKitДоступность
Доступный в iOS 5.0 и позже.
См. также
-
Сразу перерисовывает содержание представления.
Объявление
Swift
func display()Objective C
- (void)displayОбсуждение
Этот метод заставляет Ваш метод рисования быть вызванным сразу и затем представляет представленное изображение экрану. Ваше приложение обычно вызывает этот метод в цикле рендеринга, таком как тот, предоставленный
GLKViewControllerкласс, для обеспечения непрерывной плавной анимации.Никогда не вызывайте этот метод в своей функции получения.
Оператор импорта
Objective C
@import GLKit;Swift
import GLKitДоступность
Доступный в iOS 5.0 и позже.
См. также
-
Рисует содержание представления и возвращает их как новый объект изображения.
Объявление
Swift
var snapshot: UIImage! { get }Objective C
@property(readonly, strong) UIImage *snapshotВозвращаемое значение
Объект изображения.
Обсуждение
Когда этот метод вызывают, представление устанавливает среду получения и вызывает Ваш метод рисования. Однако вместо того, чтобы представить содержание представления на экране, они возвращаются к Вашему приложению как изображение вместо этого. Этот метод нужно вызвать каждый раз, когда для Вашего приложения явно нужно содержание представления; никогда не пытайтесь непосредственно считать содержание базового кадрового буфера с помощью OpenGL функции ES.
Никогда не вызывайте этот метод в своей функции получения.
Оператор импорта
Objective C
@import GLKit;Swift
import GLKitДоступность
Доступный в iOS 5.0 и позже.
-
Удаляет drawable объект, связанный с представлением.
Объявление
Swift
func deleteDrawable()Objective C
- (void)deleteDrawableОбсуждение
drawable объект использует существенное количество памяти, поэтому каждый раз, когда представление не будет используемым для отображения содержания в течение значительного промежутка времени, приложение должно вызвать этот метод для избавления от базовой памяти. Например, Ваше приложение могло бы вызвать этот метод после сокрытия представления или прежде, чем перейти на другой экран содержания.
Если Вы используете a
GLKViewControllerобъект управлять представлением, контроллер представления автоматически вызывает этот метод каждый раз, когда Ваше приложение перемещается в фон.После вызова этого метода не лишайте законной силы содержание представления или вызывайте представление
displayметод, пока Вы не готовы вывести на экран содержание снова пользователю; рисование содержания представления автоматически перераспределяет drawable объект.Оператор импорта
Objective C
@import GLKit;Swift
import GLKitДоступность
Доступный в iOS 5.0 и позже.
-
Формат цвета renderbuffer.
Объявление
Swift
enum GLKViewDrawableColorFormat : GLint { case RGBA8888 case RGB565 case SRGBA8888 }Objective C
typedef enum { GLKViewDrawableColorFormatRGBA8888 = 0, GLKViewDrawableColorFormatRGB565, GLKViewDrawableColorFormatSRGBA8888 } GLKViewDrawableColorFormat;Константы
-
RGBA8888GLKViewDrawableColorFormatRGBA8888Формат RGBA8888.
Доступный в iOS 5.0 и позже.
-
RGB565GLKViewDrawableColorFormatRGB565Формат RGB565.
Доступный в iOS 5.0 и позже.
-
SRGBA8888GLKViewDrawableColorFormatSRGBA8888Формат sRGBA8888.
Доступный в iOS 5.0 и позже.
Оператор импорта
Objective C
@import GLKit;Swift
import GLKitДоступность
Доступный в iOS 5.0 и позже.
-
-
Формат глубины renderbuffer.
Объявление
Swift
enum GLKViewDrawableDepthFormat : GLint { case FormatNone case Format16 case Format24 }Objective C
typedef enum { GLKViewDrawableDepthFormatNone = 0, GLKViewDrawableDepthFormat16, GLKViewDrawableDepthFormat24, } GLKViewDrawableDepthFormat;Константы
-
FormatNoneGLKViewDrawableDepthFormatNoneБазовый объект кадрового буфера не имеет никакого буфера глубины.
Доступный в iOS 5.0 и позже.
-
Format16GLKViewDrawableDepthFormat1616-разрядная запись глубины для каждого пикселя.
Доступный в iOS 5.0 и позже.
-
Format24GLKViewDrawableDepthFormat2424-разрядная запись глубины для каждого пикселя.
Доступный в iOS 5.0 и позже.
Оператор импорта
Objective C
@import GLKit;Swift
import GLKitДоступность
Доступный в iOS 5.0 и позже.
-
-
Формат шаблона renderbuffer.
Объявление
Swift
enum GLKViewDrawableStencilFormat : GLint { case FormatNone case Format8 }Objective C
typedef enum { GLKViewDrawableStencilFormatNone = 0, GLKViewDrawableStencilFormat8, } GLKViewDrawableStencilFormat;Константы
-
FormatNoneGLKViewDrawableStencilFormatNoneБазовый объект кадрового буфера не имеет никакого буфера шаблонов.
Доступный в iOS 5.0 и позже.
-
Format8GLKViewDrawableStencilFormat88-разрядная запись шаблона для каждого пикселя.
Доступный в iOS 5.0 и позже.
Оператор импорта
Objective C
@import GLKit;Swift
import GLKitДоступность
Доступный в iOS 5.0 и позже.
-
-
Формат буфера мультивыборки.
Объявление
Swift
enum GLKViewDrawableMultisample : GLint { case MultisampleNone case Multisample4X }Objective C
typedef enum { GLKViewDrawableMultisampleNone = 0, GLKViewDrawableMultisample4X, } GLKViewDrawableMultisample;Константы
-
MultisampleNoneGLKViewDrawableMultisampleNoneМультивыборка не включена.
Доступный в iOS 5.0 и позже.
-
Multisample4XGLKViewDrawableMultisample4XМультивыборка включена.
Доступный в iOS 5.0 и позже.
Обсуждение
Мультивыборка повышает качество выходного изображения, но может потребовать, чтобы больше памяти и обработки изображений сделали так. Также, необходимо профилировать приложение с, и не мультивыбирая включил, и выберите установку, обеспечивающую и качество изображения и производительность, которой Вы требуете.
Оператор импорта
Objective C
@import GLKit;Swift
import GLKitДоступность
Доступный в iOS 5.0 и позже.
-
