Private
_axisPrivate
_axisPrivate
_axisPrivate
axisPrivate
durationPrivate
calculateReturns the angle about specified axis to rotate the target to align with the camera. By projecting the forward/up vector onto planes defined by the relevant axis as the normal, we can separately calculate the angles of each axis. The separate calculations allow for each axis to have its own buffer / interpolation values. Because the user is expected to walk around freely, we use local X and Z axes for calculation, but global Y axis as the user's perception of 'up' is constant.
Private
calculatePrivate
calculatePrivate
skip
BillboardRotationCalculator is used to calculate the quaternion to rotate an object by to align with a new vector along an axis. More specifically, this calculator is used along a SceneObject's local X/Z-axes and global Y-axis. These calculators only take in vec3's as SceneObject manipulation is handled in BillboardController.