Итак, я среди своей первой игры iOS и изо всех сил пытаюсь найти лучший способ интегрировать движение объектов.
Игра в значительной степени зависит от быстро движущихся объектов и постоянных, быстрых изменений ввода. Таким образом, я пытаюсь интегрировать объекты и решатель ограничений как можно быстрее и точнее (чтобы свести к минимуму изменение пользовательского ввода между последовательными вызовами цикла игры).
В частности, я не уверен в возможностях класса NSTimer и CACurrentMediaTime(). Трудно проверить эмпирически, потому что я не уверен, что имеет большую ошибку. Например, используя NSTimer с повторяющимся интервалом 0,008 (~ 2updates/screen refresh) и вызывая CACurrentMediaTime() при последовательных вызовах, я нахожу, что временной интервал между вызовами варьируется от 0,0075 до 0,009. Трудно сказать, что несет ответственность за (небольшую) несогласованность. Поэтому для определения временного шага я должен:
-
Предположим, что NSTimer достаточно точен, чтобы использовать временной интервал NSTimer в качестве шага времени игрового цикла.
-
Используйте CACurrentMediaTime(), чтобы определить временной интервал между последовательными вызовами цикла игры.
Студент и новый для всего этого - пожалуйста, будь приятным:) Любые советы очень ценятся. Спасибо за ваше время.