FiE-Game/assets/streaming/PackFx/Particles/JukeBall.pkfx
2018-11-20 20:05:15 +02:00

263 lines
6.8 KiB
Text

Version = 1.9.1.28491;
CParticleEffect $LOCAL$/Resource
{
OnSpawn = "$LOCAL$/Spawner";
CustomAttributes = "$LOCAL$/_GlobalAttributes";
Autostart = true;
}
CActionFactoryParticleSpawnerBase $LOCAL$/Layer_0
{
Descriptor = "$LOCAL$/CParticleDescriptor_AE135B2A";
Infinite = true;
DurationInSeconds = 2.2000000e+002;
SpawnCount = 1.0000000e+004;
}
CParticleDescriptor $LOCAL$/CParticleDescriptor_AE135B2A
{
Renderer = "$LOCAL$/CParticleRenderer_Billboard_9136D2F4";
CustomFields =
{
"$LOCAL$/CParticleFieldDeclaration_FFD5B903",
"$LOCAL$/CParticleFieldDeclaration_EC905C04",
"$LOCAL$/CParticleFieldDeclaration_A6F29AB7",
"$LOCAL$/CParticleFieldDeclaration_4C8C6A9E",
};
Samplers =
{
"$LOCAL$/CParticleSamplerSpectrumImpl_03E9F740",
"$LOCAL$/CParticleSamplerShape_872530CC",
"$LOCAL$/CParticleSamplerProceduralTurbulence_AF1925A6",
"$LOCAL$/CParticleSamplerProceduralTurbulence_91B5BF6D",
};
SpawnEvaluator = "$LOCAL$/CCompilerSyntaxNodeExpression_5566F5E7";
States =
{
"$LOCAL$/CParticleState_3AF8190E",
};
}
CActionFactoryWithChilds $LOCAL$/Spawner
{
ChildList =
{
"$LOCAL$/Layer_0",
};
}
CParticleRenderer_Billboard $LOCAL$/CParticleRenderer_Billboard_9136D2F4
{
CustomName = "Billboard";
BillboardingMaterial = Additive_NoAlpha;
Diffuse = "Textures/FX/dot_NoAlpha.tga";
BillboardMode = VelocityCapsuleAlign;
AxisField = "Axis";
AxisScale = 5.0000001e-002;
}
CCompilerSyntaxNodeExpression $LOCAL$/CCompilerSyntaxNodeExpression_5566F5E7
{
Expression = "function void Eval()
{
Size = 0.025;
ColorCoeff = step(rand(0,1), 0.98) * 7 + 0.15;
Position = Sphere.samplePosition() * OrbitalRadius;
float3 n = normalize(Position);
float3 samplingLocation = SpectrumSphereMap.samplePotential(n);
float t = pow(saturate(samplingLocation.x*0.5+0.5), 2);
float kSpectrum = pow(AudioSpectrum.sample(t)*512, 0.5);
// float killer = step(kSpectrum, 0.6);
Life = rand(0.4, 0.7) * 5;// * killer;
ParametricLocation = float3(t, Attr_SpectrumCutoff, rand(-1,1));
float spectrumAxis = pow(kSpectrum,1)*1;
Velocity = n * spectrumAxis*4;
Position += n * kSpectrum*0.05;
}";
}
CParticleState $LOCAL$/CParticleState_3AF8190E
{
StateName = "State_0";
Evolvers =
{
"$LOCAL$/CParticleEvolver_Physics_36D6D4BD",
"$LOCAL$/CParticleEvolver_Field_A6AD56E9",
"$LOCAL$/CParticleEvolver_Script_F0D33FBA",
};
}
CParticleEvolver_Physics $LOCAL$/CParticleEvolver_Physics_36D6D4BD
{
CustomName = "Physics";
ConstantAcceleration = float3(0.0000000e+000, -5.0000000e+000, 0.0000000e+000);
Drag = 2.0000000e+000;
VelocityFieldSampler = "Turbulence";
}
CParticleAttributeList $LOCAL$/_GlobalAttributes
{
AttributeList =
{
"$LOCAL$/CParticleAttributeDeclaration_6AA46272",
"$LOCAL$/CParticleAttributeDeclaration_3154BA46",
};
}
CParticleSamplerProceduralTurbulence $LOCAL$/CParticleSamplerProceduralTurbulence_91B5BF6D
{
SamplerName = "Turbulence";
Strength = 8.8388346e-002;
Gain = 1.0000000e+000;
TimeScale = 5.0000000e-001;
}
CParticleSamplerSpectrum $LOCAL$/CParticleSamplerSpectrumImpl_03E9F740
{
SamplerName = "AudioSpectrum";
Filter = Cubic;
}
CParticleFieldDeclaration $LOCAL$/CParticleFieldDeclaration_FFD5B903
{
FieldName = "ParametricLocation";
FieldType = float3;
}
CParticleEvolver_Script $LOCAL$/CParticleEvolver_Script_F0D33FBA
{
CustomName = "Script";
Expression = "$LOCAL$/CCompilerSyntaxNodeExpression_09C84795";
}
CCompilerSyntaxNodeExpression $LOCAL$/CCompilerSyntaxNodeExpression_09C84795
{
Expression = "function void Eval()
{
float3 n = normalize(Position);
float t = ParametricLocation.x;
float spectrum = pow(AudioSpectrum.sample(t)*50, 0.5);
float spectrumAxis = pow(spectrum,1)*0.5;
Size = 0.5 + pow(saturate(spectrum*0.5),8) * 0.1f;
Color *= float4((1-t)*0.5 + 0.3, 0.45, 0.2 + spectrum*3, 1) * (spectrum*2 + 0.5) * ColorCoeff * step(spectrum, ParametricLocation.y) * 0.05;
Axis = Velocity;// * (0.5 + spectrumAxis * 0.5);
}";
}
CParticleFieldDeclaration $LOCAL$/CParticleFieldDeclaration_EC905C04
{
FieldName = "Axis";
FieldType = float3;
TransformFilter = rotate;
}
CParticleFieldDeclaration $LOCAL$/CParticleFieldDeclaration_A6F29AB7
{
FieldName = "Color";
FieldType = float4;
}
CParticleFieldDeclaration $LOCAL$/CParticleFieldDeclaration_4C8C6A9E
{
FieldName = "ColorCoeff";
}
CParticleEvolver_Field $LOCAL$/CParticleEvolver_Field_A6AD56E9
{
CustomName = "Field";
Name = "Color";
Evaluator = "$LOCAL$/CParticleSamplerCurve_1BEF7E08";
}
CParticleSamplerCurve $LOCAL$/CParticleSamplerCurve_1BEF7E08
{
ValueType = Float4;
Times =
{
0.0000000e+000,
1.6115719e-001,
7.0012975e-001,
1.0000000e+000,
};
FloatValues =
{
0.0000000e+000,
0.0000000e+000,
0.0000000e+000,
0.0000000e+000,
1.6564224e+000,
4.5876641e+000,
2.5381713e+000,
1.0000000e+000,
1.3358867e+000,
7.7228022e-001,
1.4703007e+000,
1.0000000e+000,
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,
0.0000000e+000,
0.0000000e+000,
0.0000000e+000,
0.0000000e+000,
2.9544154e-001,
-8.4340531e-001,
-1.6180421e-001,
0.0000000e+000,
9.8807180e-001,
-2.8206766e+000,
-5.4113644e-001,
0.0000000e+000,
-2.3531799e+000,
-1.5991031e+000,
-1.9568430e+000,
0.0000000e+000,
-1.3092479e+000,
-8.8969910e-001,
-1.0887363e+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,
};
}
CParticleSamplerShape $LOCAL$/CParticleSamplerShape_872530CC
{
SamplerName = "Sphere";
Shape = "$LOCAL$/CShapeDescriptor_DE113C5F";
}
CShapeDescriptor $LOCAL$/CShapeDescriptor_DE113C5F
{
ShapeType = CYLINDER;
}
CParticleSamplerProceduralTurbulence $LOCAL$/CParticleSamplerProceduralTurbulence_AF1925A6
{
SamplerName = "SpectrumSphereMap";
Strength = 9.7227180e-001;
Octaves = 1;
Lacunarity = 1.6413631e-001;
Gain = 4.0109801e-001;
Interpolator = Quintic;
TimeScale = 6.0000002e-001;
}
CParticleAttributeDeclaration $LOCAL$/CParticleAttributeDeclaration_6AA46272
{
AttributeName = "Attr_SpectrumCutoff";
AttributeDescription = "Particles below this intensity are killed\\nIf the particle is powerful enough, it will live.";
DefaultValueF4 = float4(1.0000000e-001, 0.0000000e+000, 0.0000000e+000, 0.0000000e+000);
HasMin = true;
HasMax = true;
MaxValueF4 = float4(1.0000000e+000, 0.0000000e+000, 0.0000000e+000, 0.0000000e+000);
}
CParticleAttributeDeclaration $LOCAL$/CParticleAttributeDeclaration_3154BA46
{
AttributeName = "OrbitalRadius";
DefaultValueF4 = float4(1.0000000e+000, 0.0000000e+000, 0.0000000e+000, 0.0000000e+000);
HasMin = true;
HasMax = true;
MinValueF4 = float4(1.0000000e+000, 0.0000000e+000, 0.0000000e+000, 0.0000000e+000);
MaxValueF4 = float4(5.0000000e+002, 1.0000000e+000, 1.0000000e+000, 1.0000000e+000);
MaxValueI4 = int4(10, 10, 10, 10);
}