3D Face Tracking in PlayCanvas using TensorFlowJS

From a quick look, you need a reference point so you can create a local up vector. LookAt takes world up by default which is why you aren’t getting pitch.

If you pass in an up vector to lookAt, it will use that to change the entity local up.

2 Likes