1

J'ai joué avec certains des exemples et ils ont l'air vraiment bien.La physique de Bullet doit-elle être refactorisée pour être utilisée dans une application DirectX?

Cependant, j'ai remarqué que Bullet utilise ses propres structures vectorielles et utilitaires mathématiques. J'utilise DirectXMath pour le reste de l'application DirectX. Donc, cela signifie que j'ai deux ensembles de fonctions mathématiques. Je pense que le DirectXMath est le plus efficace, mais Bullet a une longueur de 130 000 lignes, donc je dois être sûr avant de commencer le refactoring.

Répondre

3

Il n'y a pratiquement pas besoin de refactoriser. Cela semble une tâche décourageante, surtout si l'on considère la quantité d'erreurs qui peuvent potentiellement être introduites dans le processus (et le calcul de balle est assez rapide, avec l'avantage d'être inline sur un appel sur les fonctions d3d). Utilisez simplement les types de données bullet pour la simulation et convertissez-les en types de données mathématiques d3d en cas de besoin (puisqu'ils ont la même disposition mémoire, un pointeur effectuera le travail et aura un coût quasiment nul, avec quelques opérateurs de casting C++. rendre le processus presque transparent)

Questions connexes