Creo que si entendi bien, la sugerencia de java3d - opengl esta mal hecha.  

  Realmente ese problema no se refiere tanto a como se va a representar (java 3d - opengl o directX) sino al modelo físico de como van a interactuar los objetos. Creo que el tratamiento que buscas es el de "inverse kinematics" (kinematica inversa) y hasta cierto punto "ragdolls". 
Aqui hay algo de informacion al respecto ( que no se note que es google  

 )
En inglesinglesbueno, me dio  

  seguir buscando, me acuerdo que alguna vez en nehe tutorials un tipo publico un ejemplo muy bueno en c++ y Opengl de ragdolls, pero luego perdi la referencia y el ejemplo
Camilo
http://runegamedev.awardspace.com/Grupo PENTEX