docs: private void faceObjectToCamera()
      {
          GVRSceneObject ownerObject = getOwnerObject();
          GVRTransform ownerTrans = ownerObject.getTransform();
          float camX = mMainCameraRig.getTransform().getPositionX();
          float camY = mMainCameraRig.getTransform().getPositionY();
          float camZ = mMainCameraRig.getTransform().getPositionZ();
          float ownerX = ownerTrans.getPositionX();
          float ownerY = ownerTrans.getPositionY();
          float ownerZ = ownerTrans.getPositionZ();
          float scaleX = ownerTrans.getScaleX();
          float scaleY = ownerTrans.getScaleY();
          float scaleZ = ownerTrans.getScaleZ();
  
          lookat.set(camX - ownerX, camY - ownerY, camZ - ownerZ);
          lookat = lookat.normalize();
  
          up.cross(lookat.x, lookat.y, lookat.z, ownerXaxis);
          ownerXaxis = ownerXaxis.normalize();
  
          lookat.cross(ownerXaxis.x, ownerXaxis.y, ownerXaxis.z, ownerYaxis);
          ownerYaxis = ownerYaxis.normalize();
  
          ownerTrans.setModelMatrix(new float[]{ownerXaxis.x, ownerXaxis.y, ownerXaxis.z, 0.0f,
                  ownerYaxis.x, ownerYaxis.y, ownerYaxis.z, 0.0f,
                  lookat.x, lookat.y, lookat.z, 0.0f,
                  ownerX, ownerY, ownerZ, 1.0f});
          ownerTrans.setScale(scaleX, scaleY, scaleZ);
      }