public static void GenerateTypeTree(TypeTreeContext context) { BehaviourLayout.GenerateTypeTree(context); MonoBehaviourLayout layout = context.Layout.MonoBehaviour; if (layout.HasEditorHideFlags) { context.AddUInt32(layout.EditorHideFlagsName); } if (layout.HasGeneratorAsset) { context.AddPPtr(context.Layout.Object.Name, layout.GeneratorAssetName); } context.AddPPtr(context.Layout.MonoScript.Name, layout.ScriptName); context.AddString(layout.NameName); if (layout.HasEditorClassIdentifier) { context.AddString(layout.EditorClassIdentifierName); } }
public static void GenerateTypeTree(TypeTreeContext context, string name) { AnimationLayout layout = context.Layout.Animation; context.AddNode(layout.Name, name, layout.Version); context.BeginChildren(); BehaviourLayout.GenerateTypeTree(context); context.AddPPtr(context.Layout.AnimationClip.Name, layout.AnimationName); if (layout.HasAnimations) { context.AddArray(layout.AnimationName, (c, n) => c.AddPPtr(c.Layout.AnimationClip.Name, n)); } else { context.AddArray(layout.AnimationName, TupleLayout.GenerateTypeTree, StringLayout.GenerateTypeTree, (c, n) => c.AddPPtr(c.Layout.AnimationClip.Name, n)); } context.AddInt32(layout.WrapModeName); context.AddBool(layout.PlayAutomaticallyName); context.AddBool(layout.AnimatePhysicsInvariantName); if (layout.HasAnimateOnlyIfVisible) { context.AddBool(layout.AnimateOnlyIfVisibleName); } if (layout.IsAlign) { context.Align(); } if (layout.HasCullingType) { context.AddInt32(layout.CullingTypeName); } if (layout.HasUserAABB) { AABBLayout.GenerateTypeTree(context, layout.UserAABBName); } context.EndChildren(); }