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!(frame
frame
: CGRect, contextcontext
: EAGLContext!)Objective C
- (instancetype)initWithFrame:(CGRect)
frame
context:(EAGLContext *)context
Параметры
frame
context
OpenGL контекст 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: GLKViewDrawableColorFormat
Objective C
@property(nonatomic) GLKViewDrawableColorFormat drawableColorFormat
Обсуждение
Значение по умолчанию
GLKViewDrawableColorFormatRGBA8888
.После Ваших изменений приложений значение этого свойства представление воссоздает свой объект кадрового буфера в следующий раз, когда представление нарисовано.
Оператор импорта
Objective C
@import GLKit;
Swift
import GLKit
Доступность
Доступный в iOS 5.0 и позже.
-
drawableDepthFormat
СвойствоФормат глубины renderbuffer
Объявление
Swift
var drawableDepthFormat: GLKViewDrawableDepthFormat
Objective C
@property(nonatomic) GLKViewDrawableDepthFormat drawableDepthFormat
Обсуждение
Значение по умолчанию
GLKViewDrawableDepthFormatNone
.После Ваших изменений приложений значение этого свойства представление воссоздает свой объект кадрового буфера в следующий раз, когда представление нарисовано.
Оператор импорта
Objective C
@import GLKit;
Swift
import GLKit
Доступность
Доступный в iOS 5.0 и позже.
-
drawableStencilFormat
СвойствоФормат шаблона renderbuffer.
Объявление
Swift
var drawableStencilFormat: GLKViewDrawableStencilFormat
Objective C
@property(nonatomic) GLKViewDrawableStencilFormat drawableStencilFormat
Обсуждение
Значение по умолчанию
GLKViewDrawableStencilFormatNone
.После Ваших изменений приложений значение этого свойства представление воссоздает свой объект кадрового буфера в следующий раз, когда представление нарисовано.
Оператор импорта
Objective C
@import GLKit;
Swift
import GLKit
Доступность
Доступный в iOS 5.0 и позже.
-
drawableMultisample
СвойствоФормат буфера мультивыборки.
Объявление
Swift
var drawableMultisample: GLKViewDrawableMultisample
Objective 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: Bool
Objective C
@property(nonatomic) BOOL enableSetNeedsDisplay
Обсуждение
По умолчанию, a
GLKView
возразите уважает стандартный цикл рисования представления за aUIView
объект, как описано в Ссылке класса UIView. Однако многие OpenGL приложения ES должны обновить их содержание явно в цикле рендеринга анимации. При обновлении содержания в цикле рендеринга нормальное по требованию механизм для обновлений представления может быть отключен путем установки значения этого свойства кNO
false
. Если Ваше приложение использует aGLKViewController
возразите для управления циклом рендеринга, контроллер представления автоматически устанавливает это свойство вNO
false
.Оператор импорта
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;
Константы
-
RGBA8888
GLKViewDrawableColorFormatRGBA8888
Формат RGBA8888.
Доступный в iOS 5.0 и позже.
-
RGB565
GLKViewDrawableColorFormatRGB565
Формат RGB565.
Доступный в iOS 5.0 и позже.
-
SRGBA8888
GLKViewDrawableColorFormatSRGBA8888
Формат 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;
Константы
-
FormatNone
GLKViewDrawableDepthFormatNone
Базовый объект кадрового буфера не имеет никакого буфера глубины.
Доступный в iOS 5.0 и позже.
-
Format16
GLKViewDrawableDepthFormat16
16-разрядная запись глубины для каждого пикселя.
Доступный в iOS 5.0 и позже.
-
Format24
GLKViewDrawableDepthFormat24
24-разрядная запись глубины для каждого пикселя.
Доступный в 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;
Константы
-
FormatNone
GLKViewDrawableStencilFormatNone
Базовый объект кадрового буфера не имеет никакого буфера шаблонов.
Доступный в iOS 5.0 и позже.
-
Format8
GLKViewDrawableStencilFormat8
8-разрядная запись шаблона для каждого пикселя.
Доступный в 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;
Константы
-
MultisampleNone
GLKViewDrawableMultisampleNone
Мультивыборка не включена.
Доступный в iOS 5.0 и позже.
-
Multisample4X
GLKViewDrawableMultisample4X
Мультивыборка включена.
Доступный в iOS 5.0 и позже.
Обсуждение
Мультивыборка повышает качество выходного изображения, но может потребовать, чтобы больше памяти и обработки изображений сделали так. Также, необходимо профилировать приложение с, и не мультивыбирая включил, и выберите установку, обеспечивающую и качество изображения и производительность, которой Вы требуете.
Оператор импорта
Objective C
@import GLKit;
Swift
import GLKit
Доступность
Доступный в iOS 5.0 и позже.
-