Version = 1.9.4.30080; CParticleEffect $LOCAL$/Resource { OnSpawn = "$LOCAL$/Spawner"; CustomAttributes = "$LOCAL$/_GlobalAttributes"; Autostart = true; } CActionFactoryWithChilds $LOCAL$/Spawner { EditorInfosPosition = int2(329, 64); ChildList = { "$LOCAL$/PreFlash", "$LOCAL$/Flash", "$LOCAL$/Distortion", "$LOCAL$/Orbit", "$LOCAL$/Lightning", }; } CCompilerSyntaxNodeExpression $LOCAL$/CCompilerSyntaxNodeExpression_B30B2123 { } CParticleAttributeList $LOCAL$/_GlobalAttributes { AttributeList = { "$LOCAL$/CParticleAttributeDeclaration_02243087", "$LOCAL$/CParticleAttributeDeclaration_1DF47118", "$LOCAL$/CParticleAttributeDeclaration_88BB8542", "$LOCAL$/CParticleAttributeDeclaration_56740C2D", "$LOCAL$/CParticleAttributeDeclaration_3E13D103", "$LOCAL$/CParticleAttributeDeclaration_E8157282", "$LOCAL$/CParticleAttributeDeclaration_26F1E26D", "$LOCAL$/CParticleAttributeDeclaration_56BCCB34", "$LOCAL$/CParticleAttributeDeclaration_DD94F007", "$LOCAL$/CParticleAttributeDeclaration_E241BBD6", "$LOCAL$/CParticleAttributeDeclaration_14487C51", }; SamplerList = { "$LOCAL$/CParticleSamplerCurve_C7BD0385", }; } CParticleAttributeDeclaration $LOCAL$/CParticleAttributeDeclaration_02243087 { AttributeName = "Scale"; DefaultValueF4 = float4(5.0000000e-001, 0.0000000e+000, 0.0000000e+000, 0.0000000e+000); MaxValueF4 = float4(1.0000000e+002, 0.0000000e+000, 0.0000000e+000, 0.0000000e+000); } CParticleAttributeDeclaration $LOCAL$/CParticleAttributeDeclaration_1DF47118 { AttributeName = "Flux"; DefaultValueF4 = float4(8.3468831e-001, 0.0000000e+000, 0.0000000e+000, 0.0000000e+000); MaxValueF4 = float4(1.0000000e+000, 0.0000000e+000, 0.0000000e+000, 0.0000000e+000); } CParticleSamplerCurve $LOCAL$/CParticleSamplerCurve_C7BD0385 { SamplerName = "GlobalSizeCurve"; Times = { 0.0000000e+000, 4.1777310e-001, 5.0437367e-001, 6.4856136e-001, 7.3379391e-001, 1.0000000e+000, }; FloatValues = { 1.1830900e+001, 2.2786690e+001, 2.7557028e+002, 1.7187576e+002, 4.5565090e+000, 1.0000000e+000, }; FloatTangents = { 0.0000000e+000, 0.0000000e+000, 1.4870480e+001, 3.0825162e+000, 6.5286195e-001, 1.0869976e+000, -1.3543121e+002, -8.0056412e+001, 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); } CParticleFieldDeclaration $LOCAL$/CParticleFieldDeclaration_821F762C { FieldName = "BaseSize"; FieldType = float3; } CParticleFieldDeclaration $LOCAL$/CParticleFieldDeclaration_949EFA5F { FieldName = "BaseSize"; FieldType = float3; } CParticleFieldDeclaration $LOCAL$/CParticleFieldDeclaration_882CE90E { FieldName = "BaseSize"; FieldType = float3; } CParticleFieldDeclaration $LOCAL$/CParticleFieldDeclaration_B9A815E9 { FieldName = "BaseSize"; FieldType = float3; } CParticleAttributeDeclaration $LOCAL$/CParticleAttributeDeclaration_88BB8542 { AttributeName = "Throttle"; DefaultValueF4 = float4(8.0000001e-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); } CParticleAttributeDeclaration $LOCAL$/CParticleAttributeDeclaration_56740C2D { AttributeName = "ShakeAmplitude"; DefaultValueF4 = float4(2.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); } CParticleSamplerCurve $LOCAL$/CParticleSamplerCurve_EF247296 { EditorInfosPosition = int2(-867, 908); ValueType = Float4; Times = { 0.0000000e+000, 5.3849864e-001, 1.0000000e+000, }; FloatValues = { 2.5888062e+000, 7.7745247e+001, 7.3503357e+001, 6.4612997e-001, 2.0553560e+000, 3.8516720e+001, 3.5025604e+001, 6.2580526e-001, 1.3330803e+000, 3.0305719e+000, 4.2372961e+000, 6.6386294e-001, }; FloatTangents = { 0.0000000e+000, 0.0000000e+000, 0.0000000e+000, 0.0000000e+000, 0.0000000e+000, 0.0000000e+000, -1.6951137e+000, -1.3702939e-004, -1.1671032e+000, -2.7337904e+000, -1.7046227e+000, -6.1781224e-002, -1.0002245e+000, -2.3428993e+000, -1.4608870e+000, -5.2947421e-002, -4.2274657e-001, -1.0370370e+000, -3.2198474e+000, 1.2638654e-004, 0.0000000e+000, 0.0000000e+000, 0.0000000e+000, 0.0000000e+000, }; } CParticleEvolver_Field $LOCAL$/CParticleEvolver_Field_24B21A11 { EditorInfosPosition = int2(-771, 909); CustomName = "Field"; Name = "Color"; Evaluator = "$LOCAL$/CParticleSamplerCurve_EF247296"; } CActionFactoryParticleSpawnerBase $LOCAL$/PreFlash { Descriptor = "$LOCAL$/CParticleDescriptor_1E33C9A8"; DurationInSeconds = 1.0000000e-001; SpawnCountMode = TotalParticleCount; } CParticleDescriptor $LOCAL$/CParticleDescriptor_1E33C9A8 { Renderer = "$LOCAL$/CParticleRenderer_List_5987DD12"; CustomFields = { "$LOCAL$/CParticleFieldDeclaration_B3140DAA", }; Samplers = { "$LOCAL$/CParticleSamplerCurve_06C7D623", }; SpawnEvaluator = "$LOCAL$/CCompilerSyntaxNodeExpression_DAA3D58B"; States = { "$LOCAL$/CParticleState_7B7ECB1C", }; } CCompilerSyntaxNodeExpression $LOCAL$/CCompilerSyntaxNodeExpression_DAA3D58B { Expression = "function void Eval() { Life = 0.2; Size = 5; //Velocity = scene.axisUp(); Color = float4(1.0); } "; } CParticleFieldDeclaration $LOCAL$/CParticleFieldDeclaration_B3140DAA { FieldName = "Color"; FieldType = float4; } CParticleRenderer_Billboard $LOCAL$/CParticleRenderer_Billboard_194188B5 { CustomName = "Billboard"; Diffuse = "Textures/FX/Glow_02.dds"; } CParticleState $LOCAL$/CParticleState_7B7ECB1C { StateName = "Evolvers"; Evolvers = { "$LOCAL$/Script_2", "$LOCAL$/CParticleEvolver_Physics_9F457A0F", "$LOCAL$/Field_2", }; } CParticleEvolver_Physics $LOCAL$/CParticleEvolver_Physics_9F457A0F { CustomName = "Physics"; } CParticleEvolver_Field $LOCAL$/Field_2 { CustomName = "Field"; Name = "Size"; Evaluator = "$LOCAL$/CParticleSamplerCurve_337A9C19"; } CParticleSamplerCurve $LOCAL$/CParticleSamplerCurve_337A9C19 { Times = { 0.0000000e+000, 5.7104397e-001, 1.0000000e+000, }; FloatValues = { 7.2441397e+000, 6.0743637e+000, 8.9722443e-001, }; FloatTangents = { 0.0000000e+000, -1.8714930e-001, -2.6844974e+000, -2.0165372e+000, -1.8352952e+000, 0.0000000e+000, }; MinLimits = float4(0.0000000e+000, 0.0000000e+000, 0.0000000e+000, 0.0000000e+000); } CParticleRenderer_List $LOCAL$/CParticleRenderer_List_5987DD12 { CustomName = "List"; Renderers = { "$LOCAL$/CParticleRenderer_Billboard_194188B5", }; } CParticleDescriptor $LOCAL$/CParticleDescriptor_EB06C381 { Renderer = "$LOCAL$/CParticleRenderer_List_1E17F7D8"; CustomFields = { "$LOCAL$/CParticleFieldDeclaration_3CDA2A4C", }; Samplers = { "$LOCAL$/CParticleSamplerCurve_3C9401E0", }; SpawnEvaluator = "$LOCAL$/CCompilerSyntaxNodeExpression_5977B0FF"; States = { "$LOCAL$/CParticleState_1322942E", }; } CParticleRenderer_List $LOCAL$/CParticleRenderer_List_1E17F7D8 { CustomName = "List"; Renderers = { "$LOCAL$/CParticleRenderer_Billboard_8197877B", }; } CParticleRenderer_Billboard $LOCAL$/CParticleRenderer_Billboard_8197877B { CustomName = "Billboard"; Diffuse = "Textures/FX/Glow_02.dds"; } CParticleFieldDeclaration $LOCAL$/CParticleFieldDeclaration_3CDA2A4C { FieldName = "Color"; FieldType = float4; } CCompilerSyntaxNodeExpression $LOCAL$/CCompilerSyntaxNodeExpression_5977B0FF { Expression = "function void Eval() { Life = 0.7; Size = 5; //Velocity = scene.axisUp(); Color = float4(1.0); } "; } CParticleState $LOCAL$/CParticleState_1322942E { StateName = "Evolvers"; Evolvers = { "$LOCAL$/CParticleEvolver_Physics_B04B8F89", "$LOCAL$/CParticleEvolver_Field_E5657FC2", "$LOCAL$/Script_1", }; } CParticleEvolver_Physics $LOCAL$/CParticleEvolver_Physics_B04B8F89 { CustomName = "Physics"; } CParticleEvolver_Field $LOCAL$/CParticleEvolver_Field_E5657FC2 { CustomName = "Field"; Name = "Size"; Evaluator = "$LOCAL$/CParticleSamplerCurve_F39058AD"; } CParticleSamplerCurve $LOCAL$/CParticleSamplerCurve_F39058AD { Times = { 0.0000000e+000, 5.8754885e-001, 1.0000000e+000, }; FloatValues = { 4.4767892e-001, 1.5184369e+000, 1.6519821e+000, }; FloatTangents = { 0.0000000e+000, 2.0235164e+000, 2.6993397e-001, 1.8948989e-001, -9.3440667e-002, 0.0000000e+000, }; MinLimits = float4(0.0000000e+000, 0.0000000e+000, 0.0000000e+000, 0.0000000e+000); } CActionFactoryParticleSpawnerBase $LOCAL$/Flash { Delay = 1.0000000e-001; Descriptor = "$LOCAL$/CParticleDescriptor_EB06C381"; DurationInSeconds = 1.0000000e-001; SpawnCountMode = TotalParticleCount; } CParticleDescriptor $LOCAL$/CParticleDescriptor_3A4409B3 { Renderer = "$LOCAL$/CParticleRenderer_Billboard_6468C0F2"; CustomFields = { "$LOCAL$/CParticleFieldDeclaration_60B7199D", }; Samplers = { "$LOCAL$/CParticleSamplerCurve_5231BA24", }; SpawnEvaluator = "$LOCAL$/CCompilerSyntaxNodeExpression_34D411B7"; States = { "$LOCAL$/CParticleState_12E9A746", }; } CParticleRenderer_Billboard $LOCAL$/CParticleRenderer_Billboard_6468C0F2 { CustomName = "Billboard"; BillboardingMaterial = AlphaBlend_Distortion; Diffuse = "Textures/FX/DistortionCircle_01.dds"; } CParticleFieldDeclaration $LOCAL$/CParticleFieldDeclaration_60B7199D { FieldName = "Color"; FieldType = float4; } CParticleSamplerCurve $LOCAL$/CParticleSamplerCurve_5231BA24 { SamplerName = "SizeSampler"; Times = { 0.0000000e+000, 1.0000000e+000, }; FloatValues = { 0.0000000e+000, 1.0000000e+000, }; FloatTangents = { 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_34D411B7 { Expression = "function void Eval() { Life = 1.5; Size = (2.1) * SizeSampler.sample(spawner.LifeRatio); Color=1; } "; } CParticleState $LOCAL$/CParticleState_12E9A746 { StateName = "State_0"; Evolvers = { "$LOCAL$/CParticleEvolver_Localspace_31801481", "$LOCAL$/CParticleEvolver_Field_0BE16B5A", }; } CParticleEvolver_Localspace $LOCAL$/CParticleEvolver_Localspace_31801481 { CustomName = "Localspace"; ChildList = { "$LOCAL$/CParticleEvolver_Field_5B731CD8", }; } CParticleEvolver_Field $LOCAL$/CParticleEvolver_Field_5B731CD8 { CustomName = "Field"; Name = "Color"; Evaluator = "$LOCAL$/CParticleSamplerCurve_6FCF107B"; } CParticleSamplerCurve $LOCAL$/CParticleSamplerCurve_6FCF107B { ValueType = Float4; Times = { 0.0000000e+000, 2.7777803e-001, 1.0000000e+000, }; FloatValues = { 2.0012751e+000, 2.0012751e+000, 2.0012751e+000, 2.0012751e+000, 4.1418731e-001, 4.1418731e-001, 4.1418731e-001, 4.1418731e-001, 0.0000000e+000, 0.0000000e+000, 0.0000000e+000, 0.0000000e+000, }; FloatTangents = { 0.0000000e+000, 0.0000000e+000, 0.0000000e+000, 0.0000000e+000, -3.1068056e+000, -3.1068056e+000, -3.1068056e+000, -3.1068056e+000, -4.4720274e-001, -4.4720274e-001, -4.4720274e-001, -4.4720274e-001, -1.1627251e+000, -1.1627251e+000, -1.1627251e+000, -1.1627251e+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); } CParticleEvolver_Field $LOCAL$/CParticleEvolver_Field_0BE16B5A { CustomName = "Field"; Name = "Size"; Evaluator = "$LOCAL$/CParticleSamplerCurve_93366025"; } CParticleSamplerCurve $LOCAL$/CParticleSamplerCurve_93366025 { Times = { 0.0000000e+000, 4.3022251e-001, 1.0000000e+000, }; FloatValues = { 1.0993830e+000, 1.9205350e+000, 2.4890079e+000, }; FloatTangents = { 0.0000000e+000, 9.8338151e-001, 7.6996583e-001, 1.0197260e+000, 0.0000000e+000, 0.0000000e+000, }; MinLimits = float4(0.0000000e+000, 0.0000000e+000, 0.0000000e+000, 0.0000000e+000); } CActionFactoryParticleSpawnerBase $LOCAL$/Distortion { Delay = 1.0000000e-001; Descriptor = "$LOCAL$/CParticleDescriptor_3A4409B3"; DurationInSeconds = 1.0000000e+000; } CParticleDescriptor $LOCAL$/CParticleDescriptor_C3012729 { CustomFields = { "$LOCAL$/CParticleFieldDeclaration_8E32D0A0", "$LOCAL$/CParticleFieldDeclaration_56136BE3", "$LOCAL$/CParticleFieldDeclaration_B74DB6E2", "$LOCAL$/CParticleFieldDeclaration_87934E4D", "$LOCAL$/CParticleFieldDeclaration_8462B494", "$LOCAL$/CParticleFieldDeclaration_01B264E7", "$LOCAL$/CParticleFieldDeclaration_909FE236", "$LOCAL$/CParticleFieldDeclaration_08347231", }; Samplers = { "$LOCAL$/CParticleSamplerShape_A5DAF448", "$LOCAL$/CParticleSamplerCurve_05595B4A", "$LOCAL$/CParticleSamplerCurve_FC4416D5", }; SpawnEvaluator = "$LOCAL$/CCompilerSyntaxNodeExpression_F9EF63BC"; States = { "$LOCAL$/CParticleState_8FDFAF2F", }; } CParticleFieldDeclaration $LOCAL$/CParticleFieldDeclaration_8E32D0A0 { FieldName = "Radius"; } CParticleFieldDeclaration $LOCAL$/CParticleFieldDeclaration_56136BE3 { FieldName = "OrbitalCenter"; FieldType = float3; TransformFilter = full; } CParticleFieldDeclaration $LOCAL$/CParticleFieldDeclaration_B74DB6E2 { FieldName = "BasePosition"; FieldType = float3; TransformFilter = full; } CParticleFieldDeclaration $LOCAL$/CParticleFieldDeclaration_87934E4D { FieldName = "RotationAxis"; FieldType = float3; TransformFilter = rotate; } CParticleFieldDeclaration $LOCAL$/CParticleFieldDeclaration_8462B494 { FieldName = "Orbital"; } CParticleFieldDeclaration $LOCAL$/CParticleFieldDeclaration_01B264E7 { FieldName = "RadiusRate"; } CParticleFieldDeclaration $LOCAL$/CParticleFieldDeclaration_909FE236 { FieldName = "RotationRate"; } CParticleFieldDeclaration $LOCAL$/CParticleFieldDeclaration_08347231 { FieldName = "RandomedRGB"; FieldType = float3; } CParticleSamplerShape $LOCAL$/CParticleSamplerShape_A5DAF448 { SamplerName = "Sphere"; Shape = "$LOCAL$/CShapeDescriptor_C48F04AB"; } CShapeDescriptor $LOCAL$/CShapeDescriptor_C48F04AB { ShapeType = SPHERE; } CParticleSamplerCurve $LOCAL$/CParticleSamplerCurve_05595B4A { SamplerName = "SizeRatioSampler"; Times = { 0.0000000e+000, 4.5172039e-002, 7.9667412e-002, 2.3473868e-001, 1.0000000e+000, }; FloatValues = { 9.7151250e-003, 8.4995359e-002, 4.5984969e-001, 7.9461977e-002, 4.8672408e-003, }; FloatTangents = { 0.0000000e+000, -1.1017920e-002, 8.4486477e-002, 6.4517602e-002, 0.0000000e+000, 0.0000000e+000, -4.9369391e-002, -2.4363287e-001, -7.5415880e-003, 0.0000000e+000, }; MinLimits = float4(0.0000000e+000, 0.0000000e+000, 0.0000000e+000, 0.0000000e+000); } CParticleSamplerCurve $LOCAL$/CParticleSamplerCurve_FC4416D5 { SamplerName = "RotateRatioSampler"; Times = { 0.0000000e+000, 1.0000000e+000, }; FloatValues = { 8.0358833e-001, 2.3914814e-002, }; FloatTangents = { 0.0000000e+000, -1.7688432e+000, 9.8717056e-002, 0.0000000e+000, }; MinLimits = float4(0.0000000e+000, 0.0000000e+000, 0.0000000e+000, 0.0000000e+000); } CCompilerSyntaxNodeExpression $LOCAL$/CCompilerSyntaxNodeExpression_F9EF63BC { Expression = "function void Eval() { Life = rand(0.5, 1.5); Radius = 0; OrbitalCenter = 0; RotationAxis = vrand(); BasePosition = Sphere.samplePosition(); Position = BasePosition * Radius; RadiusRate = rand(0.5, 1.5); RotationRate = rand(0.5, 1.5); RandomedRGB = float3(rand(0,RandomRGB.x),rand(0,RandomRGB.g),rand(0,RandomRGB.b)); } "; } CParticleState $LOCAL$/CParticleState_8FDFAF2F { EditorInfosIsBlockMinimized = 0; StateName = "State_0"; Evolvers = { "$LOCAL$/CParticleEvolver_Script_BDFE561E", "$LOCAL$/CParticleEvolver_Spawner_B19996F0", }; } CParticleEvolver_Script $LOCAL$/CParticleEvolver_Script_BDFE561E { CustomName = "Script"; Expression = "$LOCAL$/CCompilerSyntaxNodeExpression_DBC08039"; } CCompilerSyntaxNodeExpression $LOCAL$/CCompilerSyntaxNodeExpression_DBC08039 { Expression = "function void Eval() { Radius += (AdditionalRadiusSpeed * RadiusRate) * (dt * SizeRatioSampler.sample(LifeRatio)); Orbital += (OrbitalSpeed * RotationRate) * (dt * RotateRatioSampler.sample(LifeRatio)); float3 v = BasePosition - OrbitalCenter; Position = rotate(v, RotationAxis, Orbital) * Radius + OrbitalCenter; } "; } CParticleEvolver_Spawner $LOCAL$/CParticleEvolver_Spawner_B19996F0 { CustomName = "Spawner"; SpawnMetric = Time; SpawnInterval = 2.0000000e-002; Descriptor = "$LOCAL$/CParticleDescriptor_08938873"; } CParticleDescriptor $LOCAL$/CParticleDescriptor_08938873 { Renderer = "$LOCAL$/CParticleRenderer_List_90DAC6B2"; CustomFields = { "$LOCAL$/CParticleFieldDeclaration_402CE1E4", "$LOCAL$/CParticleFieldDeclaration_74167477", "$LOCAL$/CParticleFieldDeclaration_CC166106", "$LOCAL$/CParticleFieldDeclaration_062A7141", }; Samplers = { "$LOCAL$/CParticleSamplerCurve_D3CA5898", "$LOCAL$/CParticleSamplerCurve_9FD5173B", "$LOCAL$/CParticleSamplerCurve_B188991A", "$LOCAL$/CParticleSamplerCurve_1BF240E5", }; SpawnEvaluator = "$LOCAL$/CCompilerSyntaxNodeExpression_C194CF0C"; States = { "$LOCAL$/CParticleState_E780D4BF", }; } CParticleRenderer_List $LOCAL$/CParticleRenderer_List_90DAC6B2 { CustomName = "List"; Renderers = { "$LOCAL$/CParticleRenderer_Ribbon_382AB25D", }; } CParticleRenderer_Ribbon $LOCAL$/CParticleRenderer_Ribbon_382AB25D { CustomName = "Ribbon"; Quality = CorrectDeformation; Diffuse = "Textures/FX/TrailWater_01.dds"; AtlasDefinition = "Textures/FX/AtlasC4.pkat"; TextureUField = "LifeRatio"; } CParticleFieldDeclaration $LOCAL$/CParticleFieldDeclaration_402CE1E4 { FieldName = "Color"; FieldType = float4; } CParticleFieldDeclaration $LOCAL$/CParticleFieldDeclaration_74167477 { FieldName = "Color2"; FieldType = float4; } CParticleFieldDeclaration $LOCAL$/CParticleFieldDeclaration_CC166106 { FieldName = "TextureID"; } CParticleFieldDeclaration $LOCAL$/CParticleFieldDeclaration_062A7141 { FieldName = "RandomedRGB"; FieldType = float3; } CParticleSamplerCurve $LOCAL$/CParticleSamplerCurve_D3CA5898 { SamplerName = "IntensityFromParent"; Times = { 0.0000000e+000, 1.2138355e-001, 8.4999996e-001, 1.0000000e+000, }; FloatValues = { 0.0000000e+000, 9.2072124e+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, 0.0000000e+000, 0.0000000e+000, }; MinLimits = float4(0.0000000e+000, 0.0000000e+000, 0.0000000e+000, 0.0000000e+000); } CParticleSamplerCurve $LOCAL$/CParticleSamplerCurve_9FD5173B { SamplerName = "Alpha"; Times = { 0.0000000e+000, 7.0222743e-002, 1.0000000e+000, }; FloatValues = { 0.0000000e+000, 9.8318589e-001, 4.9955750e-001, }; FloatTangents = { 0.0000000e+000, 0.0000000e+000, 0.0000000e+000, 0.0000000e+000, -6.9138300e-001, 0.0000000e+000, }; MinLimits = float4(0.0000000e+000, 0.0000000e+000, 0.0000000e+000, 0.0000000e+000); } CParticleSamplerCurve $LOCAL$/CParticleSamplerCurve_B188991A { SamplerName = "Glow"; Times = { 0.0000000e+000, 5.7290055e-002, 1.3172999e-001, 7.1332288e-001, 1.0000000e+000, }; FloatValues = { 0.0000000e+000, 2.1233578e+000, 1.6552079e+000, 1.1014417e+000, -1.2139082e-002, }; FloatTangents = { 0.0000000e+000, 0.0000000e+000, 0.0000000e+000, 0.0000000e+000, 0.0000000e+000, 0.0000000e+000, -1.6811266e+000, -8.2865608e-001, 2.4560774e-002, 0.0000000e+000, }; MinLimits = float4(0.0000000e+000, 0.0000000e+000, 0.0000000e+000, 0.0000000e+000); } CParticleSamplerCurve $LOCAL$/CParticleSamplerCurve_1BF240E5 { SamplerName = "SizeSampler"; Times = { 0.0000000e+000, 1.6869873e-001, 1.0000000e+000, }; FloatValues = { 5.7522357e-003, 9.8893809e-001, 4.8672259e-003, }; FloatTangents = { 0.0000000e+000, 0.0000000e+000, 0.0000000e+000, 0.0000000e+000, -1.1051891e+000, 0.0000000e+000, }; MinLimits = float4(0.0000000e+000, 0.0000000e+000, 0.0000000e+000, 0.0000000e+000); } CCompilerSyntaxNodeExpression $LOCAL$/CCompilerSyntaxNodeExpression_C194CF0C { Expression = "function void Eval() { Life = TrailLife; RandomedRGB = parent.RandomedRGB; //TextureID = rand(0,4) //Brightness = IntensityFromParent.sample(spawner.LifeRatio); } "; } CParticleState $LOCAL$/CParticleState_E780D4BF { StateName = "State_0"; Evolvers = { "$LOCAL$/CParticleEvolver_Script_184CA2EE", }; } CParticleEvolver_Script $LOCAL$/CParticleEvolver_Script_184CA2EE { CustomName = "Script"; Expression = "$LOCAL$/CCompilerSyntaxNodeExpression_E8636549"; } CCompilerSyntaxNodeExpression $LOCAL$/CCompilerSyntaxNodeExpression_E8636549 { Expression = "function void Eval() { Color = float4(RGB.x + RandomedRGB.x, RGB.y + RandomedRGB.y, RGB.z + RandomedRGB.z, Alpha.sample(LifeRatio)) * pow(Glow.sample(LifeRatio),Power); Color2 = float4(0.1); Size = TrailSize * SizeSampler.sample(LifeRatio); } "; } CActionFactoryParticleSpawnerBase $LOCAL$/Orbit { Delay = 1.0000000e-001; Descriptor = "$LOCAL$/CParticleDescriptor_C3012729"; DurationInSeconds = 9.9999998e-003; SpawnCountMode = TotalParticleCount; SpawnCount = 3.2000000e+001; FirstSpawnDelay = 5.0000000e-001; } CParticleAttributeDeclaration $LOCAL$/CParticleAttributeDeclaration_3E13D103 { AttributeName = "AdditionalRadiusSpeed"; DefaultValueF4 = float4(1.1238530e+001, 0.0000000e+000, 0.0000000e+000, 0.0000000e+000); HasMin = true; HasMax = true; MaxValueF4 = float4(1.0000000e+002, 1.0000000e+000, 1.0000000e+000, 1.0000000e+000); MaxValueI4 = int4(10, 10, 10, 10); } CParticleAttributeDeclaration $LOCAL$/CParticleAttributeDeclaration_E8157282 { AttributeName = "OrbitalSpeed"; DefaultValueF4 = float4(2.0000000e+000, 0.0000000e+000, 0.0000000e+000, 0.0000000e+000); HasMin = true; HasMax = true; MaxValueF4 = float4(3.0000000e+002, 1.0000000e+000, 1.0000000e+000, 1.0000000e+000); MaxValueI4 = int4(10, 10, 10, 10); } CParticleAttributeDeclaration $LOCAL$/CParticleAttributeDeclaration_26F1E26D { AttributeName = "RGB"; AttributeType = float3; DefaultValueF4 = float4(1.0000000e+000, 9.0137613e-001, 8.1880730e-001, 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_56BCCB34 { AttributeName = "Power"; DefaultValueF4 = float4(4.5000000e+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); } CParticleAttributeDeclaration $LOCAL$/CParticleAttributeDeclaration_DD94F007 { AttributeName = "TrailSize"; DefaultValueF4 = float4(9.9999998e-003, 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); } CParticleAttributeDeclaration $LOCAL$/CParticleAttributeDeclaration_E241BBD6 { AttributeName = "TrailLife"; DefaultValueF4 = float4(2.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); } CParticleAttributeDeclaration $LOCAL$/CParticleAttributeDeclaration_14487C51 { AttributeName = "RandomRGB"; AttributeType = float3; DefaultValueF4 = float4(2.5000000e-001, 2.5000000e-001, 2.5000000e-001, 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); } CParticleDescriptor $LOCAL$/CParticleDescriptor_B2403A9D { CustomFields = { "$LOCAL$/CParticleFieldDeclaration_7CF0EF24", "$LOCAL$/CParticleFieldDeclaration_FB38EAB7", "$LOCAL$/CParticleFieldDeclaration_7952F446", "$LOCAL$/CParticleFieldDeclaration_E14CE581", }; Samplers = { "$LOCAL$/CParticleSamplerShape_4AE7C1D8", }; SpawnEvaluator = "$LOCAL$/CCompilerSyntaxNodeExpression_EEA8A85A"; States = { "$LOCAL$/CParticleState_56BFE125", }; } CParticleFieldDeclaration $LOCAL$/CParticleFieldDeclaration_7CF0EF24 { FieldName = "Timeb"; } CParticleFieldDeclaration $LOCAL$/CParticleFieldDeclaration_FB38EAB7 { FieldName = "SizeCoeff"; } CParticleFieldDeclaration $LOCAL$/CParticleFieldDeclaration_7952F446 { FieldName = "FluxScale"; } CParticleFieldDeclaration $LOCAL$/CParticleFieldDeclaration_E14CE581 { FieldName = "NextBranchTime"; } CParticleSamplerShape $LOCAL$/CParticleSamplerShape_4AE7C1D8 { SamplerName = "DropSampler"; Shape = "$LOCAL$/CShapeDescriptor_055E197B"; } CShapeDescriptor $LOCAL$/CShapeDescriptor_055E197B { ShapeType = SPHERE; Radius = 5.0000000e-001; } CCompilerSyntaxNodeExpression $LOCAL$/CCompilerSyntaxNodeExpression_EEA8A85A { Expression = "function void Eval() { Life = 0.1; Velocity = 0.1*float3(rand(-10,10),rand(-10,10),rand(-10,10)); SizeCoeff = Scale*0.5; FluxScale = pow(Flux,0.5)*2*Scale; NextBranchTime = SizeCoeff * (0.5 + 0.25 * pow(rand(0, 1), 2)); Position = DropSampler.samplePosition(); } "; } CParticleState $LOCAL$/CParticleState_56BFE125 { StateName = "State_0"; MicroUpdatesMinFPS = 0.0000000e+000; MaxMicroUpdatesPerFrame = 0; Evolvers = { "$LOCAL$/CParticleEvolver_Localspace_2AE6D44C", "$LOCAL$/CParticleEvolver_Spawner_1A02BA80", "$LOCAL$/CParticleEvolver_Spawner_CB852091", "$LOCAL$/CParticleEvolver_Spawner_E99CADD7", }; } CParticleEvolver_Localspace $LOCAL$/CParticleEvolver_Localspace_2AE6D44C { EditorInfosIsBlockMinimized = 0; CustomName = "Localspace"; ChildList = { "$LOCAL$/CParticleEvolver_Physics_46CCA2FF", "$LOCAL$/CParticleEvolver_Script_79C16E2E", }; } CParticleEvolver_Physics $LOCAL$/CParticleEvolver_Physics_46CCA2FF { CustomName = "Physics"; } CParticleEvolver_Script $LOCAL$/CParticleEvolver_Script_79C16E2E { CustomName = "Script"; Expression = "$LOCAL$/CCompilerSyntaxNodeExpression_CB867189"; } CCompilerSyntaxNodeExpression $LOCAL$/CCompilerSyntaxNodeExpression_CB867189 { Expression = "function void Eval() { Timeb += dt; int shouldSpawnBranch = Timeb > 0.01; float n = 60 * SizeCoeff; Velocity = select(Velocity,float3(SizeCoeff*rand(-1,1)*100,rand(-n,n),SizeCoeff*rand(-1,1)*100),shouldSpawnBranch); Timeb = select(Timeb,0,shouldSpawnBranch); NextBranchTime = select(NextBranchTime, SizeCoeff * (0.05 + 0.25 * pow(rand(0, 1), 2)), shouldSpawnBranch); } "; } CParticleEvolver_Spawner $LOCAL$/CParticleEvolver_Spawner_1A02BA80 { CustomName = "Spawner"; SpawnInterval = 3.0000000e+000; FirstSpawnDelay = 0.0000000e+000; CustomSpawnIntervalScaleField = "SizeCoeff"; Descriptor = "$LOCAL$/CParticleDescriptor_C52AAB43"; } CParticleDescriptor $LOCAL$/CParticleDescriptor_C52AAB43 { CustomFields = { "$LOCAL$/CParticleFieldDeclaration_F46C39C2", }; SpawnEvaluator = "$LOCAL$/CCompilerSyntaxNodeExpression_7939C874"; States = { "$LOCAL$/CParticleState_1F6B1647", }; } CParticleFieldDeclaration $LOCAL$/CParticleFieldDeclaration_F46C39C2 { FieldName = "Color"; FieldType = float3; } CCompilerSyntaxNodeExpression $LOCAL$/CCompilerSyntaxNodeExpression_7939C874 { Expression = "function void Eval() { Life = 0.01; Color = RGB; } "; } CParticleState $LOCAL$/CParticleState_1F6B1647 { StateName = "State_0"; Evolvers = { "$LOCAL$/CParticleEvolver_Physics_B163BF16", }; } CParticleEvolver_Physics $LOCAL$/CParticleEvolver_Physics_B163BF16 { CustomName = "Physics"; } CParticleEvolver_Spawner $LOCAL$/CParticleEvolver_Spawner_CB852091 { CustomName = "Spawner"; SpawnInterval = 5.0000000e-001; FirstSpawnDelay = 0.0000000e+000; CustomSpawnIntervalScaleField = "FluxScale"; Descriptor = "$LOCAL$/CParticleDescriptor_E8E81228"; } CParticleDescriptor $LOCAL$/CParticleDescriptor_E8E81228 { EditorInfosIsBlockMinimized = 0; Renderer = "$LOCAL$/CParticleRenderer_Ribbon_1451880B"; CustomFields = { "$LOCAL$/CParticleFieldDeclaration_8322722A", "$LOCAL$/CParticleFieldDeclaration_24058735", "$LOCAL$/CParticleFieldDeclaration_27FB6B9C", "$LOCAL$/CParticleFieldDeclaration_77B6648F", }; Samplers = { "$LOCAL$/CParticleSamplerCurve_787686FE", }; SpawnEvaluator = "$LOCAL$/CCompilerSyntaxNodeExpression_E9F21299"; States = { "$LOCAL$/CParticleState_4AE768D0", }; } CParticleRenderer_Ribbon $LOCAL$/CParticleRenderer_Ribbon_1451880B { CustomName = "Ribbon"; BillboardingMaterial = Additive_NoAlpha; Diffuse = "Textures/Fx/Lightning_05.dds"; AtlasDefinition = "Textures/Fx/AtlasX4.pkat"; } CParticleFieldDeclaration $LOCAL$/CParticleFieldDeclaration_8322722A { FieldName = "Color"; FieldType = float3; } CParticleFieldDeclaration $LOCAL$/CParticleFieldDeclaration_24058735 { FieldName = "TextureID"; } CParticleFieldDeclaration $LOCAL$/CParticleFieldDeclaration_27FB6B9C { FieldName = "ColorCoeff"; } CParticleFieldDeclaration $LOCAL$/CParticleFieldDeclaration_77B6648F { FieldName = "CC"; FieldType = float3; } CParticleSamplerCurve $LOCAL$/CParticleSamplerCurve_787686FE { SamplerName = "GlowSampler"; Times = { 0.0000000e+000, 7.5512230e-002, 1.6900167e-001, 1.0000000e+000, }; FloatValues = { 0.0000000e+000, 1.4312178e+000, 3.8749021e-001, 1.5209466e-003, }; 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, }; MinLimits = float4(0.0000000e+000, 0.0000000e+000, 0.0000000e+000, 0.0000000e+000); } CCompilerSyntaxNodeExpression $LOCAL$/CCompilerSyntaxNodeExpression_E9F21299 { Expression = "function void Eval() { Life = 0.2; Size = 0.1 * Scale; ColorCoeff = 100 * pow(1 - spawner.LifeRatio, 2); TextureID = rand(0,16); CC = RGB * 10; } "; } CParticleState $LOCAL$/CParticleState_4AE768D0 { StateName = "State_0"; Evolvers = { "$LOCAL$/CParticleEvolver_Localspace_7A8ACFD3", "$LOCAL$/CParticleEvolver_Physics_02D5F192", "$LOCAL$/CParticleEvolver_Script_743DC6BD", }; } CParticleEvolver_Localspace $LOCAL$/CParticleEvolver_Localspace_7A8ACFD3 { CustomName = "Localspace"; } CParticleEvolver_Physics $LOCAL$/CParticleEvolver_Physics_02D5F192 { CustomName = "Physics"; } CParticleEvolver_Script $LOCAL$/CParticleEvolver_Script_743DC6BD { CustomName = "Script"; Expression = "$LOCAL$/CCompilerSyntaxNodeExpression_5E595DC4"; } CCompilerSyntaxNodeExpression $LOCAL$/CCompilerSyntaxNodeExpression_5E595DC4 { Expression = "function void Eval() { Color=CC * ColorCoeff * pow(GlowSampler.sample(LifeRatio), 2); } "; } CParticleEvolver_Spawner $LOCAL$/CParticleEvolver_Spawner_E99CADD7 { CustomName = "Spawner"; SpawnInterval = 1.0000000e+000; FirstSpawnDelay = 0.0000000e+000; CustomSpawnIntervalScaleField = "SizeCoeff"; Descriptor = "$LOCAL$/CParticleDescriptor_FA7265E6"; } CParticleDescriptor $LOCAL$/CParticleDescriptor_FA7265E6 { Renderer = "$LOCAL$/CParticleRenderer_Billboard_A56267A1"; CustomFields = { "$LOCAL$/CParticleFieldDeclaration_49AC5E78", }; SpawnEvaluator = "$LOCAL$/CCompilerSyntaxNodeExpression_C71AA29B"; States = { "$LOCAL$/CParticleState_B40D57FA", }; } CParticleRenderer_Billboard $LOCAL$/CParticleRenderer_Billboard_A56267A1 { CustomName = "Billboard"; BillboardingMaterial = Additive_NoAlpha; Diffuse = "Textures/Fx/Glow_12.dds"; } CParticleFieldDeclaration $LOCAL$/CParticleFieldDeclaration_49AC5E78 { FieldName = "Color"; FieldType = float3; } CCompilerSyntaxNodeExpression $LOCAL$/CCompilerSyntaxNodeExpression_C71AA29B { Expression = "function void Eval() { Life = 0.1; Size = 0.5 * Scale; Color = RGB * 0.04 * pow(1 - spawner.LifeRatio, 2); } "; } CParticleState $LOCAL$/CParticleState_B40D57FA { StateName = "State_0"; Evolvers = { "$LOCAL$/CParticleEvolver_Localspace_0BC47945", "$LOCAL$/CParticleEvolver_Physics_851D3EEC", }; } CParticleEvolver_Localspace $LOCAL$/CParticleEvolver_Localspace_0BC47945 { CustomName = "Localspace"; } CParticleEvolver_Physics $LOCAL$/CParticleEvolver_Physics_851D3EEC { CustomName = "Physics"; } CActionFactoryParticleSpawnerBase $LOCAL$/Lightning { Delay = 3.0000001e-001; Descriptor = "$LOCAL$/CParticleDescriptor_B2403A9D"; DurationInSeconds = 3.0000001e-001; SpawnCountMode = TotalParticleCount; SpawnCount = 6.0000000e+000; SpawnCountRelativeRandomDeviation = 1.3000000e+000; } CParticleEvolver_Script $LOCAL$/Script_1 { CustomName = "Script"; Expression = "$LOCAL$/CCompilerSyntaxNodeExpression_14864369"; } CCompilerSyntaxNodeExpression $LOCAL$/CCompilerSyntaxNodeExpression_14864369 { Expression = "function void Eval() { float rate = Curve_1.sample(LifeRatio); Color = float4(RGB.x * rate, RGB.y *rate, RGB.z * rate, rate); } "; } CParticleSamplerCurve $LOCAL$/CParticleSamplerCurve_3C9401E0 { SamplerName = "Curve_1"; Times = { 0.0000000e+000, 8.5398823e-002, 2.3699199e-001, 1.0000000e+000, }; FloatValues = { 0.0000000e+000, 1.0134250e+001, 3.5914707e-001, 1.2560610e-002, }; FloatTangents = { 0.0000000e+000, 0.0000000e+000, 4.3611922e-003, 7.7416361e-003, -1.2548015e-001, -6.3157439e-001, 0.0000000e+000, 0.0000000e+000, }; MinLimits = float4(0.0000000e+000, 0.0000000e+000, 0.0000000e+000, 0.0000000e+000); } CParticleSamplerCurve $LOCAL$/CParticleSamplerCurve_06C7D623 { SamplerName = "Curve_1"; Times = { 0.0000000e+000, 1.0000000e+000, }; FloatValues = { 0.0000000e+000, -3.4219995e-003, }; FloatTangents = { 0.0000000e+000, 0.0000000e+000, -5.1962605e+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_87C94E22"; } CCompilerSyntaxNodeExpression $LOCAL$/CCompilerSyntaxNodeExpression_87C94E22 { Expression = "function void Eval() { float rate = Curve_1.sample(LifeRatio) * 0.2; Color = float4(RGB.x * rate, RGB.y * rate, RGB.z * rate, rate); } "; }