Я работаю над музыкальным приложением, поэтому я не могу одобрить какое-либо латентность.Хорошо реагирует на касания
Я использую любимые прикосновенияBegan/Moved/Ended для обработки моих касаний. Все идет хорошо, и мне удалось синтезировать тон (используя AudioUnit) и показать свечение под пальцем (используя GLKit), и все это прекрасно работает, если есть менее 4-7 заметок/касаний, попадающих в то же самое время, затем он гаснет и заставляет приложение застревать.
Я понял, что это потому, что я много работаю (с интерфейсом GLKit и интерфейсом, который я сделал для моего синтезатора), и мне нужен способ его исправить.
Мой код строится вокруг так:
- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event
{
for(UITouch *touch in touches)
{
CGPoint lePoint = [touch locationInView:self.view];
doing some calculataions for synth engine.......
actually making the sound avilable to play through the interface........
then I start to create the sprite object for the glow
attaching it to the nsarray of the shapes
//rejoycing in the awesomness of the sound
adding the touch to the active touches array
}
}
я точный обратный в touchesEnded.
Так что, пытаясь улучшить работу, я попытался использовать GCD для материала GLKit, так что это произойдет асинхронно, Это сработало, но порой мне приходилось видеть сияние, остающееся на экране, потому что это было не так, t в массиве, когда touchEnnd попытался удалить его.
Так что это не сработало, и я вроде как невежественный, если кто-нибудь может помочь, я был бы благодарен.