NSTimer против CACurrentMediaTime ()
Поэтому я в своей первой игре для iOS и пытаюсь найти наилучший способ интеграции движений объектов.
Игра сильно зависит от быстро движущихся объектов и постоянных, быстрых изменений пользовательского ввода. В связи с этим я пытаюсь обеспечить интеграцию объектов и средство решения ограничений настолько быстро и точно, насколько это возможно (чтобы минимизировать изменение пользовательского ввода между последовательными вызовами игрового цикла).
Более конкретно, я не уверен в возможностях класса NSTimer и функции CACurrentMediaTime (). Трудно проверить эмпирически, потому что я не уверен, у кого ошибка выше. Например, используя NSTimer с повторяющимся интервалом 0,008 (~ 2 обновления / обновление экрана) и вызывая CACurrentMediaTime () при последовательных вызовах, я обнаружил, что интервал времени между вызовами варьируется от 0,0075 до 0,009. Трудно сказать, кто ответственен за (маленькое) несоответствие. Поэтому для определения шага по времени я должен быть:
Assume NSTimer is accurate enough to use the NSTimer time interval as the game loop time step
Use CACurrentMediaTime() to determine the time interval between successive game loop calls.
Студент и новичок во всем этом - пожалуйста, будьте добры :) Любой совет с благодарностью. Спасибо за ваше время.