计时器我有一个名为startAnimation方法:是强制性的绘制OpenGL ES的
-(void)startAnimation{
1: self.animationTimer=[NSTimer scheduledTimerWithTimeInterval:1/60
target:self selector:@selector(gameLoop)
userInfo:nil repeats:YES];
2: //[self gameLoop]
{
的gameLoop方法是这样的:
-(void)gameLoop{
[self updateModel];
[self render]
{
现在,一个很奇怪的事情发生了。如果我注释第1行并取消注释startAnimation方法中的第2行,我将不会获取呈现在屏幕上的对象。我认为渲染可能需要不断调用gameLoop方法。但即使我将计时器设置为不重复(因此重复:NO)对象被绘制。这意味着只调用一次gameLoop方法,但是从一个NStimer对象就足够了。但是如果我手动调用gameLoop方法,我不会得到绘制的对象。我试着在执行100次的循环内调用该方法。它也没有帮助。对于使用OPENGL的定时器有没有什么特别之处?对于这个问题,如果它太不成熟,这个问题很抱歉。
非常感谢。它确实解决了这个问题,尽管我已经忘记了这个问题。欢迎来到StackOverflow。 –