I need the ability to set both upper and lower limits for all 3 axis of a joint to unique asymmetrical values. After much fighting with the physics system, it appears to me that this is only possible with the X axis. That is unless, I parent 3 empty Go's each rotated so that their local X axis aligns with the top level parent's forward, up, and right. Why is this, surely it's not uncommon to need a spherical physics joint (ball-and-socket) with unique upper and lower rotational limits for each axis? EG: //Pitch minX: -30° maxX: 175° //Yaw minY: -90° maxY: 120° //Roll minZ: -60° maxZ: 45° How am I supposed to address/achieve this behavior? If I need to code my own joint, how do I get it to play well with physics RigidBody Forces or torques.