public static void SetTransform(UnityEngine.Transform transform, UnityEngine.Transform parent, Matrix4x4 trsMatrix) { if (!transform) { return; } #if UNITY_EDITOR UnityEditor.Undo.RecordObject(transform, "Move child node to given position"); #endif if (parent) { transform.Set(parent.worldToLocalMatrix * trsMatrix); } else { transform.Set(trsMatrix); } }