Esempio n. 1
0
 public MultiModeParameter(float value)
 {
     Value  = value;
     Mode   = ParticleSystemShapeMultiModeValue.Random;
     Spread = 0.0f;
     Speed  = new MinMaxCurve(1.0f);
 }
Esempio n. 2
0
        public CustomDataModule(bool _)
        {
            VectorComponentCount0 = 4;
            Color0    = new MinMaxGradient(true);
            Vector0_0 = new MinMaxCurve(0.0f);
            Vector0_1 = new MinMaxCurve(0.0f);
            Vector0_2 = new MinMaxCurve(0.0f);
            Vector0_3 = new MinMaxCurve(0.0f);
#if UNIVERSAL
            ColorLabel0    = "Color";
            VectorLabel0_0 = "X";
            VectorLabel0_1 = "Y";
            VectorLabel0_2 = "Z";
            VectorLabel0_3 = "W";
#endif

            VectorComponentCount0 = 4;
            Color1    = new MinMaxGradient(true);
            Vector1_0 = new MinMaxCurve(0.0f);
            Vector1_1 = new MinMaxCurve(0.0f);
            Vector1_2 = new MinMaxCurve(0.0f);
            Vector1_3 = new MinMaxCurve(0.0f);
#if UNIVERSAL
            ColorLabel1    = "Color";
            VectorLabel1_0 = "X";
            VectorLabel1_1 = "Y";
            VectorLabel1_2 = "Z";
            VectorLabel1_3 = "W";
#endif
        }
 public ParticleSystemEmissionBurst(float time, int minValue, int maxValue)
 {
     Time           = time;
     CycleCount     = 1;
     RepeatInterval = 0.01f;
     CountCurve     = new MinMaxCurve(minValue, maxValue);
 }
Esempio n. 4
0
 public LightsModule(bool _)
 {
     RandomDistribution = true;
     Color          = true;
     Range          = true;
     Intensity      = true;
     RangeCurve     = new MinMaxCurve(1.0f);
     IntensityCurve = new MinMaxCurve(1.0f);
     MaxLights      = 20;
 }
Esempio n. 5
0
 public TrailModule(bool _)
 {
     Ratio                = 1.0f;
     Lifetime             = new MinMaxCurve(1.0f);
     MinVertexDistance    = 0.2f;
     RibbonCount          = 1;
     DieWithParticles     = true;
     SizeAffectsWidth     = true;
     InheritParticleColor = true;
     ColorOverLifetime    = new MinMaxGradient(true);
     WidthOverTrail       = new MinMaxCurve(1.0f);
     ColorOverTrail       = new MinMaxGradient(true);
 }
Esempio n. 6
0
        public override void Read(AssetReader reader)
        {
            base.Read(reader);

            StartLifetime.Read(reader);
            StartSpeed.Read(reader);
            StartColor.Read(reader);
            StartSize.Read(reader);
            if (IsReadSizeAxes(reader.Version))
            {
                StartSizeY.Read(reader);
                StartSizeZ.Read(reader);
            }
            if (IsReadRotationAxes(reader.Version))
            {
                StartRotationX.Read(reader);
                StartRotationY.Read(reader);
            }
            StartRotation.Read(reader);

            if (IsReadRandomizeRotationDirection(reader.Version))
            {
                RandomizeRotationDirection = reader.ReadSingle();
            }
            if (IsReadGravityModifierSingle(reader.Version))
            {
                float gravityModifier = reader.ReadSingle();
                GravityModifier = new MinMaxCurve(gravityModifier);
            }
            if (IsReadInheritVelocity(reader.Version))
            {
                InheritVelocity = reader.ReadSingle();
            }
            MaxNumParticles = reader.ReadInt32();
            if (IsReadSize3D(reader.Version))
            {
                Size3D = reader.ReadBoolean();
            }
            if (IsReadRotation3D(reader.Version))
            {
                Rotation3D = reader.ReadBoolean();
                reader.AlignStream(AlignType.Align4);
            }

            if (!IsReadGravityModifierSingle(reader.Version))
            {
                GravityModifier.Read(reader);
            }
        }
 public void Read(AssetReader reader)
 {
     Time = reader.ReadSingle();
     if (IsReadCurve(reader.Version))
     {
         CountCurve.Read(reader);
     }
     else
     {
         int minValue = reader.ReadInt32();
         int maxValue = reader.ReadInt32();
         CountCurve = new MinMaxCurve(minValue, maxValue);
     }
     CycleCount     = reader.ReadInt32();
     RepeatInterval = reader.ReadSingle();
 }
