Bonjour,
Je viens de lire la documentation de ODE (Open Dynamics Engine). Un point en particulier a éveillé mon attention, et j'aimerais des précisions.
Quand on travaille avec ODE, le programme prend la forme d'une boucle ou on appelleou
Code : Sélectionner tout - Visualiser dans une fenêtre à part void dWorldStep (dWorldID, dReal stepsize);à chaque itération. Or, la documentation précise que stepsize doit être une constante, c'est à dire ne pas varier d'un appel à l'autre, faute de quoi on risque de faire trembler les objets (jittering). Source : http://opende.sourceforge.net/wiki/i...al_%28World%29.
Code : Sélectionner tout - Visualiser dans une fenêtre à part void dWorldQuickStep (dWorldID, dReal stepsize);
Mais il me semble que l'intérêt de ce paramêtre, c'est de pouvoir s'adapter aux différents framerates qu'aura une application sur différentes applications, en donnant comme stepsize le temps passé à rendre une frame. Or ce temps est variable selon le cas (nombre d'objets à l'écran etc), y compris d'une frame à l'autre sur une même machine.
La solution serait à priori de donner un framerate constant à l'application en le forçant à attendre si une frame est rendue rapidement. Mais celà a plusieurs inconvénients:
- les propriétaires de machines lentes ne pourront pas utiliser l'application si son framerate a été fixé trop haut, même si elles auraient pu le faire tourner à un framerate inférieur,
- les propriétaires de machines rapides qui auraient pu faire tourner l'application à un framerate élevé n'en profiterons pas,
- on est obligé de choisir un framerate pour le pire des cas même si ce cas arrive rarement.
C'est plutôt embêtant. Ma question est donc de savoir si mon inquiétude est fondée ou est-ce que je m'inquiète pour rien?
Partager