Velocidad de fotogramas constante en WPF para el juego

Estoy creando un juego simple de simulación de proyectiles y vehículos en WPF usando C #. Necesito tener una velocidad de cuadro constante (es decir, necesito saber cuánto mover un objeto con una cierta velocidad en cada cuadro). De esta manera, podría suscribir un evento que calcula y actualiza las posiciones de acuerdo con la física del juego a la CompositionTarget.Rendering evento.

CompositionTarget.Rendering += UpdatePositions;

Lo busqué en Google un rato y no encontré respuesta. Los fps en WPF Parece ser arbitrario, y usar un Cronómetro para saber cuánto tiempo transcurrió entre un cuadro y el anterior no estaría limpio en absoluto.

También pensé en crear mi propia velocidad de fotogramas, llamando a UpdatePositions cada cierta cantidad de milisegundos y esperando que el Renderizado se produzca en consecuencia y tenga una animación suave. Esto parece reinventar la rueda, y no puedo pensar en una forma de implementar esto de una manera limpia y simple.

¡Gracias

Respuestas a la pregunta(2)

Su respuesta a la pregunta