Esempio n. 8
0
 public NoiseModule(bool _)
 {
     Strength         = new MinMaxCurve(1.0f);
     StrengthY        = new MinMaxCurve(1.0f);
     StrengthZ        = new MinMaxCurve(1.0f);
     Frequency        = 0.5f;
     Damping          = true;
     Octaves          = 1;
     OctaveMultiplier = 0.5f;
     OctaveScale      = 2.0f;
     Quality          = ParticleSystemNoiseQuality.High;
     ScrollSpeed      = new MinMaxCurve(0.0f);
     Remap            = new MinMaxCurve(1.0f, 1.0f, 1.0f, 0.0f, 1.0f);
     RemapY           = new MinMaxCurve(1.0f, 1.0f, 1.0f, 0.0f, 1.0f);
     RemapZ           = new MinMaxCurve(1.0f, 1.0f, 1.0f, 0.0f, 1.0f);
     PositionAmount   = new MinMaxCurve(1.0f);
     RotationAmount   = new MinMaxCurve(0.0f);
     SizeAmount       = new MinMaxCurve(0.0f);
 }
        public override void Read(AssetReader reader)
        {
            base.Read(reader);

            if (IsReadMultiplierCurve(reader.Version))
            {
                MultiplierCurve.Read(reader);
            }
            else
            {
                float Multiplier = reader.ReadSingle();
                MultiplierCurve = new MinMaxCurve(Multiplier);
            }

            if (IsReadInfluenceFilter(reader.Version))
            {
                InfluenceFilter = reader.ReadInt32();
                InfluenceMask.Read(reader);
                m_influenceList = reader.ReadAssetArray <PPtr <ParticleSystemForceField> >();
            }
        }
 public InheritVelocityModule(float value) :
     base(value != 0.0f)
 {
     Curve = new MinMaxCurve(value);
 }
Esempio n. 11
0
        public override void Read(AssetReader reader)
        {
            base.Read(reader);

            Type = (ParticleSystemCollisionType)reader.ReadInt32();
            if (IsReadCollisionMode(reader.Version))
            {
                CollisionMode = (ParticleSystemCollisionMode)reader.ReadInt32();
            }
            if (IsReadColliderForce(reader.Version))
            {
                ColliderForce = reader.ReadSingle();
                MultiplyColliderForceByParticleSize   = reader.ReadBoolean();
                MultiplyColliderForceByParticleSpeed  = reader.ReadBoolean();
                MultiplyColliderForceByCollisionAngle = reader.ReadBoolean();
                reader.AlignStream(AlignType.Align4);
            }

            Plane0.Read(reader);
            Plane1.Read(reader);
            Plane2.Read(reader);
            Plane3.Read(reader);
            Plane4.Read(reader);
            Plane5.Read(reader);

            if (IsReadDampenSingle(reader.Version))
            {
                float dampenSingle = reader.ReadSingle();
                float bounceSingle = reader.ReadSingle();
                float energyLossOnCollisionSingle = reader.ReadSingle();
                Dampen = new MinMaxCurve(dampenSingle);
                Bounce = new MinMaxCurve(bounceSingle);
                EnergyLossOnCollision = new MinMaxCurve(energyLossOnCollisionSingle);
            }
            else
            {
                Dampen.Read(reader);
                Bounce.Read(reader);
                EnergyLossOnCollision.Read(reader);
            }

            MinKillSpeed = reader.ReadSingle();
            if (IsReadMaxKillSpeed(reader.Version))
            {
                MaxKillSpeed = reader.ReadSingle();
            }
            if (IsReadRadiusScale(reader.Version))
            {
                RadiusScale = reader.ReadSingle();
                CollidesWith.Read(reader);
            }
            if (IsReadMaxCollisionShapes(reader.Version))
            {
                MaxCollisionShapes = reader.ReadInt32();
            }
            if (IsReadQuality(reader.Version))
            {
                Quality   = (ParticleSystemCollisionQuality)reader.ReadInt32();
                VoxelSize = reader.ReadSingle();
            }
            if (IsReadCollisionMessages(reader.Version))
            {
                CollisionMessages = reader.ReadBoolean();
            }
            if (IsReadCollidesWithDynamic(reader.Version))
            {
                CollidesWithDynamic = reader.ReadBoolean();
                InteriorCollisions  = reader.ReadBoolean();
                reader.AlignStream(AlignType.Align4);
            }
        }
