public AnimationClipLayout(LayoutInfo info)
 {
     FloatCurve      = new FloatCurveLayout(info);
     PPtrCurve       = new PPtrCurveLayout(info);
     QuaternionCurve = new QuaternionCurveLayout(info);
     Vector3Curve    = new Vector3CurveLayout(info);
 }
Example #2
0
        public IEnumerable <PPtr <Object> > FetchDependencies(DependencyContext context)
        {
            PPtrCurveLayout layout = context.Layout.AnimationClip.PPtrCurve;

            foreach (PPtr <Object> asset in context.FetchDependencies(Curve, layout.CurveName))
            {
                yield return(asset);
            }
            yield return(context.FetchDependency(Script, layout.ScriptName));
        }
Example #3
0
        public YAMLNode ExportYAML(IExportContainer container)
        {
            YAMLMappingNode node   = new YAMLMappingNode();
            PPtrCurveLayout layout = container.ExportLayout.AnimationClip.PPtrCurve;

            node.Add(layout.CurveName, Curve.ExportYAML(container));
            node.Add(layout.AttributeName, Attribute);
            node.Add(layout.PathName, Path);
            node.Add(layout.ClassIDName, (int)ClassID);
            node.Add(layout.ScriptName, Script.ExportYAML(container));
            return(node);
        }
Example #4
0
        public void Write(AssetWriter writer)
        {
            PPtrCurveLayout layout = writer.Layout.AnimationClip.PPtrCurve;

            Curve.Write(writer);
            if (layout.IsAlignCurve)
            {
                writer.AlignStream();
            }

            writer.Write(Attribute);
            writer.Write(Path);
            writer.Write((int)ClassID);
            Script.Write(writer);
        }
Example #5
0
        public void Read(AssetReader reader)
        {
            PPtrCurveLayout layout = reader.Layout.AnimationClip.PPtrCurve;

            Curve = reader.ReadAssetArray <PPtrKeyframe>();
            if (layout.IsAlignCurve)
            {
                reader.AlignStream();
            }

            Attribute = reader.ReadString();
            Path      = reader.ReadString();
            ClassID   = (ClassIDType)reader.ReadInt32();
            Script.Read(reader);
        }
Example #6
0
        private static void GenerateEngineCurve(TypeTreeContext context, SerializableType origin, string name)
        {
            switch (origin.Name)
            {
            case SerializableType.FloatCurveName:
                FloatCurveLayout.GenerateTypeTree(context, name);
                break;

            case SerializableType.Vector3CurveName:
                Vector3CurveLayout.GenerateTypeTree(context, name);
                break;

            case SerializableType.QuaternionCurveName:
                QuaternionCurveLayout.GenerateTypeTree(context, name);
                break;

            case SerializableType.PPtrCurveName:
                PPtrCurveLayout.GenerateTypeTree(context, name);
                break;

            default:
                throw new Exception($"Unknown engine curve {origin.Name}");
            }
        }