public void Apply(ParticleSystem.MinMaxCurve curve) { MinMaxMode = curve.mode; Scalar = curve.curveScalar; MinMaxMode = curve.mode; Scalar = curve.curveScalar; switch (curve.mode) { case ParticleSystemCurveMode.Constant: Scalar = curve.constantMax; MaxCurve.Apply(new AnimationCurve(new[] { new Keyframe(0, 1) })); break; case ParticleSystemCurveMode.Curve: MaxCurve.Apply(curve.curveMax); break; case ParticleSystemCurveMode.TwoCurves: MaxCurve.Apply(curve.curveMax); MinCurve.Apply(curve.curveMin); break; case ParticleSystemCurveMode.TwoConstants: Scalar = curve.constantMax; MinCurve.Apply(new AnimationCurve(new[] { new Keyframe(0, curve.constantMin / Scalar) })); MaxCurve.Apply(new AnimationCurve(new[] { new Keyframe(0, 1) })); break; default: throw new ArgumentOutOfRangeException(); } }
public YAMLNode ExportYAML(IExportContainer container) { #warning TODO: values acording to read version (current 2017.3.0f3) YAMLMappingNode node = new YAMLMappingNode(); node.AddSerializedVersion(GetSerializedVersion(container.Version)); node.Add("minMaxState", (ushort)MinMaxState); node.Add("scalar", GetExportScalar(container.Version)); node.Add("minScalar", GetExportMinScalar(container.Version)); node.Add("maxCurve", MaxCurve.ExportYAML(container)); node.Add("minCurve", MinCurve.ExportYAML(container)); return(node); }
public YAMLNode ExportYAML(IExportContainer container) { YAMLMappingNode node = new YAMLMappingNode(); node.AddSerializedVersion(GetSerializedVersion(container.Version)); node.Add("minMaxState", (ushort)MinMaxState); node.Add("scalar", GetExportScalar(container.Version)); node.Add("minScalar", GetExportMinScalar(container.Version)); node.Add("maxCurve", MaxCurve.ExportYAML(container)); node.Add("minCurve", MinCurve.ExportYAML(container)); return(node); }
public YAMLNode ExportYAML(IExportContainer container) { YAMLMappingNode node = new YAMLMappingNode(); node.AddSerializedVersion(ToSerializedVersion(container.ExportVersion)); node.Add(MinMaxStateName, (ushort)MinMaxState); node.Add(ScalarName, GetExportScalar(container.Version)); node.Add(MinScalarName, GetExportMinScalar(container.Version)); node.Add(MaxCurveName, MaxCurve.ExportYAML(container)); node.Add(MinCurveName, MinCurve.ExportYAML(container)); return(node); }
public void Read(AssetReader reader) { if (IsMinMaxStateFirst(reader.Version)) { MinMaxState = (ParticleSystemCurveMode)reader.ReadUInt16(); reader.AlignStream(AlignType.Align4); } Scalar = reader.ReadSingle(); MinScalar = IsReadMinScalar(reader.Version) ? reader.ReadSingle() : Scalar; MaxCurve.Read(reader); MinCurve.Read(reader); if (!IsMinMaxStateFirst(reader.Version)) { MinMaxState = (ParticleSystemCurveMode)reader.ReadUInt16(); reader.AlignStream(AlignType.Align4); } }
public void Read(AssetStream stream) { if (IsMinMaxStateFirst(stream.Version)) { MinMaxState = (ParticleSystemCurveMode)stream.ReadUInt16(); stream.AlignStream(AlignType.Align4); } Scalar = stream.ReadSingle(); if (IsReadMinScalar(stream.Version)) { MinScalar = stream.ReadSingle(); } MaxCurve.Read(stream); MinCurve.Read(stream); if (!IsMinMaxStateFirst(stream.Version)) { MinMaxState = (ParticleSystemCurveMode)stream.ReadUInt16(); stream.AlignStream(AlignType.Align4); } }