Esempio n. 12
0
        public override void Read(AssetReader reader)
        {
            base.Read(reader);

            if (IsReadType(reader.Version))
            {
                EmissionType type = (EmissionType)reader.ReadInt32();
                if (type == EmissionType.Time)
                {
                    RateOverTime.Read(reader);
                    RateOverDistance = new MinMaxCurve(0.0f);
                }
                else
                {
                    RateOverTime = new MinMaxCurve(0.0f);
                    RateOverDistance.Read(reader);
                }
            }
            else
            {
                RateOverTime.Read(reader);
                RateOverDistance.Read(reader);
            }

            if (IsReadCnt(reader.Version))
            {
                int cnt0 = IsIntCount(reader.Version) ? reader.ReadInt32() : reader.ReadUInt16();
                int cnt1 = IsIntCount(reader.Version) ? reader.ReadInt32() : reader.ReadUInt16();
                int cnt2 = IsIntCount(reader.Version) ? reader.ReadInt32() : reader.ReadUInt16();
                int cnt3 = IsIntCount(reader.Version) ? reader.ReadInt32() : reader.ReadUInt16();

                int cntMax0 = cnt0;
                int cntMax1 = cnt1;
                int cntMax2 = cnt2;
                int cntMax3 = cnt3;
                if (IsReadCntMax(reader.Version))
                {
                    cntMax0 = IsIntCount(reader.Version) ? reader.ReadInt32() : reader.ReadUInt16();
                    cntMax1 = IsIntCount(reader.Version) ? reader.ReadInt32() : reader.ReadUInt16();
                    cntMax2 = IsIntCount(reader.Version) ? reader.ReadInt32() : reader.ReadUInt16();
                    cntMax3 = IsIntCount(reader.Version) ? reader.ReadInt32() : reader.ReadUInt16();
                }

                float time0 = reader.ReadSingle();
                float time1 = reader.ReadSingle();
                float time2 = reader.ReadSingle();
                float time3 = reader.ReadSingle();

                BurstCount = IsIntCount(reader.Version) ? reader.ReadInt32() : reader.ReadByte();
                reader.AlignStream(AlignType.Align4);

                m_bursts = new ParticleSystemEmissionBurst[BurstCount];
                if (BurstCount > 0)
                {
                    m_bursts[0] = new ParticleSystemEmissionBurst(time0, cnt0, cntMax0);
                    if (BurstCount > 1)
                    {
                        m_bursts[1] = new ParticleSystemEmissionBurst(time1, cnt1, cntMax1);
                        if (BurstCount > 2)
                        {
                            m_bursts[2] = new ParticleSystemEmissionBurst(time2, cnt2, cntMax2);
                            if (BurstCount > 3)
                            {
                                m_bursts[3] = new ParticleSystemEmissionBurst(time3, cnt3, cntMax3);
                            }
                        }
                    }
                }
            }
            else
            {
                BurstCount = reader.ReadInt32();
                reader.AlignStream(AlignType.Align4);

                m_bursts = reader.ReadAssetArray <ParticleSystemEmissionBurst>();
            }
        }
 public ExternalForcesModule(bool _)
 {
     MultiplierCurve = new MinMaxCurve(1.0f);
 }