updateMatrices() {
    let parentObj2D = this._parentObject2DFacade
    let needsWorldMatrixUpdate
    if (this._matrixChanged) {
      this._updateLocalMatrix()
      this._matrixChanged = false
      needsWorldMatrixUpdate = true
    } else {
      needsWorldMatrixUpdate = parentObj2D && parentObj2D._worldMatrixVersion > this._worldMatrixVersion
    }
    if (needsWorldMatrixUpdate) {
      if (parentObj2D) {
        multiplyMatrices(parentObj2D.worldTransformMatrix, this.transformMatrix, this.worldTransformMatrix)
      } else {
        copyMatrix(this.transformMatrix, this.worldTransformMatrix)
      }

      this._worldMatrixVersion = ++_worldMatrixVersion
    }
  }
Update this facade's `transformMatrix` and `worldTransformMatrix` to the current state if necessary.

As long as this is called from the `afterUpdate` lifecycle method or later, it can be safely assumed that
the matrices of all ancestors have already been similarly updated so the result should always be accurate.

@returns {Boolean} true if an update was performed