我刚开始查看适用于 iOS 的 Open GL ES,并且正在查看 Apple 模板代码上的源代码。问题是两者
- (void)glkView:(GLKView *)view drawInRect:(CGRect)rect
和
- (void)update
正在被调用,但我无法确定通过什么以及如何更改频率?
我刚开始查看适用于 iOS 的 Open GL ES,并且正在查看 Apple 模板代码上的源代码。问题是两者
- (void)glkView:(GLKView *)view drawInRect:(CGRect)rect
和
- (void)update
正在被调用,但我无法确定通过什么以及如何更改频率?
当需要更新视图时会自动调用 glkView。
根据Apple的说法, “GLKView 对象使用 UIView 对象的常规视图绘制周期,每当需要更新视图的内容时调用它的 drawRect: 方法。”
您可以使用 GLKViewController 来设置 glkview 的帧速率,如下所示:
- (void)viewDidLoad
{
self.preferredFramesPerSecond = 60;
}
在渲染之前还会自动为您调用更新。您可以使用此调用来更新变量,例如绘制对象的位置 - 但您可能希望使用 timeSinceLastUpdate 属性,因为调用之间经过的时间可能会有所不同。