Expand framework for 3D agents to rotate on more than one axis
Razoric480 opened this issue · 0 comments
Razoric480 commented
To simplify the math, the base behaviors currently only operate on one axis as far as their rotation and orientation goes; pretty much implying them to be 2D agents in a 3D world.
They can move in all axis, but rotation is locked to Y axis. It's fine for most games where agents will be upright beings and cars, but falls short for six-axis games.
Special orientation behaviors can be introduced that work on multiple axis. It would necessitate extending TargetAcceleration to support Quat/Basis and extending the 3D Kinematic/Rigid agents to override their _apply_orientation methods (as well as adding a GSAIMatchOrientation3D, Face3D and LookWhereYouGo3D.)