Bonjour, je construis un petit moteur physique en c#/xna.

J'ai deux questions:

-Premierement sur l'organisation des primitives, pour l'instant j'ai une classe BasePrimitive dont herite mes Sphere, AABB... et une classe RigidBody qui prend en parametre une basePrimitive et qui se charge de faire le boulot de l'integration, ya-t-il des meilleures methodes?

-Pour les tests de collisions, pour le moment je gere 2 primitives ce qui revient a faire 4 if pour declencher la bonne methode de collision.(sphereAndSphereCollision || SphereAndBoxCollision...)
Je cherche a eviter la batterie de IF. Je pensais faire avec une specification de template mais il me semble qu'on ne peut pas specifier le generic en c#.
Avez vous une methode elegante de traiter ce probleme??

Merci