Version = 1.9.1.28491; CParticleEffect $LOCAL$/Resource { EditorInfosPosition = int2(73, 52); OnSpawn = "$LOCAL$/Spawner"; CustomAttributes = "$LOCAL$/_GlobalAttributes"; Autostart = true; } CActionFactoryParticleSpawnerBase $LOCAL$/Layer_1 { EditorInfosPosition = int2(-288, -61); Descriptor = "$LOCAL$/CParticleDescriptor_AE135B2A"; Infinite = true; DurationInSeconds = 5.0000000e+000; SpawnCount = 1.6000000e+001; } CParticleDescriptor $LOCAL$/CParticleDescriptor_AE135B2A { EditorInfosPosition = int2(-392, -44); CustomFields = { "$LOCAL$/CParticleFieldDeclaration_A7BA2BC0", "$LOCAL$/CParticleFieldDeclaration_19CC9ED9", "$LOCAL$/CParticleFieldDeclaration_AC3D2A13", "$LOCAL$/CParticleFieldDeclaration_A7C5F890", }; Samplers = { "$LOCAL$/CParticleSamplerShape_9F4012DD", "$LOCAL$/CParticleSamplerShape_DCDA413F", "$LOCAL$/CParticleSamplerCurve_7F817359", "$LOCAL$/CParticleSamplerCurve_DF40BA93", }; SpawnEvaluator = "$LOCAL$/CCompilerSyntaxNodeExpression_5566F5E7"; States = { "$LOCAL$/CParticleState_3AF8190E", }; } CActionFactoryWithChilds $LOCAL$/Spawner { EditorInfosPosition = int2(-162, -81); ChildList = { "$LOCAL$/Layer_1", "$LOCAL$/Layer_2", "$LOCAL$/Layer_3", "$LOCAL$/Layer_4", "$LOCAL$/Layer_5", }; } CCompilerSyntaxNodeExpression $LOCAL$/CCompilerSyntaxNodeExpression_5566F5E7 { EditorInfosPosition = int2(-508, 22); Expression = "function void Eval() { Life = 0.75; Position = SpawnSphere.samplePosition(); PosEnd = TargetSphere.samplePosition(); AngleAxis = normalize(float3(rand(-1,1),rand(-1,1),rand(-1,1))); Position = rotate(PosEnd, AngleAxis, Angle); SegmentID = rand(0,6); } "; } CParticleState $LOCAL$/CParticleState_3AF8190E { EditorInfosPosition = int2(-508, 65); StateName = "State_0"; Evolvers = { "$LOCAL$/LocalSpace_1", "$LOCAL$/Trail_1", }; } CParticleAttributeList $LOCAL$/_GlobalAttributes { EditorInfosPosition = int2(-599, -20); AttributeList = { "$LOCAL$/CParticleAttributeDeclaration_E53C1102", "$LOCAL$/CParticleAttributeDeclaration_1292CA10", "$LOCAL$/CParticleAttributeDeclaration_0272AC0C", "$LOCAL$/CParticleAttributeDeclaration_08BD57EE", "$LOCAL$/CParticleAttributeDeclaration_491ECDB3", "$LOCAL$/CParticleAttributeDeclaration_AA680462", "$LOCAL$/CParticleAttributeDeclaration_23E6CC65", "$LOCAL$/CParticleAttributeDeclaration_A3A329F9", }; } CParticleSamplerShape $LOCAL$/CParticleSamplerShape_9F4012DD { SamplerName = "SpawnSphere"; Shape = "$LOCAL$/CShapeDescriptor_66C58C64"; } CShapeDescriptor $LOCAL$/CShapeDescriptor_66C58C64 { ShapeType = SPHERE; Radius = 2.0000000e+001; } CParticleEvolver_Script $LOCAL$/Script_1 { CustomName = "Script"; Expression = "$LOCAL$/CCompilerSyntaxNodeExpression_F2BF698C"; } CCompilerSyntaxNodeExpression $LOCAL$/CCompilerSyntaxNodeExpression_F2BF698C { Expression = "function void Eval() { Angle += (AngleSpeed * RotationSampler.sample(LifeRatio)) * dt; Position = rotate(PosEnd, AngleAxis, Angle) * (1 - PositionSampler.sample(LifeRatio)) * PositionMagni; } "; } CParticleSamplerShape $LOCAL$/CParticleSamplerShape_DCDA413F { SamplerName = "TargetSphere"; Shape = "$LOCAL$/CShapeDescriptor_A534496E"; } CShapeDescriptor $LOCAL$/CShapeDescriptor_A534496E { ShapeType = SPHERE; } CParticleFieldDeclaration $LOCAL$/CParticleFieldDeclaration_A7BA2BC0 { FieldName = "PosEnd"; FieldType = float3; TransformFilter = rotate; } CParticleAttributeDeclaration $LOCAL$/CParticleAttributeDeclaration_E53C1102 { AttributeName = "ConcentRateForce"; HasMin = true; HasMax = true; MaxValueF4 = float4(5.0000000e+000, 1.0000000e+000, 1.0000000e+000, 1.0000000e+000); MaxValueI4 = int4(10, 10, 10, 10); } CParticleEvolver_Spawner $LOCAL$/Trail_1 { CustomName = "Spawner"; SpawnInterval = 5.0000001e-002; Descriptor = "$LOCAL$/CParticleDescriptor_6309D256"; } CParticleState $LOCAL$/CParticleState_C4F10C87 { StateName = "State_0"; Evolvers = { "$LOCAL$/Script_2", }; } CParticleDescriptor $LOCAL$/CParticleDescriptor_6309D256 { Renderer = "$LOCAL$/CParticleRenderer_Ribbon_A0B4016A"; CustomFields = { "$LOCAL$/CParticleFieldDeclaration_A597BE49", "$LOCAL$/CParticleFieldDeclaration_CF38D4F2", }; Samplers = { "$LOCAL$/CParticleSamplerCurve_8CB8DE1A", "$LOCAL$/CParticleSamplerCurve_E19575BF", "$LOCAL$/CParticleSamplerCurve_5896C54C", }; SpawnEvaluator = "$LOCAL$/CCompilerSyntaxNodeExpression_E68F14D1"; States = { "$LOCAL$/CParticleState_C4F10C87", }; } CCompilerSyntaxNodeExpression $LOCAL$/CCompilerSyntaxNodeExpression_E68F14D1 { Expression = "function void Eval() { Life = 0.2; TextureID = parent.SegmentID; } "; } CParticleRenderer_Ribbon $LOCAL$/CParticleRenderer_Ribbon_A0B4016A { CustomName = "Ribbon"; BillboardingMaterial = AlphaBlend_Additive_Soft; Diffuse = "Textures/FX/RainbowDashTornadoRainbow.png"; AtlasDefinition = "Textures/FX/AtlasRainbowDashRainbow.pkat"; TextureUField = "LifeRatio"; } CParticleFieldDeclaration $LOCAL$/CParticleFieldDeclaration_19CC9ED9 { FieldName = "AngleAxis"; FieldType = float3; } CParticleAttributeDeclaration $LOCAL$/CParticleAttributeDeclaration_1292CA10 { AttributeName = "AngleSpeed"; DefaultValueF4 = float4(1.6515957e+001, 0.0000000e+000, 0.0000000e+000, 0.0000000e+000); HasMin = true; HasMax = true; MaxValueF4 = float4(3.0000000e+001, 1.0000000e+000, 1.0000000e+000, 1.0000000e+000); MaxValueI4 = int4(10, 10, 10, 10); } CParticleFieldDeclaration $LOCAL$/CParticleFieldDeclaration_AC3D2A13 { FieldName = "Angle"; } CParticleSamplerCurve $LOCAL$/CParticleSamplerCurve_8CB8DE1A { SamplerName = "SizeCurve"; Times = { 0.0000000e+000, 4.5562887e-001, 1.0000000e+000, }; FloatValues = { 0.0000000e+000, 9.6253932e-001, -2.0595826e-002, }; FloatTangents = { 0.0000000e+000, 0.0000000e+000, 0.0000000e+000, 0.0000000e+000, 0.0000000e+000, 0.0000000e+000, }; MinLimits = float4(0.0000000e+000, 0.0000000e+000, 0.0000000e+000, 0.0000000e+000); } CParticleEvolver_Script $LOCAL$/Script_2 { CustomName = "Script"; Expression = "$LOCAL$/CCompilerSyntaxNodeExpression_041569E5"; } CCompilerSyntaxNodeExpression $LOCAL$/CCompilerSyntaxNodeExpression_041569E5 { Expression = "function void Eval() { Size = SizeCurve.sample(LifeRatio) * SizeMagni; Color = float4(TintColor.x * TintPow,TintColor.y * TintPow,TintColor.z * TintPow, AlphaRatio.sample(LifeRatio)) * PowCurve.sample(LifeRatio); } "; } CParticleAttributeDeclaration $LOCAL$/CParticleAttributeDeclaration_0272AC0C { AttributeName = "TintPow"; DefaultValueF4 = float4(2.9920225e+000, 1.0000000e+000, 1.0000000e+000, 0.0000000e+000); HasMin = true; HasMax = true; MaxValueF4 = float4(2.5000000e+001, 1.0000000e+000, 1.0000000e+000, 1.0000000e+000); MaxValueI4 = int4(10, 10, 10, 10); } CParticleSamplerCurve $LOCAL$/CParticleSamplerCurve_E19575BF { SamplerName = "PowCurve"; Times = { 0.0000000e+000, 1.2086750e-001, 1.7770460e-001, 2.4940820e-001, 1.0000000e+000, }; FloatValues = { 0.0000000e+000, 1.8624750e-001, 1.6851140e+000, 5.2895319e-001, -1.4527070e-002, }; FloatTangents = { 0.0000000e+000, 0.0000000e+000, 0.0000000e+000, 0.0000000e+000, 0.0000000e+000, 0.0000000e+000, -6.6462323e-002, -6.9572651e-001, 0.0000000e+000, 0.0000000e+000, }; MinLimits = float4(0.0000000e+000, 0.0000000e+000, 0.0000000e+000, 0.0000000e+000); } CParticleAttributeDeclaration $LOCAL$/CParticleAttributeDeclaration_08BD57EE { AttributeName = "TintColor"; AttributeType = float4; DefaultValueF4 = float4(1.0000000e+000, 1.0000000e+000, 1.0000000e+000, 1.0000000e+000); HasMin = true; HasMax = true; MaxValueF4 = float4(1.0000000e+000, 1.0000000e+000, 1.0000000e+000, 1.0000000e+000); MaxValueI4 = int4(10, 10, 10, 10); } CParticleFieldDeclaration $LOCAL$/CParticleFieldDeclaration_A597BE49 { FieldName = "Color"; FieldType = float4; } CParticleAttributeDeclaration $LOCAL$/CParticleAttributeDeclaration_491ECDB3 { AttributeName = "SizeMagni"; DefaultValueF4 = float4(5.8510602e-002, 0.0000000e+000, 0.0000000e+000, 0.0000000e+000); HasMin = true; HasMax = true; MaxValueF4 = float4(2.0000000e+000, 1.0000000e+000, 1.0000000e+000, 1.0000000e+000); MaxValueI4 = int4(10, 10, 10, 10); } CParticleFieldDeclaration $LOCAL$/CParticleFieldDeclaration_CF38D4F2 { FieldName = "TextureID"; } CCompilerSyntaxNodeExpression $LOCAL$/CCompilerSyntaxNodeExpression_30C334BE { Expression = "function void Eval() { } "; } CParticleEvolver_Localspace $LOCAL$/LocalSpace_1 { CustomName = "Localspace"; ChildList = { "$LOCAL$/Script_1", }; } CParticleFieldDeclaration $LOCAL$/CParticleFieldDeclaration_A7C5F890 { FieldName = "SegmentID"; } CParticleSamplerCurve $LOCAL$/CParticleSamplerCurve_DF40BA93 { SamplerName = "RotationSampler"; Times = { 0.0000000e+000, 2.6157650e-001, 4.1422361e-001, 1.0000000e+000, }; FloatValues = { 2.7061981e-001, 6.1963773e-001, 1.1264390e+000, 0.0000000e+000, }; FloatTangents = { 0.0000000e+000, 2.7136190e-002, 8.3501631e-001, 4.8728639e-001, 0.0000000e+000, 0.0000000e+000, -2.5372399e-002, 0.0000000e+000, }; MinLimits = float4(0.0000000e+000, 0.0000000e+000, 0.0000000e+000, 0.0000000e+000); } CParticleSamplerCurve $LOCAL$/CParticleSamplerCurve_7F817359 { SamplerName = "PositionSampler"; Times = { 0.0000000e+000, 3.5510039e-001, 5.2085543e-001, 1.0000000e+000, }; FloatValues = { 1.1340030e+000, 5.7490718e-001, 1.2557750e+000, 1.0000000e+000, }; FloatTangents = { 0.0000000e+000, 1.0143189e+000, 8.5999739e-001, 4.0143260e-001, -1.1980920e+000, -3.4632981e+000, 0.0000000e+000, 0.0000000e+000, }; MinLimits = float4(0.0000000e+000, 0.0000000e+000, 0.0000000e+000, 0.0000000e+000); } CParticleSamplerCurve $LOCAL$/CParticleSamplerCurve_5896C54C { SamplerName = "AlphaRatio"; Times = { 0.0000000e+000, 1.0000000e+000, }; FloatValues = { 5.1054537e-001, 7.2726756e-003, }; FloatTangents = { 0.0000000e+000, 0.0000000e+000, -1.2587703e+000, 0.0000000e+000, }; MinLimits = float4(0.0000000e+000, 0.0000000e+000, 0.0000000e+000, 0.0000000e+000); } CParticleDescriptor $LOCAL$/CParticleDescriptor_72BC1CF2 { Renderer = "$LOCAL$/CParticleRenderer_List_459FA59D"; CustomFields = { "$LOCAL$/CParticleFieldDeclaration_E0713DB7", "$LOCAL$/CParticleFieldDeclaration_66F84346", "$LOCAL$/CParticleFieldDeclaration_E524E081", "$LOCAL$/CParticleFieldDeclaration_EE51D8D8", "$LOCAL$/CParticleFieldDeclaration_84767C7B", }; SpawnEvaluator = "$LOCAL$/CCompilerSyntaxNodeExpression_5CA7475A"; States = { "$LOCAL$/CParticleState_5A436C25", }; } CParticleRenderer_List $LOCAL$/CParticleRenderer_List_459FA59D { CustomName = "List"; Renderers = { "$LOCAL$/CParticleRenderer_Billboard_49BF3624", }; } CParticleRenderer_Billboard $LOCAL$/CParticleRenderer_Billboard_49BF3624 { CustomName = "Billboard"; BillboardingMaterial = AlphaBlend_Distortion; Diffuse = "Textures/Fx/Distortion_01.dds"; } CParticleFieldDeclaration $LOCAL$/CParticleFieldDeclaration_E0713DB7 { FieldName = "Color"; FieldType = float4; } CParticleFieldDeclaration $LOCAL$/CParticleFieldDeclaration_66F84346 { FieldName = "SizeCoeff"; } CParticleFieldDeclaration $LOCAL$/CParticleFieldDeclaration_E524E081 { FieldName = "ColorG"; FieldType = float4; } CParticleFieldDeclaration $LOCAL$/CParticleFieldDeclaration_EE51D8D8 { FieldName = "ColorD"; FieldType = float4; } CParticleFieldDeclaration $LOCAL$/CParticleFieldDeclaration_84767C7B { FieldName = "SizeD"; } CCompilerSyntaxNodeExpression $LOCAL$/CCompilerSyntaxNodeExpression_5CA7475A { Expression = "function void Eval() { Life = rand(0.7,0.8); SizeCoeff = rand(0.5,1); } "; } CParticleState $LOCAL$/CParticleState_5A436C25 { StateName = "State_0"; Evolvers = { "$LOCAL$/CParticleEvolver_Physics_FA9BBB4C", "$LOCAL$/CParticleEvolver_Script_7FA015FF", }; } CParticleEvolver_Physics $LOCAL$/CParticleEvolver_Physics_FA9BBB4C { CustomName = "Physics"; } CParticleEvolver_Script $LOCAL$/CParticleEvolver_Script_7FA015FF { CustomName = "Script"; Expression = "$LOCAL$/CCompilerSyntaxNodeExpression_C7905D2E"; } CCompilerSyntaxNodeExpression $LOCAL$/CCompilerSyntaxNodeExpression_C7905D2E { Expression = "function void Eval() { Size=1f; Color=sin(LifeRatio*3)*Distortion; } "; } CActionFactoryParticleSpawnerBase $LOCAL$/Layer_2 { Descriptor = "$LOCAL$/CParticleDescriptor_72BC1CF2"; Infinite = true; DurationInSeconds = 2.0000000e+000; SpawnCount = 3.2000000e+001; } CParticleDescriptor $LOCAL$/CParticleDescriptor_E7017180 { CustomFields = { "$LOCAL$/CParticleFieldDeclaration_4D242E43", "$LOCAL$/CParticleFieldDeclaration_5E5278C2", "$LOCAL$/CParticleFieldDeclaration_DD1445AD", }; SpawnEvaluator = "$LOCAL$/CCompilerSyntaxNodeExpression_66D14F74"; States = { "$LOCAL$/CParticleState_2485A947", }; } CParticleFieldDeclaration $LOCAL$/CParticleFieldDeclaration_4D242E43 { FieldName = "VRAND"; FieldType = float3; } CParticleFieldDeclaration $LOCAL$/CParticleFieldDeclaration_5E5278C2 { FieldName = "LENGTH"; } CParticleFieldDeclaration $LOCAL$/CParticleFieldDeclaration_DD1445AD { FieldName = "SCALE"; } CCompilerSyntaxNodeExpression $LOCAL$/CCompilerSyntaxNodeExpression_66D14F74 { Expression = "function void Eval() { Life = 0.3; VRAND=vrand()*rand(0.3,0.5); LENGTH=0.3; SCALE=rand(0.2,0.4); } "; } CParticleState $LOCAL$/CParticleState_2485A947 { StateName = "State_0"; Evolvers = { "$LOCAL$/CParticleEvolver_Localspace_AF784E16", "$LOCAL$/CParticleEvolver_Spawner_13B76928", }; } CParticleEvolver_Localspace $LOCAL$/CParticleEvolver_Localspace_AF784E16 { CustomName = "Localspace"; ChildList = { "$LOCAL$/CParticleEvolver_Physics_24DD5B91", }; } CParticleEvolver_Physics $LOCAL$/CParticleEvolver_Physics_24DD5B91 { CustomName = "Physics"; } CParticleEvolver_Spawner $LOCAL$/CParticleEvolver_Spawner_13B76928 { CustomName = "Spawner"; SpawnMetric = Time; SpawnInterval = 6.5000001e-003; FirstSpawnDelay = 0.0000000e+000; Descriptor = "$LOCAL$/CParticleDescriptor_90182B0B"; } CParticleDescriptor $LOCAL$/CParticleDescriptor_90182B0B { Renderer = "$LOCAL$/CParticleRenderer_Ribbon_784C512A"; CustomFields = { "$LOCAL$/CParticleFieldDeclaration_9C755235", "$LOCAL$/CParticleFieldDeclaration_1CF1929C", "$LOCAL$/CParticleFieldDeclaration_7244178F", }; Samplers = { "$LOCAL$/CParticleSamplerCurve_B16CB5FE", }; SpawnEvaluator = "$LOCAL$/CCompilerSyntaxNodeExpression_E0FC6D99"; States = { "$LOCAL$/CParticleState_4E435FD0", }; } CParticleRenderer_Ribbon $LOCAL$/CParticleRenderer_Ribbon_784C512A { CustomName = "Ribbon"; BillboardingMaterial = Additive_Soft; Quality = CorrectDeformation; Diffuse = "Textures/Fx/Trail_01.dds"; TextureUField = "LifeRatio"; SoftnessDistance = 2.5000000e-001; } CParticleFieldDeclaration $LOCAL$/CParticleFieldDeclaration_9C755235 { FieldName = "Color"; FieldType = float4; } CParticleFieldDeclaration $LOCAL$/CParticleFieldDeclaration_1CF1929C { FieldName = "VStart"; FieldType = float3; } CParticleFieldDeclaration $LOCAL$/CParticleFieldDeclaration_7244178F { FieldName = "VelocityField"; FieldType = float3; TransformFilter = rotate; } CParticleSamplerCurve $LOCAL$/CParticleSamplerCurve_B16CB5FE { SamplerName = "Curve_0"; Times = { 0.0000000e+000, 5.0000000e-001, 1.0000000e+000, }; FloatValues = { 0.0000000e+000, 1.0000000e+000, 0.0000000e+000, }; FloatTangents = { 0.0000000e+000, 0.0000000e+000, 0.0000000e+000, 0.0000000e+000, 0.0000000e+000, 0.0000000e+000, }; MinLimits = float4(0.0000000e+000, 0.0000000e+000, 0.0000000e+000, 0.0000000e+000); } CCompilerSyntaxNodeExpression $LOCAL$/CCompilerSyntaxNodeExpression_E0FC6D99 { Expression = "function void Eval() { Life = parent.LENGTH; Size = parent.SCALE; VStart=parent.VRAND*25; Color=(5*RGB).xyz1*sin(spawner.LifeRatio*3); Velocity = VStart; } "; } CParticleState $LOCAL$/CParticleState_4E435FD0 { StateName = "State_0"; Evolvers = { "$LOCAL$/CParticleEvolver_Physics_5D8A92D3", }; } CParticleEvolver_Physics $LOCAL$/CParticleEvolver_Physics_5D8A92D3 { CustomName = "Physics"; Drag = 5.0000000e+001; IntegrationStrategy = Stable; BounceRestitution = 7.3456788e-001; } CActionFactoryParticleSpawnerBase $LOCAL$/Layer_3 { Descriptor = "$LOCAL$/CParticleDescriptor_E7017180"; Infinite = true; DurationInSeconds = 2.0000000e+000; SpawnCount = 1.0000000e+001; ContinuousSpawner = false; FluxFactorExpression = "LOD"; } CParticleDescriptor $LOCAL$/CParticleDescriptor_8A75B1BD { Renderer = "$LOCAL$/CParticleRenderer_Billboard_82AA24C4"; CustomFields = { "$LOCAL$/CParticleFieldDeclaration_E34980D7", "$LOCAL$/CParticleFieldDeclaration_236634E6", "$LOCAL$/CParticleFieldDeclaration_476AE2A1", "$LOCAL$/CParticleFieldDeclaration_56D0F578", "$LOCAL$/CParticleFieldDeclaration_3D3F859B", "$LOCAL$/CParticleFieldDeclaration_27D276FA", }; Samplers = { "$LOCAL$/CParticleSamplerProceduralTurbulence_8D508445", }; SpawnEvaluator = "$LOCAL$/CCompilerSyntaxNodeExpression_AF44A5EC"; States = { "$LOCAL$/CParticleState_75D0051F", }; } CParticleRenderer_Billboard $LOCAL$/CParticleRenderer_Billboard_82AA24C4 { CustomName = "Billboard"; BillboardingMaterial = Additive_Soft; Diffuse = "Textures/Fx/DirtPieces_01.dds"; AtlasDefinition = "Textures/Fx/AtlasX2.pkat"; SoftAnimationBlending = true; SoftnessDistance = 2.5000000e-001; } CParticleFieldDeclaration $LOCAL$/CParticleFieldDeclaration_E34980D7 { FieldName = "Color"; FieldType = float4; } CParticleFieldDeclaration $LOCAL$/CParticleFieldDeclaration_236634E6 { FieldName = "ID"; } CParticleFieldDeclaration $LOCAL$/CParticleFieldDeclaration_476AE2A1 { FieldName = "Mass"; } CParticleFieldDeclaration $LOCAL$/CParticleFieldDeclaration_56D0F578 { FieldName = "BounceRestitution"; } CParticleFieldDeclaration $LOCAL$/CParticleFieldDeclaration_3D3F859B { FieldName = "Accel"; FieldType = float3; TransformFilter = full; } CParticleFieldDeclaration $LOCAL$/CParticleFieldDeclaration_27D276FA { FieldName = "HighLight"; } CParticleSamplerProceduralTurbulence $LOCAL$/CParticleSamplerProceduralTurbulence_8D508445 { SamplerName = "Turb_0"; Wavelength = 5.0000000e+000; Strength = 8.8388348e-001; Gain = 1.0000000e+000; TimeScale = 1.0000000e+000; TimeBase = 1.0000000e+000; } CCompilerSyntaxNodeExpression $LOCAL$/CCompilerSyntaxNodeExpression_AF44A5EC { Expression = "function void Eval() { Life = rand(0.25,0.75); Size = rand(0.02,0.04); ID=ninja*4; Velocity=vrand()*ninja*2; Mass=rand(1,10); BounceRestitution=rand(0.1,0.5); HighLight=select(4,rand(50,100),ninja<0.4); } "; } CParticleState $LOCAL$/CParticleState_75D0051F { StateName = "State_0"; Evolvers = { "$LOCAL$/CParticleEvolver_Physics_05196ACE", "$LOCAL$/CParticleEvolver_Script_E1A9DAA9", }; } CParticleEvolver_Physics $LOCAL$/CParticleEvolver_Physics_05196ACE { CustomName = "Physics"; ConstantAcceleration = float3(0.0000000e+000, -1.0000000e+001, 0.0000000e+000); Drag = 1.0000000e+000; WorldInteractionMode = OneWay; BouncesBeforeDeath = 127; BounceRestitution = 1.0000000e+000; BounceOffset = 1.0000000e-003; } CParticleEvolver_Script $LOCAL$/CParticleEvolver_Script_E1A9DAA9 { CustomName = "Script"; Expression = "$LOCAL$/CCompilerSyntaxNodeExpression_6667CA20"; } CCompilerSyntaxNodeExpression $LOCAL$/CCompilerSyntaxNodeExpression_6667CA20 { Expression = "function void Eval() { TextureID=min((ID+LifeRatio*2),4); Color=float4((RGB*HighLight).xyz1*float4(1-LifeRatio).111w); } "; } CActionFactoryParticleSpawnerBase $LOCAL$/Layer_4 { EditorInfosIsBlockMinimized = 0; Descriptor = "$LOCAL$/CParticleDescriptor_8A75B1BD"; Infinite = true; DurationInSeconds = 2.0000000e+000; SpawnCount = 2.5600000e+002; FluxFactorExpression = "Density"; } CParticleAttributeDeclaration $LOCAL$/CParticleAttributeDeclaration_AA680462 { AttributeName = "RGB"; AttributeType = float3; DefaultValueF4 = float4(1.1170210e-001, 2.8989360e-001, 1.0000000e+000, 0.0000000e+000); HasMin = true; HasMax = true; MaxValueF4 = float4(1.0000000e+000, 1.0000000e+000, 1.0000000e+000, 1.0000000e+000); MaxValueI4 = int4(10, 10, 10, 10); } CParticleAttributeDeclaration $LOCAL$/CParticleAttributeDeclaration_23E6CC65 { AttributeName = "PositionMagni"; DefaultValueF4 = float4(1.0000000e+000, 0.0000000e+000, 0.0000000e+000, 0.0000000e+000); HasMin = true; HasMax = true; MaxValueF4 = float4(1.0000000e+001, 1.0000000e+000, 1.0000000e+000, 1.0000000e+000); MaxValueI4 = int4(10, 10, 10, 10); } CParticleDescriptor $LOCAL$/CParticleDescriptor_939D9EE3 { CustomFields = { "$LOCAL$/CParticleFieldDeclaration_38BA65E2", "$LOCAL$/CParticleFieldDeclaration_1D16294D", }; SpawnEvaluator = "$LOCAL$/CCompilerSyntaxNodeExpression_53612B94"; States = { "$LOCAL$/CParticleState_6FC6A7E7", }; } CParticleFieldDeclaration $LOCAL$/CParticleFieldDeclaration_38BA65E2 { FieldName = "LENGTH"; } CParticleFieldDeclaration $LOCAL$/CParticleFieldDeclaration_1D16294D { FieldName = "SCALE"; } CCompilerSyntaxNodeExpression $LOCAL$/CCompilerSyntaxNodeExpression_53612B94 { Expression = "function void Eval() { Life = 1; LENGTH=0.5; SCALE=0.5; } "; } CParticleState $LOCAL$/CParticleState_6FC6A7E7 { StateName = "State_0"; Evolvers = { "$LOCAL$/CParticleEvolver_Localspace_3957E136", "$LOCAL$/CParticleEvolver_Spawner_1E063B48", }; } CParticleEvolver_Localspace $LOCAL$/CParticleEvolver_Localspace_3957E136 { CustomName = "Localspace"; ChildList = { "$LOCAL$/CParticleEvolver_Physics_F63CDD31", }; } CParticleEvolver_Physics $LOCAL$/CParticleEvolver_Physics_F63CDD31 { CustomName = "Physics"; } CParticleEvolver_Spawner $LOCAL$/CParticleEvolver_Spawner_1E063B48 { CustomName = "Spawner"; SpawnInterval = 4.0000001e-001; FirstSpawnDelay = 0.0000000e+000; Descriptor = "$LOCAL$/CParticleDescriptor_D9E857AB"; } CParticleDescriptor $LOCAL$/CParticleDescriptor_D9E857AB { Renderer = "$LOCAL$/CParticleRenderer_Ribbon_E533AA4A"; CustomFields = { "$LOCAL$/CParticleFieldDeclaration_13F511D5", "$LOCAL$/CParticleFieldDeclaration_E1A67ABC", "$LOCAL$/CParticleFieldDeclaration_52C9122F", }; Samplers = { "$LOCAL$/CParticleSamplerCurve_E3A1F51E", "$LOCAL$/CParticleSamplerCurve_6D4D0B39", }; SpawnEvaluator = "$LOCAL$/CCompilerSyntaxNodeExpression_B38B7DF0"; States = { "$LOCAL$/CParticleState_11E7FB73", }; } CParticleRenderer_Ribbon $LOCAL$/CParticleRenderer_Ribbon_E533AA4A { CustomName = "Ribbon"; BillboardingMaterial = Additive_Soft; Quality = CorrectDeformation; Diffuse = "Textures/FX/RdEvasionTrail.png"; TextureUField = "LifeRatio"; SoftnessDistance = 2.5000000e-001; } CParticleFieldDeclaration $LOCAL$/CParticleFieldDeclaration_13F511D5 { FieldName = "Color"; FieldType = float4; } CParticleFieldDeclaration $LOCAL$/CParticleFieldDeclaration_E1A67ABC { FieldName = "VStart"; FieldType = float3; } CParticleFieldDeclaration $LOCAL$/CParticleFieldDeclaration_52C9122F { FieldName = "VelocityField"; FieldType = float3; TransformFilter = rotate; } CParticleSamplerCurve $LOCAL$/CParticleSamplerCurve_E3A1F51E { SamplerName = "ColorCurve"; ValueType = Float4; Times = { 0.0000000e+000, 1.8634853e-001, 1.0000000e+000, }; FloatValues = { 0.0000000e+000, 0.0000000e+000, 0.0000000e+000, 0.0000000e+000, 1.0017110e+000, 1.0017110e+000, 1.0017110e+000, 1.0017110e+000, 6.4638555e-003, 0.0000000e+000, 0.0000000e+000, 0.0000000e+000, }; FloatTangents = { 0.0000000e+000, 0.0000000e+000, 0.0000000e+000, 0.0000000e+000, 0.0000000e+000, 0.0000000e+000, 0.0000000e+000, 0.0000000e+000, 0.0000000e+000, 0.0000000e+000, 0.0000000e+000, 0.0000000e+000, 0.0000000e+000, 0.0000000e+000, 0.0000000e+000, 0.0000000e+000, 0.0000000e+000, 0.0000000e+000, 0.0000000e+000, 0.0000000e+000, 0.0000000e+000, 0.0000000e+000, 0.0000000e+000, 0.0000000e+000, }; MinLimits = float4(0.0000000e+000, 0.0000000e+000, 0.0000000e+000, 0.0000000e+000); } CParticleSamplerCurve $LOCAL$/CParticleSamplerCurve_6D4D0B39 { SamplerName = "SizeCurve"; Times = { 0.0000000e+000, 8.5394591e-002, 1.0000000e+000, }; FloatValues = { 4.7577918e-003, 5.4241675e-001, -1.2276977e-002, }; FloatTangents = { 0.0000000e+000, 8.5612434e-001, 0.0000000e+000, 0.0000000e+000, -3.1001130e-001, 0.0000000e+000, }; MinLimits = float4(0.0000000e+000, 0.0000000e+000, 0.0000000e+000, 0.0000000e+000); } CCompilerSyntaxNodeExpression $LOCAL$/CCompilerSyntaxNodeExpression_B38B7DF0 { Expression = "function void Eval() { Life = parent.LENGTH; Size = parent.SCALE; } "; } CParticleState $LOCAL$/CParticleState_11E7FB73 { StateName = "State_0"; Evolvers = { "$LOCAL$/CParticleEvolver_Physics_C8BEB5B2", "$LOCAL$/CParticleEvolver_Script_3DD5CD5D", }; } CParticleEvolver_Physics $LOCAL$/CParticleEvolver_Physics_C8BEB5B2 { CustomName = "Physics"; Drag = 5.0000000e+001; IntegrationStrategy = Stable; BounceRestitution = 7.3456788e-001; } CParticleEvolver_Script $LOCAL$/CParticleEvolver_Script_3DD5CD5D { CustomName = "Script"; Expression = "$LOCAL$/CCompilerSyntaxNodeExpression_F25898E4"; } CCompilerSyntaxNodeExpression $LOCAL$/CCompilerSyntaxNodeExpression_F25898E4 { Expression = "function void Eval() { Size = SizeCurve.sample(LifeRatio) * 0.5; Color=ColorCurve.sample(LifeRatio); } "; } CActionFactoryParticleSpawnerBase $LOCAL$/Layer_5 { Descriptor = "$LOCAL$/CParticleDescriptor_939D9EE3"; Infinite = true; DurationInSeconds = 2.0000000e+000; ContinuousSpawner = false; FluxFactorExpression = "LOD"; } CParticleAttributeDeclaration $LOCAL$/CParticleAttributeDeclaration_A3A329F9 { AttributeName = "Distortion"; DefaultValueF4 = float4(5.0000000e-001, 0.0000000e+000, 0.0000000e+000, 0.0000000e+000); HasMin = true; HasMax = true; MaxValueF4 = float4(1.0000000e+000, 1.0000000e+000, 1.0000000e+000, 1.0000000e+000); MaxValueI4 = int4(10, 10, 10, 10); }