NSTimer vs CACurrentMediaTime ()
Jestem więc wśród mojej pierwszej gry na iOS i walczę o to, jak wybrać najlepszy sposób na integrację ruchu obiektów.
Gra opiera się głównie na szybko poruszających się obiektach i stałych, szybkich zmianach wprowadzanych przez użytkownika. W związku z tym staram się integrować obiekty, a solver ograniczenia działa tak szybko i dokładnie, jak to możliwe (aby zminimalizować zmiany wprowadzane przez użytkownika między kolejnymi wywołaniami pętli gry).
Dokładniej mówiąc, nie jestem pewien możliwości klasy NSTimer i funkcji CACurrentMediaTime (). Trudno to sprawdzić empirycznie, ponieważ nie jestem pewien, który błąd jest większy. Na przykład, używając NSTimer z powtarzającym się interwałem 0.008 (~ 2 aktualizacje / odświeżanie ekranu) i wywołując CACurrentMediaTime () przy kolejnych wywołaniach, stwierdzam, że odstęp czasu między wywołaniami waha się od 0,0075 - 0,009. Trudno powiedzieć, który jest odpowiedzialny za (małą) niespójność. Więc dla określenia kroku czasowego powinienem być:
Załóżmy, że NSTimer jest wystarczająco dokładny, aby użyć przedziału czasu NSTimer jako kroku czasu pętli gry
Użyj CACurrentMediaTime (), aby określić odstęp czasu między kolejnymi wywołaniami pętli gry.
Uczeń i nowicjusz w tej dziedzinie - bądź miły :) Wszelkie rady są bardzo mile widziane. Dziękuję za Twój czas.