Files
TG_ARPG/Content/AbsorbtionFX/FX/Emitters/NE_Haze.uasset

4496 lines
456 KiB
Plaintext
Raw Normal View History

2024-11-20 10:18:16 +08:00
<EFBFBD><EFBFBD>*<2A><><EFBFBD><EFBFBD><EFBFBD>`
<00><><EFBFBD><12>Ju<4A> <0C>|<7C>)<29>:8-<00>u<EFBFBD>)'F<><46>v<EFBFBD><10><><EFBFBD>,#<00>`<60>Od<4F><64><EFBFBD><16><><EFBFBD><EFBFBD> /"<22>T<EFBFBD><54>O&<26>F!<21>Ђ<EFBFBD>a+<00>2ذ O<><1F><>J<EFBFBD>6
?t<>πD<CF80>C<EFBFBD><14><>s %<00>h<EFBFBD><68><EFBFBD>B<EFBFBD><42> <0B>1<EFBFBD>A<EFBFBD>F.(<00>z<EFBFBD><7A><EFBFBD>BvPX橹2-<2D><>D<00><>None<00><00>!C06C255C47D52E2D9D5DA88E96556B53 <00>V<00><00>za/mS<><1B><1B><00><><00><1B><><EFBFBD><EFBFBD><EFBFBD>F<EFBFBD>J<EFBFBD><4A>U<EFBFBD><55> <09>br*@*<2A>O<EFBFBD><1B><0F>-T<00><00><18>++UE4+Release-4.27|<7C>++UE4+Release-4.278~Q <00><><00><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'/Game/AbsorbtionFX/FX/Emitters/NE_Hazeg<>54$/Game/AbsorbtionFX/Materials/M_Haze<00><>~<7E>5/Niagara/DynamicInputs/ValueFromCurve/FloatFromCurve<00>x<1F>0/Niagara/Enums/ENiagara_ColorInitializationModeX<>6<EFBFBD>,/Niagara/Enums/ENiagara_EmitterStateOptions<15>
-/Niagara/Enums/ENiagara_InfiniteLoopDurationE<><45>%/Niagara/Enums/ENiagara_LifetimeMode<00>v<EFBFBD><76>//Niagara/Enums/ENiagara_MassInitializationMode;<3B><><EFBFBD>3/Niagara/Enums/ENiagara_PositionInitializationMode<00> <0A><>&/Niagara/Enums/ENiagara_SizeScaleMode<00><><EFBFBD><EFBFBD>+/Niagara/Enums/ENiagara_SpriteRotationMode<00><<3C><>(/Niagara/Enums/ENiagara_SubUVLookupMode"<22><>'/Niagara/Enums/ENiagara_UVFlippingModeT5<54><35>*/Niagara/Enums/ENiagaraChannelCorrelation* <20><>,/Niagara/Enums/ENiagaraEmitterLifeCycleMode<00>o<>6/Niagara/Enums/ENiagaraEmitterScalabilityMode_Limited<00><>y<EFBFBD>%/Niagara/Enums/ENiagaraExpansionMode<00><><EFBFBD><EFBFBD>$/Niagara/Enums/ENiagaraInactiveMode<00><><EFBFBD><EFBFBD>,/Niagara/Enums/ENiagaraRandomnessEvaluation1&/Niagara/Enums/ENiagaraRandomnessModee<>n./Niagara/Enums/ENiagaraSphereDistributionMode7|<7C>5/Niagara/Enums/Ribbons/ENiagara_UnsetDirectSetRandomG<>&/Niagara/Modules/Emitter/EmitterStateka<6B><61>#/Niagara/Modules/Emitter/SpawnRate<00>lb0/Niagara/Modules/Solvers/SolveForcesAndVelocityd<>et</Niagara/Modules/Spawn/Initialization/V2/InitializeParticle<00>%?<3F>2/Niagara/Modules/Spawn/Location/V2/SphereLocation<00><19><>7/Niagara/Modules/Update/Forces/V2/PointAttractionForce׉Ҭ//Niagara/Modules/Update/Lifetime/ParticleState<00>ɾ&;/Niagara/Modules/Update/Material/DynamicMaterialParameters<00><><EFBFBD>40/Niagara/Modules/Update/SubUV/V2/SubUVAnimation<00>̣ /Script/CoreUObject<00>I->/Script/Engine<00>@<40>I/Script/Niagara<00>GZ`/Script/NiagaraEditor<00>p<EFBFBD>oAdd<00>(<28><>AdditionalDefines<1D><><EFBFBD>AdditionalVariables<00>{<7B>4 AdjustAlpha<00><><00>
AdjustHuey`<60>YAdjustSaturation<01><><EFBFBD> AdjustValueF<>?<3F>AdvancedPinDisplay~<17>Age<00><>c<EFBFBD>ArrayPropertyI<><49>iAssetImportData<00><>QTAttraction Strength<00> Attributes<00><><1D>AttributesWrittenK<>w<EFBFBD>BaseIdK<1D><>BaseScriptCompileHash<15>)<29>bBindingExistsOnSource<00>wv<77>bCanDieWhenEmitterDeactivates?<1F><> bDeprecated<00><>PbExperimentalu<1F><>bExposeToLibrary<00><>3 bFixedBounds RjobInterpolatedSpawnbInterpolatedSpawning<00><><EFBFBD>pbIsCompileTagGeneratorP^<19>bIsInfinitelyLived<00><>7<EFBFBD>bIsPlaceholder<00><>pbIsVisibleInVersionSelectortD<74><44>bMemberFunction<00> <20><> BoolProperty<04><>BoundPinNamesjT<6A>*bOverrideParameterDefinitionsDefaultValueս<>Box^7d<37>bPNGCompressed<00><>75bRequiresContext<00>?<3F>"bRequiresExecPin2<>*<2A>bRequiresPersistentIDs<00><1D>dbSoftDeprecatedFunctiong3<67><33>"bSubscribedToParameterDefinitions<00><0F>y bSuggestedI<14> bSupportsCPU <20>{ bSupportsGPU<00><><EFBFBD>@bUserSetEnabledState<00><><EFBFBD>HbUsesRapidIterationParams<00>³<EFBFBD>bWriteFunction<00>S<EFBFBD>Z ByteProperty<00>N-<2D>Bytes<00>h<EFBFBD><68>CachedChangeIde<><65>oCachedChangeIdHash<00><1A><>CachedDefaultDataInterfaces`_#/CachedScriptVM<00>':CachedScriptVMId<00><><EFBFBD>&CachedUsageInfo*ث!CallSortPriority<00><>ԥ Category<00>~<7E><> ChangeId<00>7T<37>Clamp VelocityV/<2F>"Classtwx<77>ClassStructOrEnum3g<14>CollapsedViewFormat
<EFBFBD>4<EFBFBD>Color Channel ModeH<><48>j Color Mode<00><><00>Color Randomness Modecÿ<63> CompileHash<00><>dCompileHashFromGraphv<>j<EFBFBD>CompilerVersionID]<5D><><EFBFBD> CompileTags \fCompressionNoAlpha<00><01><Constants.NE_Haze.DynamicMaterialParameters.Index 0 Param 2<00>:<3A><><Constants.NE_Haze.DynamicMaterialParameters.Index 0 Param 3'<27><><Constants.NE_Haze.DynamicMaterialParameters.Index 0 Param 4w1<77>*Constants.NE_Haze.EmitterState.Loop Delay<00>z<EFBFBD>C-Constants.NE_Haze.EmitterState.Loop Duration}h<><68>+Constants.NE_Haze.EmitterState.MaxDistance<00>4j<34>+Constants.NE_Haze.EmitterState.MinDistance<00><>5<EFBFBD>0Constants.NE_Haze.FloatFromCurve001.Scale Curve<00>)<29>n0Constants.NE_Haze.FloatFromCurve002.Scale CurveӢ<>j.Constants.NE_Haze.InitializeParticle.Lifetime<00><><EFBFBD><EFBFBD>5Constants.NE_Haze.InitializeParticle.Position Offset<00>X<EFBFBD>$?Constants.NE_Haze.InitializeParticle.Sprite Rotation Angle Max<1F><>-?Constants.NE_Haze.InitializeParticle.Sprite Rotation Angle Min<00>
.>9Constants.NE_Haze.InitializeParticle.Uniform Sprite Size<00><>Sk=Constants.NE_Haze.InitializeParticle.Uniform Sprite Size Max<00><><EFBFBD>=Constants.NE_Haze.InitializeParticle.Uniform Sprite Size MinEC<45><43>9Constants.NE_Haze.PointAttractionForce.Attraction Radius<00>j<EFBFBD>QAConstants.NE_Haze.PointAttractionForce.Attractor Position Offset <0B><>.8Constants.NE_Haze.PointAttractionForce.Falloff Exponent<00><>]<5D>3Constants.NE_Haze.PointAttractionForce.Kill Radius<00><>Q^HConstants.NE_Haze.PointAttractionForce.Kill Radius Overshoot Correction|{<7B><>;Constants.NE_Haze.PointAttractionForce.Position To Attractp<><70>]<Constants.NE_Haze.SolveForcesAndVelocity.Acceleration LimitF<><1E>5Constants.NE_Haze.SolveForcesAndVelocity.Speed Limit<04><>.Constants.NE_Haze.SpawnRate.Spawn Probability<00><02><>'Constants.NE_Haze.SpawnRate.SpawnGroup<00><><EFBFBD>=3Constants.NE_Haze.SphereLocation.Non Uniform Scale<00>]K$(Constants.NE_Haze.SphereLocation.Offset<00><><EFBFBD><EFBFBD>-Constants.NE_Haze.SphereLocation.Random Seedh
VC2Constants.NE_Haze.SphereLocation.Spawn Group Mask:<3A><>9Constants.NE_Haze.SphereLocation.Sphere Orientation Axis<00>wqG/Constants.NE_Haze.SphereLocation.Sphere Radius
<EFBFBD>S<EFBFBD>=Constants.NE_Haze.SphereLocation.Surface Only Band Thickness<00><>V\+Constants.NE_Haze.SubUVAnimation.End Frame<00><>U^-Constants.NE_Haze.SubUVAnimation.Start Frame<00><><EFBFBD>/2Constants.NE_Haze.SubUVAnimation.SubUV Loop Count<00><>!<21>ContextStageMaxIndex<15>b<EFBFBD>ContextStageMinIndex{-<2D>ConversionUtility<00>G<EFBFBD>y CurrentMode<00><><EFBFBD><EFBFBD>Curve<13>CustomSortingBinding<00><>7<EFBFBD> DataHash}Fe<46>DataInstance.Alive͌<><CD8C>DataInterface<00>\<5C><>DataInterfaceInfo<00><><EFBFBD><EFBFBD>
DebugName<00><><EFBFBD>L"Default__NiagaraEmitterEditorData<00>i<EFBFBD><69> DefaultCurve<00><><EFBFBD> DefaultModeR|DefaultValueVariant<00><>"<22>DefinitionsId A<>"DeprecationMessage<00><> <20>DeprecationRecommendation􄶕 Description*<2A> Dest<00>g<EFBFBD>K DIParamInfoy+#}DistanceTraveledL<>vDynamicAddPin<00>`eEDynamicMaterialBinding<00>2)DynamicMaterialParameter<00>`XDynamicMaterialParameters<13><>K*DynamicMaterialParameters.Index 0 Param 16<08><>"DynamicMaterialParameters_Emitter}<7D><>(DynamicMaterialParameters_Emitter_Func_OM<4F> EditorData<00>H<EFBFBD><48>EditorParameters<00><>Y<EFBFBD> Emitter.Agee<>)Emitter.CurrentLoopDelay
<EFBFBD>#<23>Emitter.CurrentLoopDuration<00><><EFBFBD><EFBFBD>Emitter.DistanceTraveledP<>Emitter.ExecutionStateR<><52>cEmitter.ExecutionStateSource3$#d%Emitter.FloatFromCurve001.FloatCurveY<><59><EFBFBD>%Emitter.FloatFromCurve002.FloatCurve)>קEmitter.LocalSpace<00><><EFBFBD><EFBFBD>Emitter.LoopCount d<> Emitter.LoopedAgeb<> <0B>Emitter.Module.SpawnOutputInfo<00>@Emitter.Module.SpawnRemainder<00><03>Emitter.NormalizedLoopAge$D~0%Emitter.Scalability.DistanceFractione<>3/EmitterSpawnScript<00>5<EFBFBD><35>EmitterSpawnScriptProps<00><>G<EFBFBD> EmitterStateZTg<54>EmitterUpdateScript]'<27>[EmitterUpdateScriptPropsEnable Distance CullingЕnEnable Visibility Culling<00><0E><>Engine.DeltaTime<00><>r?Engine.Emitter.NumParticlesN{{Engine.Emitter.SpawnCountScale7nX<6E>Engine.ExecutionCountx<>IEngine.InverseDeltaTime<00><><EFBFBD>p!Engine.Owner.LODDistanceFraction<>Engine.Owner.PositionU<11><>Engine.Owner.Scaley<>g<EFBFBD> Engine.Owner.SystemLocalToWorld<00>W<EFBFBD>g'Engine.Owner.SystemLocalToWorldNoScaleۍ\u Engine.Owner.SystemWorldToLocal]|z<>'Engine.Owner.SystemWorldToLocalNoScale<00> <0C><>Engine.Owner.Velocityp<><70><EFBFBD>!ENiagara_ColorInitializationMode<00><><14>ENiagara_EmitterStateOptionsWS<57>8ENiagara_InfiniteLoopDuration<00><><-ENiagara_LifetimeModep<><70>H ENiagara_MassInitializationModebP<62>$ENiagara_PositionInitializationMode<00><><EFBFBD><EFBFBD>ENiagara_SizeScaleMode<00><><EFBFBD><EFBFBD>ENiagara_SpriteRotationMode a<>?ENiagara_SubUVLookupMode<00>Z<19>ENiagara_UnsetDirectSetRandom6<><36><EFBFBD>ENiagara_UVFlippingMode<00><><EFBFBD><EFBFBD>ENiagaraChannelCorrelation|.=<3D>ENiagaraCoordinateSpace<00><00>ENiagaraDefaultMode?<3F>a,ENiagaraDefaultMode::FailIfPreviouslyNotSet<00><><EFBFBD><EFBFBD>ENiagaraEmitterLifeCycleModeƉ<><C689>'ENiagaraEmitterScalabilityMode_Limited<00>xq<78>ENiagaraExecutionStateL<>s<EFBFBD>ENiagaraExecutionStateSource$<24><> ENiagaraExpansionModeX<1B>~ENiagaraInactiveMode<00><>J 'ENiagaraNumericOutputTypeSelectionMode<00><>`k0ENiagaraNumericOutputTypeSelectionMode::Largest<00>RC<52>$ENiagaraPythonUpdateScriptReference<00><><EFBFBD><EFBFBD>*ENiagaraPythonUpdateScriptReference::NoneV<15><>ENiagaraRandomnessEvaluationspK<70>ENiagaraRandomnessMode <0C>hlENiagaraScriptCompileStatus<00><>;I*ENiagaraScriptCompileStatus::NCS_UpToDate<00>0<<3C> ENiagaraScriptLibraryVisibility<00><><EFBFBD>)ENiagaraScriptLibraryVisibility::Library<00>9<EFBFBD><39>ENiagaraScriptUsage<00> <0B>m(ENiagaraScriptUsage::EmitterSpawnScriptVz<56><7A>)ENiagaraScriptUsage::EmitterUpdateScript<00>ϵXENiagaraScriptUsage::Function<00>Қ9.ENiagaraScriptUsage::ParticleGPUComputeScript_<><5F>Z)ENiagaraScriptUsage::ParticleSpawnScript<00><1B>5ENiagaraScriptUsage::ParticleSpawnScriptInterpolated<00><><EFBFBD>*ENiagaraScriptUsage::ParticleUpdateScript<00><> lENiagaraSimTargetA<41><7F>!ENiagaraSimTarget::GPUComputeSim<00><>V.ENiagaraSphereDistributionMode<00>"<22>ENiagaraVariantMode<00>R_9ENiagaraVariantMode::Bytes<00><x<>ENodeAdvancedPinse<> !ENodeAdvancedPins::Hidden״g<D7B4>EnumVÅo EnumPropertyQם@ETextureSourceFormatw<>-Evaluation Type<00><><EFBFBD>tExperimentalMessage<00>U<EFBFBD>`ExposedVersion<00><><12> FilePath+<2B><>&Fixed Random Seed<00><0F> FixedBounds<00><><EFBFBD><EFBFBD> FloatCurvew<>NFloatFromCurve<07><>FloatFromCurve001.FloatCurveO<><4F><EFBFBD>FloatFromCurve001.Scale Curve.<2E>FloatFromCurve001_FloatCurve<00><>1FloatFromCurve002.FloatCurve?<1A><>FloatFromCurve002_FloatCurvep*<2A>FloatProperty<00><><EFBFBD><EFBFBD>Format9 <0A><> FriendlyName<03><> FullName{*<2A><FunctionDisplayName<00>?<3F>EFunctionScript݄FunctionSpecifiers_<><5F><EFBFBD>FunctionVersionQ<>kGPUComputeScript!<21><><EFBFBD>
GraphGuid<00><><EFBFBD>v GraphSource,VR9GuidCP<43>h Highlights.e<><65>IDt<><74><EFBFBD>Idt<><74>f ImportedSize] <0A>TInactive Response;C<><43>Index 0 Param 1.H<><48>InitializeParticle<00><14> InitializeParticle.Lifetime<00><><EFBFBD>9'InitializeParticle.Uniform Sprite Size
<EFBFBD><EFBFBD><EFBFBD>InitializeParticle_Emitter 7l>!InitializeParticle_Emitter_Func_<00> ɠInput|<7C><><EFBFBD>InputDescriptionss<10><> InputMap~<7E>]dInputs<00><><EFBFBD> IntPoint~uI
IntProperty<00><>6JKeysA=<3D> KeywordsC-N<>)Kill Particles When Lifetime Has ElapsedWkM<6B>Kill Within Radius<00><>VJLastBuiltTraversalDataChangeId<17>R<EFBFBD>LastCompileStatus<00><14><>LastGeneratedVMId<00><><EFBFBD>yLastHlslTranslationGPU<00><>7<EFBFBD>LibraryVisibilityQ<16>KLife Cycle Mode<00>M<EFBFBD><4D> Lifetime<00><><EFBFBD>\Lifetime Mode<00><>njLifetime Randomness Modeh<>o LightingGuid<><7F>ELimit Accelerationh<>#Local.Module.AttractedPosition<00>o<7F>Local.Module.AttractionForceV<>%<25>Local.Module.AttractorOrigin<00><><EFBFBD>GLocal.Module.DeltaTimeF<><46>~Local.Module.EndFrameL<>YD Local.Module.InitRIbbonDistance<00>[ <09>Local.Module.InterpStartDT<00><>s<EFBFBD>Local.Module.IntervalDTԹ$@Local.Module.IsWithinAttractorvQ<76><51>Local.Module.Mass\:g<>&Local.Module.NoActiveEmitterParticles<00>^<5E>)Local.Module.PhysicsForce<00><1C>ELocal.Module.PointOriginVecQ;<3B>z"Local.Module.PointOriginVecLength<00>P"Local.Module.PreviousEmitterStatea7{+Local.Module.SpawnCount<00><>l<EFBFBD>Local.Module.SpawnRate<00>}5CLocal.Module.SphereVector$<24><>uLocal.Module.StartFrame <09>\ Loop Behavior<00>[C}Loop Duration Mode{#K\LUTNumSamplesMinusOneCY<43><59>M_HazeŽ<>OMainL`1<> MajorVersion<00><1A><>MapMain:<05>D MapProperty5<><35><EFBFBD> MapSpawnMainɒ<>CMapUpdateMain<00><>,<2C>MaskSpawnGroup<00>shMass^<5E><>F
Mass Mode>d<>7Mass Randomness Mode<> Material<00><><EFBFBD>1MaterialRandom]<5D><>MaterialRandomBinding&<26>A<EFBFBD>MergeId'S<>$Mesh Renderer Array Visibility Modez<><1F>Mesh Scale Mode߉<>nMesh Scale Randomness Mode<00><>A MetaData<> Metadata<00><><EFBFBD><EFBFBD> MinorVersion<00><> IMisc<00> <0B>gModule.Acceleration Limit<00>smGModule.Attraction Radius<00>:S7Module.Attractor Position<00>G<EFBFBD>!Module.Attractor Position Offset<00>Ʃ[Module.CurveIndex <0C><>\Module.DeltaTimed<18>Module.End Frame<18><>iModule.Falloff Exponent<00>tn<74> Module.Force<0E>vModule.Hemisphere X<00><>n<EFBFBD>Module.Hemisphere Y<01> <0B>Module.Hemisphere Z؟<>TModule.Index 0 Param 2Wj+Module.Index 0 Param 3<00>wvLModule.Index 0 Param 4<00>'<27>tModule.Kill Radius<00>yModule.Lifetime<00><><EFBFBD>Module.Loop Delayp<><70>*Module.Loop Duration<00>><3E><> Module.Mass">',Module.Material Random_n<5F>MModule.Non Uniform ScaleLlW<6C>Module.Normalize Thickness<00><>HHModule.Offset6<>+<2B>Module.Offset Coordinate Space<00><><EFBFBD><EFBFBD>Module.Param0WriteEnabled<00>-~<7E>Module.Param1WriteEnabled/<2F>sModule.Param2WriteEnabled6&dModule.Param3WriteEnabled¦i<C2A6>Module.Position<00>5<EFBFBD>`Module.Position Offsetq<>(Module.Position Offset Coordinate Space<16>ܖModule.Position To Attracte<><65>jModule.PreviousVelocity<00>i<EFBFBD>Module.Random Seed[:<3A>&Module.Recalculate Duration Each Loop<00>.;<3B>Module.Scale Curve<00> <0B><>Module.Spawn Group Mask<00><01><>Module.Spawn ProbabilityB<>$JModule.SpawnGroup<00><>@<40>Module.Speed Limit<00><>0CModule.Sphere Coordinate SpaceL<>XModule.Sphere Orientation Axis<00><><EFBFBD><EFBFBD>Module.Sphere Origing<>zU!Module.Sprite Rotation Angle MaxzY<7A><59>!Module.Sprite Rotation Angle Min<00><>o<EFBFBD>Module.Start Frame<00><>H3#Module.Surface Only Band ThicknessMr<>Module.Use Falloff<00><><EFBFBD><EFBFBD>Module.Velocity<00>̦%Module.Write to Intrinsic PropertiesI
(ModuleUsageBitmaskl4]?Name98<> NameProperty<00><>JNE_HazeeakoNE_Haze.DistanceTraveled2J<>%NE_Haze.FloatFromCurve001.FloatCurve`<0E>H%NE_Haze.FloatFromCurve002.FloatCurve<10><>}NE_Haze.InterpSpawnStartDt<00><12>`NE_Haze.SpawnGroup<1D><0E>NE_Haze.SpawnInterval<00><><EFBFBD><EFBFBD>NE_Haze.SpawnRate<00><><EFBFBD>NE_Haze.Sprite Rotation Mode<0F>{NE_Haze.Sprite Size Mode<00><>RsNE_Haze.Sprite UV Mode<00>]<5D>%NE_Haze.SubUV Animation Mode<>NiagaraAssetVersion<1B><>M NiagaraBool֛DNiagaraCompileHash<00>~o<>NiagaraCompilerTag<00><><EFBFBD>tNiagaraDataInterfaceCurve<00><>u:!NiagaraDataInterfaceGPUParamInfo'<27>xNiagaraEditorParametersAdapter6<>NiagaraEmitter<00><><EFBFBD><EFBFBD>NiagaraEmitterEditorData<00>%0<>NiagaraEmitterScriptProperties<00><>b<EFBFBD> NiagaraFloat5<><35>YNiagaraFunctionSignature<00>)<1F> NiagaraGraphy7<>NiagaraGraphScriptUsageInfoy<>9
NiagaraID<00><1C>g NiagaraInt32Ĺ"<22>NiagaraMatrixƌ}<7D>NiagaraModuleDependency<00>r#<23>NiagaraNodeFunctionCall<00>JNiagaraNodeInput<00><07><>NiagaraNodeOutput'<27><><EFBFBD>NiagaraNodeParameterMapGet<10>FNiagaraNodeParameterMapSetTm<54><6D>NiagaraParameterMap<00><><EFBFBD>(NiagaraParameters<00><><EFBFBD><EFBFBD>NiagaraParameterStoreQ<>NiagaraPlatformSetʟo
NiagaraScript<00><><EFBFBD>&NiagaraScriptDataInterfaceCompileInfoƐ<>NiagaraScriptDataInterfaceInfo<00><>@NiagaraScriptHighlights<>WXNiagaraScriptSourceP[-NiagaraScriptVariable<00>T<EFBFBD><54>NiagaraSpawnInfoQ<><51><EFBFBD> NiagaraSpriteRendererProperties<00><>sNiagaraStackEditorData_<>G<EFBFBD>NiagaraStatScope<00><><EFBFBD><EFBFBD>NiagaraTypeDefinition<00><><EFBFBD>8NiagaraVariablej<>' NiagaraVariableAttributeBinding L<>DNiagaraVariableBase<00>=<3D>/NiagaraVariableMetaData<00><>9cNiagaraVariableWithOffsetq<><71><EFBFBD>NiagaraVarianty<>vNiagaraVMExecutableData<00><><EFBFBD>NiagaraVMExecutableDataId<00>Ź<EFBFBD>
NodeGraphT<16> NodeGuidѬ<04> NodePosX<00>[<5B> NodePosYrF<72>eNodes<00><><EFBFBD>lNone<00><03> NormalizedAgef<08>oNormalizedAgeBinding<00> NoteMessageU<>ͿNumericOutputTypeSelectionModek<>NumMips<00>*<2A><>
NumSlices0.<2E>ObjectProperty<41>Out<00><05>FOutput.Module.FirstFrame<00><>"Output.Module.HasSpawnedThisFrameNt<4E><74>"Output.Module.IncomingPhysicsDragK9._#Output.Module.IncomingPhysicsForce<17>ɫOutput.Module.PositionF<><46><EFBFBD>Output.Module.SphereNormal<00>!<21><>Output.Module.SphereVectorn<><6E>XOutput.Module.VelocitycK<63><4B>OutputDescriptions_8^<5E>
OutputMap9<><39>Outputs<03><1C>Override Seed<00>'T
OwnerNameLB<4C>PackagesG<73>PackageLocalizationNamespacety<74>PackageMetaData<00>,<2C>eParameterData|p<>
!ParameterDefinitionsSubscriptionDP<44><50>"ParameterDefinitionsSubscriptions%'Z>ParameterGuidMapping<00><><EFBFBD><EFBFBD> ParameterPin<00><>OK Parameters/<2F>,Particles.AgeP<><50><EFBFBD>Particles.DistanceTraveled%<25>J<EFBFBD>#Particles.DynamicMaterialParameter@2<>Particles.LifetimePnw<6E>Particles.MassI<>b<EFBFBD>Particles.MaterialRandomr<13><>Particles.NormalizedAgeΑ<>Particles.Position8<>|<7C> Particles.Presolve.PhysicsForce<00> j?Particles.Presolve.Positionm<><6D><EFBFBD>Particles.Presolve.VelocityH
<EFBFBD><EFBFBD> Particles.Previous.CameraOffset1Y<31><59>Particles.Previous.PivotOffset<00>i<EFBFBD><69>Particles.Previous.Position<00>><3E>#Particles.Previous.SpriteAlignment<00><><EFBFBD><EFBFBD> Particles.Previous.SpriteFacing<00>cy"Particles.Previous.SpriteRotation<00>|<7C>WParticles.Previous.SpriteSize<00><>h<EFBFBD>Particles.Previous.Velocity<00><>B<EFBFBD>Particles.RibbonUVDistance0d<>Particles.SpriteRotatione<><65><EFBFBD>Particles.SpriteSizeT<>[Particles.SubImageIndexV6Particles.UVScale<00><<3C><>Particles.Velocity^<00>ParticleState<00><><EFBFBD>ParticleState_Emitter<00><>u<EFBFBD>ParticleState_Emitter_Func_/<2F>'5"PinOutputToPinDefaultPersistentId<00>1<EFBFBD><31>
PlatformsXJ%<25>PointAttractionForce<00><>*<2A>)PointAttractionForce.Attraction Strength <0B>2'PointAttractionForce_Emitter<00><>?<3F>#PointAttractionForce_Emitter_Func_ <20><><EFBFBD> Position<00>3<EFBFBD>+Position Mode <0B>)=PositionBinding<00><><EFBFBD> Presolve.PhysicsForce)3;&Presolve.Position胜CPresolve.Velocity<00>z<EFBFBD>+Previous.Position"nTPrevious.SpriteRotation <09>! Previous.SpriteSize<00>$RPrevious.Velocity<07>(fProvidedDependenciesX<>N<EFBFBD>PythonUpdateScript<00><07>QualityLevelMask<00><10><>Randomness Mode<00>D<EFBFBD><44>RapidIterationParameters~G1[ReferencedCompileHashes<00>J<EFBFBD>bRegisteredFunctions<00>ҡ<EFBFBD>RegisteredParameterMapRead<00><><EFBFBD> RegisteredParameterMapWritel:<3A>RendererProperties<00> <09><>RequiredDependencies<00><><1E>RibbonUVDistanceYXr
RichCurve<00><><EFBFBD>u RichCurveKey<00><><02> SampleCurve<00><>:{Scalability Mode!<21>/<2F> Scale Curvez<><7A><EFBFBD>Scale Spawn Count!<21>B<EFBFBD>ScaleSpawnCountCurve W <20>Script<19><>= ScriptAssetlv<6C>tScriptMetaData+<2B><>} ScriptStructK<15><> ScriptType<00><>c'ScriptUsageType<<3C><><EFBFBD>ScriptUsageTypeID<00><>]uScriptVersionID<05><>
ShaderLUTG<><47><EFBFBD>
SimTarget<00><> &SizeXȑ*<2A>SizeY<>O<EFBFBD>SolveForcesAndVelocity 3<><33>SolveForcesAndVelocity_Emitter<00>0F%SolveForcesAndVelocity_Emitter_Func_<00>Ӎ<EFBFBD>SortedParameterOffsets<00><>lSourceV9<56><39>
SpawnRate<00>*#<23>SpawnRate.SpawnRate<> SpawnScript$<24>s<EFBFBD>SpawnScript_Mainj<><6A>sSpawnScript_MapSpawnMainP<><50>?SpawnScript_MapUpdateMainyPSpawnScriptProps<00>`WSphere Distribution@<40>{Sphere Radius\<5C><> SphereLocation<00>c<EFBFBD>?SphereLocation.Sphere Radius<00>w&SphereLocation.Surface Expansion Mode<00>a<EFBFBD>ASphereLocation_Emitter<00>:ySphereLocation_Emitter_Func_4<><34><EFBFBD>Sprite Rotation ModeF}<7D> Sprite Rotation Randomness Mode<16><><EFBFBD>Sprite Size Mode<00>fn<66>Sprite Size Randomness Modeo_ͬSprite UV Mode<00><1E>Sprite UV Randomness Mode<00>Ő|SpriteRotationJ_<4A>SpriteRotationBinding<00><10><> SpriteSizer<>9SpriteSizeBindingJB<4A><42>StackEditorData<00><>v<EFBFBD> StatScopesD<>v StringValue]<5D>G StrProperty;<3B>r$StructProperty0<00><>SubImageIndex<00><> CSubImageIndexBinding<00>D SubImageSizeU<><55>SubUV Animation Mode4<>SubUVAnimation<00><><EFBFBD>wSubUVAnimation_Emitter=<3D> <0B>SubUVAnimation_Emitter_Func_2<12><>Surface Expansion Mode<00><><EFBFBD><EFBFBD> Surface Only<00><><EFBFBD><EFBFBD> System.Age>|<7C><>System.bCompleteOnInactive<00>J<EFBFBD>OSystem.CurrentLoopDelay<00>3i<33>System.CurrentLoopDurationi<12>mSystem.ExecutionState`<60><><EFBFBD>System.ExecutionStateSource<07><>LSystem.LoopCount^ǒJSystem.LoopedAge0|[<5B>System.NormalizedLoopAgeԛ<><D49B> TextProperty<00>:t<>
Texture2D<00><>@<40>TextureSourceH'<>ThumbnailImageY̛*Transient.FirstFrame&9<><39>Transient.PhysicsDeltaTime<00>m)?Transient.PhysicsDragޜ<> Transient.PhysicsForceG<>S<EFBFBD>+Transient.ScalabilityEmitterExecutionState-loR,Transient.ScalabilityEmitterSpawnCountScale<1B>3<EFBFBD> Transient.SpawningbCanEverSpawn<00>ReP
Traversal<00><><EFBFBD>5
TSF_BGRA8<06><>Type<00>Fr<46>UInt16Property<00>O`0UInt32Property<00>,8JUnderlyingType<00>
<EFBFBD>Uniform Sprite SizeM<>aUniqueEmitterName-<2D>ڠ UniqueID<00>k<EFBFBD><6B> UpdateScript<00><>-XUpdateScript_Main<00><>MUpdateScript_MapMain9<><39><EFBFBD>UpdateScriptExecution<00>4<EFBFBD><34>UpdateScriptProps9<04>iUsage<00><><EFBFBD><EFBFBD>UsageId<00><><EFBFBD>&
UsageTypes`9zUse Spawn Probabilityn<>FWUseAttractorOffset<03>n<EFBFBD> UseLoopDelay<10><><EFBFBD>UseNonUniformScale<00><><EFBFBD><EFBFBD>
UseOffset<00><><17>UsePositionOffsetk4<6B><34>User.Haze Attraction~<7E>E<EFBFBD>User.Haze Lifetime<00><>_EUser.Haze Radius<00><11><>User.Haze Size<00><>n<EFBFBD>User.Haze SpawnRate?<3F>UserDefinedEnum<00>*<2A>N UserPtrIdx<00><>8 UseSphereOrientation<00><><EFBFBD>%UVScale<00>"<22><>UVScaleBinding<00>"<22><>Value<00>01<30> Variable<00><>rx VariableGuid<00><>~<7E>VariableToScriptVariableD`<60><>Vector<00>d Vector2DU0l Vector4쾫X Velocity<00><><EFBFBD>CVelocityBinding<37>Version|<7C>a^VersionChangeDescriptionA<><41> VersionData<00><14><>VersionedNiagaraScriptData<17><><EFBFBD> VersionGuid<00> 8{Wrap Index By Mesh County` Write Material Random<00>O<EFBFBD> Write Parameter Index 0<00>%<25>Write Parameter Index 1b@<40>Write Parameter Index 2<00>$<24>+Write Parameter Index 3 9<>LWrite to Intrinsic Variables<00>tIWrite to Presolve Properties<00> hzX<00>FQ<46>'The lifetime of a particle in seconds.!88FAD3CF4942E69C61C64D979120A8EE<00>/Game/AbsorbtionFX/FX/Emitters/NE_Haze.NE_Haze:NiagaraScriptSource_0.NiagaraGraph_0.NiagaraScriptVariable_39.Metadata.Description!88FAD3CF4942E69C61C64D979120A8EE<00>/Game/AbsorbtionFX/FX/Emitters/NE_Haze.NE_Haze:NiagaraScriptSource_0.NiagaraGraph_0.NiagaraScriptVariable_39.Metadata.DescriptiontUsed to drive the Particle Random node in the Material Editor. Without this set, any Particle Randoms will get 0.0.!2B154E2F42B135FFBAB5AFAC92F9B995<00>/Game/AbsorbtionFX/FX/Emitters/NE_Haze.NE_Haze:NiagaraScriptSource_0.NiagaraGraph_0.NiagaraScriptVariable_12.Metadata.Description!2B154E2F42B135FFBAB5AFAC92F9B995<00>/Game/AbsorbtionFX/FX/Emitters/NE_Haze.NE_Haze:NiagaraScriptSource_0.NiagaraGraph_0.NiagaraScriptVariable_12.Metadata.Description<00>Mass is factored into the Solver Calculations (Solve Forces and Solve Rotational Forces) where forces are converted into a final velocity. The more massive a particle, the more force is required to move it. !1F09338F4D35C76074A719BBC6110181<00>/Game/AbsorbtionFX/FX/Emitters/NE_Haze.NE_Haze:NiagaraScriptSource_0.NiagaraGraph_0.NiagaraScriptVariable_9.Metadata.Description!1F09338F4D35C76074A719BBC6110181<00>/Game/AbsorbtionFX/FX/Emitters/NE_Haze.NE_Haze:NiagaraScriptSource_0.NiagaraGraph_0.NiagaraScriptVariable_9.Metadata.DescriptionThe position of the particle.!A0BFD936491FC0E8C483CEB1D3126471<00>/Game/AbsorbtionFX/FX/Emitters/NE_Haze.NE_Haze:NiagaraScriptSource_0.NiagaraGraph_0.NiagaraScriptVariable_14.Metadata.Description!A0BFD936491FC0E8C483CEB1D3126471<00>/Game/AbsorbtionFX/FX/Emitters/NE_Haze.NE_Haze:NiagaraScriptSource_0.NiagaraGraph_0.NiagaraScriptVariable_14.Metadata.DescriptioniThe age in seconds divided by lifetime in seconds. Useful for animation as the value is between 0 and 1.!AAF8B08F46862195289405B0BD5759BA<00>/Game/AbsorbtionFX/FX/Emitters/NE_Haze.NE_Haze:NiagaraScriptSource_0.NiagaraGraph_0.NiagaraScriptVariable_84.Metadata.Description!AAF8B08F46862195289405B0BD5759BA<00>/Game/AbsorbtionFX/FX/Emitters/NE_Haze.NE_Haze:NiagaraScriptSource_0.NiagaraGraph_0.NiagaraScriptVariable_84.Metadata.Description6Distance from start of ribbon that the particle lies.!95E42096417D9BBE19135DA61216E678<00>/Game/AbsorbtionFX/FX/Emitters/NE_Haze.NE_Haze:NiagaraScriptSource_0.NiagaraGraph_0.NiagaraScriptVariable_5.Metadata.Description!95E42096417D9BBE19135DA61216E678<00>/Game/AbsorbtionFX/FX/Emitters/NE_Haze.NE_Haze:NiagaraScriptSource_0.NiagaraGraph_0.NiagaraScriptVariable_5.Metadata.Description&The velocity in cm/s of the particle.!41AF3FCB4EC2369F0BF21AB5FD536D62<00>/Game/AbsorbtionFX/FX/Emitters/NE_Haze.NE_Haze:NiagaraScriptSource_0.NiagaraGraph_0.NiagaraScriptVariable_90.Metadata.Description!41AF3FCB4EC2369F0BF21AB5FD536D62<00>/Game/AbsorbtionFX/FX/Emitters/NE_Haze.NE_Haze:NiagaraScriptSource
<00><00> <00><00> <00><00> <00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00> <00><00>!<00><00>"<00>9<00><><EFBFBD><EFBFBD><EFBFBD><00>9<00><><EFBFBD><EFBFBD><EFBFBD><00>9<00><><EFBFBD><EFBFBD><EFBFBD><00>9<00><><EFBFBD><EFBFBD><EFBFBD><00>9<00><><EFBFBD><EFBFBD><EFBFBD><00>9<00><><EFBFBD><EFBFBD><EFBFBD><00>9<00><><EFBFBD><EFBFBD><EFBFBD><00>9<00><><EFBFBD><EFBFBD><EFBFBD><00>9<00><><EFBFBD><EFBFBD><EFBFBD><00>9<00><><EFBFBD><EFBFBD><EFBFBD><00> <00><00><><EFBFBD><EFBFBD><EFBFBD><00> <00><00><><EFBFBD><EFBFBD><EFBFBD><00> <00><00><><EFBFBD><EFBFBD><EFBFBD><00> <00><00><><EFBFBD><EFBFBD><EFBFBD><00> <00><00><><EFBFBD><EFBFBD><EFBFBD><00> <00><00><><EFBFBD><EFBFBD><EFBFBD><00> <00><00><><EFBFBD><EFBFBD><EFBFBD><00> <00><00><><EFBFBD><EFBFBD><EFBFBD><00> <00><00><><EFBFBD><EFBFBD><EFBFBD><00> <00><00><><EFBFBD><EFBFBD><EFBFBD><00> <00><00><><EFBFBD><EFBFBD><EFBFBD><00> <00><00><><EFBFBD><EFBFBD><EFBFBD><00> <00><00><><EFBFBD><EFBFBD><EFBFBD><00> <00><00><><EFBFBD><EFBFBD><EFBFBD><00> <00><00><><EFBFBD><EFBFBD><EFBFBD><00> <00><00><><EFBFBD><EFBFBD><EFBFBD><00> <00><00><><EFBFBD><EFBFBD><EFBFBD><00> <00><00><><EFBFBD><EFBFBD><EFBFBD><00> <00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><><EFBFBD><EFBFBD><00>-<00><><00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD><00>A <0B><00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD>0<00><00> HL<><00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD>0<00><00> <00><00><><00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD>
 <00>B<><00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD> H<00><><00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD>2<00> H8<><00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD>2<00> <00><00><><00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD>
<00> .<2E><00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD><00> :<3A><00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD>
<00>)K<><00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD>3<00>_;t<><00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD> <00>q<00>/<00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD> <00><00>DF<00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD> <00> /J<00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD> <00> aIN<00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD> <00><00>R<00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD> <00><00>W<00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD> <00><00> <00>[<00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD> <00><00>
<00>g<00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD> <00><00><00>r<00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD> <00>Knw<00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD> <00>Y<00>|<00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD> <00>W<12><00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD> <00>Wi<><00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD> <00><00><><00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD> <00><00><><00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD> <00>Mߋ<00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD> <00>,<2C><00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD> <00>1I<><00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD> <00>Nz<><00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD> <00>OȔ<00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD> <00>N<17><00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD> <00><00>e<><00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD> <00><00>F<><00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD> <00><00><1D><00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD> <00><00><00><><00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD> <00><00>׬<00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD> <00><00>Ա<00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD> <00><00><><00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD> <00><00><><00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD> <00>þ<00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD> <00>
<00><><00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD> <00><00><><00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD> <00> <00><00><><00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD>
<00> <00><><00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD>
<00>d <00><><00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD>
\<5C>3<><00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD>
Iҋ<00><><00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD>
<00><00><>a#<00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD>
<00>)X<><00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD> <00><00><00><><00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD> <00><00>d<><00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD> <00> <00>7<><00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD> <00>e<00>
<EFBFBD><00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD> <00>f<00><00><><00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD> <00>g<00><00><><00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD> <00>h<00><00><><00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD> <00>i<00>f<><00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD> <00>j<00>9<00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD> <00>k<00><00><00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD> <00>l<00><00><00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD> <00>mms<00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD> <00>n<00><00><00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD> <00> <00><00>
<00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD> <00>o<00><00> <00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD> <00>p<00>Y<00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD> <00>q<00>,<00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD> <00>r<00><00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD> <00>s<00>~<00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD> <00>t<00>Q<00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD> <00>uD$<00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD> <00>v<00>h<00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD> <00>w<00>;<00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD> <00>x<00><00><00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD> <00> <00><00><00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD> <00>y<00>_"<00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD> <00>z<00>2$<00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD> <00>{<00>&<00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD> <00>|<00><00>'<00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD> <00>}<00><00>)<00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD> <00>~<00>~+<00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD> <00><00>Q-<00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD> <00><00><00>$/<00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD> <00><00><00><00>0<00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD> <00><00><00><00>2<00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD> <00><00><00>4<00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD> <00><00><00><00>6<00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD> <00><00><00>c8<00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD> <00><00><00>6:<00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD> <00><00><00><<00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD> <00><00><00><00>=<00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD> <00><00><00><00>?<00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD> <00><00><00><00>A<00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD> <00><00><00><00>C<00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD> <00><00><00>xE<00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD> <00><00><00>[G<00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD> <00><00>>I<00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD> <00><00><00><00>K<00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD> <00><00><00><00>M<00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD> <00><00><00>eO<00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD> <00><00><00>HQ<00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD> <00><00><00>+S<00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD> <00><00><00><00>T
#<00><00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD> <00>[o<00><00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD> <00>\<00>n<00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD> <00>]<00>A<00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD> <00>^<00>
<00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD> <00>_<00><00> <00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD> <00>`<00><00> <00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD> <00>a<00><00><00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD> <00>b<00><00><00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD> <00>c<00>c<00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD> <00>d<00>F<00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD>
<00><00><00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD> _ <00><00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD>
w
<00><><EFBFBD><EFBFBD>
21./3<00> <00>0<00><00>",#$- %' &+*)(!<00><00><00><00><00><00><00><00>~}|zyxm<00><00><00>WL<00>b<00><00><00><00><00><00><00><00><00><00>rsv<00><00>tuw{<00>45<00><00>o6A<00><00><00><00><00><00><00><00><00><00>ln<00><><EFBFBD><EFBFBD><EFBFBD><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00>789:;QTUVXYZ[\]^_`acdefghijkpq<00><00><00><00><=>?@BCDEFGHIJKMNOPRS<00><><EFBFBD><EFBFBD> -<00><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD>+&<00><><EFBFBD><EFBFBD>)(<00><><EFBFBD><EFBFBD>+*<00><><EFBFBD><EFBFBD> <00><><EFBFBD><EFBFBD>'%<00><><EFBFBD><EFBFBD>,<00><><EFBFBD><EFBFBD>'<00><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
<00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,"<00><><EFBFBD><EFBFBD>*<00><><EFBFBD><EFBFBD>)<00><><EFBFBD><EFBFBD>(!)+-#$ !",#-$-%'&+'<00><><EFBFBD><EFBFBD>%())(*++&*,"-#$ 33333 <00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><00><00>PNG

IHDR\r<>fPIDATx<01><><EFBFBD> <03><><EFBFBD>;<0F>8#1@<40>*kf<6B><66>A<><1D>,2_<>8a._t<06>  <18>p<EFBFBD><70>0n<>@X<><00><><17><>p<04> \<5C><> <0C> 0<00><>E'`<00><00><><EFBFBD><08>/:<03><08> @<40>|<7C> 7@ ,`<00><><EFBFBD>N<EFBFBD><00>a._t<06>  <18>p<EFBFBD><70>0n<>@X<><00><><17><>p<04> \<5C><> <0C> 0<00><>E'`<00><00><><EFBFBD><08>/:<03><08> @<40>|<7C> 7@ ,`<00><><EFBFBD>N<EFBFBD><00>a._t<06>  <18>p<EFBFBD><70>0n<>@X<><00><><17><>p<04> \<5C><> <0C> 0<00><>E'`<00><00><><EFBFBD><08>/:<03><08> @<40>|<7C> 7@ ,`<00><><EFBFBD>N<EFBFBD><00>a._t<06>  <18>p<EFBFBD><70>0n<>@X<><00><><17><>p<04> \<5C><> <0C> 0<00><>E'`<00><00><><EFBFBD><08>/:<03><08> @<40>|<7C> 7@ ,`<00><><EFBFBD>N<EFBFBD><00>a._t<06>  <18>p<EFBFBD><70>0n<>@X<><00><><17><>p<04> \<5C><> <0C> 0<00><>E'`<00><00><><EFBFBD><08>/:<03><08> @<40>|<7C> 7@ ,`<00><><EFBFBD>N<EFBFBD><00>a._t<06>  <18>p<EFBFBD><70>0n<>@X<><00><><17><>p<04> \<5C><> <0C> 0<00><>E'`<00><00><><EFBFBD><08>/:<03><08> @<40>|<7C> 7@ ,`<00><><EFBFBD>N<EFBFBD><00>a._t<06>  <18>p<EFBFBD><70>0n<>@X<><00><><17><>p<04> \<5C><> <0C> 0<00><>E'`<00><00><><EFBFBD><08>/:<03><08> @<40>|<7C> 7@ ,`<00><><EFBFBD>N<EFBFBD><00>a._t<06>  <18>p<EFBFBD><70>0n<>@X<><00><><17><>p<04> \<5C><> <0C> 0<00><>E'`<00><00><><EFBFBD><08>/:<03><08> @<40>|<7C> 7@ ,`<00><><EFBFBD>N<EFBFBD><00>a._t<06>  <18>p<EFBFBD><70>0n<>@X<><00><><17><>p<04> \<5C><> <0C> 0<00><>E'`<00><00><><EFBFBD><08>/:<03><08> @<40>|<7C> 7@ ,`<00><><EFBFBD>N<EFBFBD><00>a._t<06>  <18>p<EFBFBD><70>0n<>@X<><00><><17><>p<04> \<5C><> <0C> 0<00><>E'`<00><00><><EFBFBD><08>/:<03><08> @<40>|<7C> 7@ ,`<00><><EFBFBD>N<EFBFBD><00>a._t<06>  <18>p<EFBFBD><70>0n<>@X<><00><><17><>p<04> \<5C><> <0C> 0<00><>E'`<00><00><><EFBFBD><08>/:<03><08> @<40>|<7C> 7@ ,`<00><><EFBFBD>N<EFBFBD><00>a._t<06>  <18>p<EFBFBD><70>0n<>@X<><00><><17><>p<04> \<5C><> <0C> 0<00><>E'`<00><00><><EFBFBD><08>/:<03><08> @<40>|<7C> 7@ ,`<00><><EFBFBD>N<EFBFBD><00>a._t<06>  <18>p<EFBFBD><70>0n<>@X<><00><><17><>p<04> \<5C><> <0C> 0<00><>E'`<00><00><><EFBFBD><08>/:<03><08> @<40>|<7C> 7@ ,`<00><><EFBFBD>N<EFBFBD><00>a._t<06>  <18>p<EFBFBD><70>0n<>@X<><00><><17><>p<04> \<5C><> <0C> 0<00><>E'`<00><00><><EFBFBD><08>/:<03><08> @<40>|<7C> 7@ ,`<00><><EFBFBD>N<EFBFBD><00>a._t<06>  <18>p<EFBFBD><70>0n<>@X<><00><><17><>p<04> \<5C><> <0C> 0<00><>E'`<00><00><><EFBFBD><08>/:<03><08> @<40>|<7C> 7@ ,`<00><><EFBFBD>N<EFBFBD><00>a._t<06>  <18>p<EFBFBD><70>0n<>@X<><00><><17><>p<04> \<5C><> <0C> 0<00><>E'`<00><00><><EFBFBD><08>/:<03><08> @<40>|<7C> \t"<02><><EFBFBD>%oIEND<4E>B`<60>NiagaraEmitterNE_Haze<1F><00><>NE_HazeNiagaraEmitterHasGPUEmitterTrueFixedBoundsSize800.00ActiveRenderers1 LowEmitters1MediumEmitters1 HighEmitters1 EpicEmitters1CinematicEmitters1
ActiveDIs1SpriteRenderer1
CurveBase1Curve1TemplateSpecificationNonebExposeToLibraryTrueTemplateAssetDescription CategoryENSLOCTEXT("", "F4752BEF4026A232736BFE96D40C8884", "Engine Provided")a[]<00><00><00>!C06C255C47D52E2D9D5DA88E96556B53<00>c<00>/(,kc(c60<00>?<00>?HB<00>>,<00> }<00>?<3F><><EFBFBD>?J)<29>?<3F><> @J)%@<40>s>@<40><>W@Bq@J)<29>@tΑ@<40>s<EFBFBD>@<40><18>@キ@c<>@B<08>@k<><6B>@<40>R<EFBFBD>@<40><><EFBFBD>@t<>A!A<>sA1<41>A<>A[k!A<><41>'A<>.Ac4A<34><41>:ABAA<41>ZGAk<41>MATA<54>RZA(<28>`A<><41>fASJmA<6D><41>sA{<7B>yA!<21>ARJ<52>A<EFBFBD>s<EFBFBD>A眉A1ƌA|<7C><>A<EFBFBD><18>AB<>A[k<>A<EFBFBD><41><EFBFBD>A⦅A9<41><39>A<EFBFBD><10>A<EFBFBD>9<EFBFBD>Ac<>Ac<41><63>A<EFBFBD><41><EFBFBD>A<EFBFBD>޵AB<08>A<EFBFBD>1<EFBFBD>A<EFBFBD>Z<EFBFBD>A!<21><>Ak<41><6B>A<EFBFBD><41><EFBFBD>A<00>AJ)<29>A<EFBFBD>R<EFBFBD>A<EFBFBD>{<7B>A(<28><>As<41><73>A<EFBFBD><41><EFBFBD>A!<21>ASJ<53>A<EFBFBD>s<EFBFBD>A<EFBFBD><41><EFBFBD>A1<41><31>A{<7B><>A<EFBFBD><18>AB<>A[k<>A<EFBFBD><41><EFBFBD>A<EFBFBD><41>B<>sBBB<><42>B<>1B1<42>B<>Z
B|<7C> B!<21> B<>Bk<42>BBB<><42>B[kBB<><42>BJ)B<><42>B<>RB9<42>B<>{ B<>"B)<29>#B<>9%Bs<42>&Bc(B<><42>)Bc<42>+B!-B<><42>.BSJ0B<30><42>1B<31>s3BB5B<35><42>6B<36>18B1<42>9B<39>Z;B|<7C><B!<21>>B<>@Bk<42>ABBCB<43><42>DBZkFBHBL <00>B[c<00><> <09>lζN<CEB6>o<EFBFBD>5`<60><><EFBFBD><EFBFBD><00>c<00>/(,<00>c(cl0<00>?S%<25>S%<25><00><><EFBFBD>>33s?9<> <0B>9<> <0B><00><><EFBFBD>>33s?P<><50>>P<><50>><00>?<00>?5τ<5τ<<00>>,(  <00>?aP?i<>x?f<>q?ۍx?/<2F>|?߼~?<3F><>?<00>?L A[c<00><>j<EFBFBD><6A>͙B<CD99>K<EFBFBD><4B>JI:;<3B><00>c<00>/(,<00>c(cl0<00>?S%<25>S%<25><00><><EFBFBD>>33s?9<> <0B>9<> <0B><00><><EFBFBD>>33s?P<><50>>P<><50>><00>?<00>?5τ<5τ<<00>>,(  <00>?aP?i<>x?f<>q?ۍx?/<2F>|?߼~?<3F><>?<00>?L A[c<00>P><3E>D<><1F>a<EFBFBD>K<EFBFBD>k<EFBFBD><00>c<00>/(,kc(c60<00>?<00>?HB<00>>,<00> }<00>?<3F><><EFBFBD>?J)<29>?<3F><> @J)%@<40>s>@<40><>W@Bq@J)<29>@tΑ@<40>s<EFBFBD>@<40><18>@キ@c<>@B<08>@k<><6B>@<40>R<EFBFBD>@<40><><EFBFBD>@t<>A!A<>sA1<41>A<>A[k!A<><41>'A<>.Ac4A<34><41>:ABAA<41>ZGAk<41>MATA<54>RZA(<28>`A<><41>fASJmA<6D><41>sA{<7B>yA!<21>ARJ<52>A<EFBFBD>s<EFBFBD>A眉A1ƌA|<7C><>A<EFBFBD><18>AB<>A[k<>A<EFBFBD><41><EFBFBD>A⦅A9<41><39>A<EFBFBD><10>A<EFBFBD>9<EFBFBD>Ac<>Ac<41><63>A<EFBFBD><41><EFBFBD>A<EFBFBD>޵AB<08>A<EFBFBD>1<EFBFBD>A<EFBFBD>Z<EFBFBD>A!<21><>Ak<41><6B>A<EFBFBD><41><EFBFBD>A<00>AJ)<29>A<EFBFBD>R<EFBFBD>A<EFBFBD>{<7B>A(<28><>As<41><73>A<EFBFBD><41><EFBFBD>A!<21>ASJ<53>A<EFBFBD>s<EFBFBD>A<EFBFBD><41><EFBFBD>A1<41><31>A{<7B><>A<EFBFBD><18>AB<>A[k<>A<EFBFBD><41><EFBFBD>A<EFBFBD><41>B<>sBBB<><42>B<>1B1<42>B<>Z
B|<7C> B!<21> B<>Bk<42>BBB<><42>B[kBB<><42>BJ)B<><42>B<>RB9<42>B<>{ B<>"B)<29>#B<>9%Bs<42>&Bc(B<><42>)Bc<42>+B!-B<><42>.BSJ0B<30><42>1B<31>s3BB5B<35><42>6B<36>18B1<42>9B<39>Z;B|<7C><B!<21>>B<>@Bk<42>ABBCB<43><42>DBZkFBHBL <00>B[cJ.<2E><>UM<> <0B>p<EFBFBD><70><00>c<00>/(,kc(c60<00>?<00>?HB<00>>,<00> }<00>?<3F><><EFBFBD>?J)<29>?<3F><> @J)%@<40>s>@<40><>W@Bq@J)<29>@tΑ@<40>s<EFBFBD>@<40><18>@キ@c<>@B<08>@k<><6B>@<40>R<EFBFBD>@<40><><EFBFBD>@t<>A!A<>sA1<41>A<>A[k!A<><41>'A<>.Ac4A<34><41>:ABAA<41>ZGAk<41>MATA<54>RZA(<28>`A<><41>fASJmA<6D><41>sA{<7B>yA!<21>ARJ<52>A<EFBFBD>s<EFBFBD>A眉A1ƌA|<7C><>A<EFBFBD><18>AB<>A[k<>A<EFBFBD><41><EFBFBD>A⦅A9<41><39>A<EFBFBD><10>A<EFBFBD>9<EFBFBD>Ac<>Ac<41><63>A<EFBFBD><41><EFBFBD>A<EFBFBD>޵AB<08>A<EFBFBD>1<EFBFBD>A<EFBFBD>Z<EFBFBD>A!<21><>Ak<41><6B>A<EFBFBD><41><EFBFBD>A<00>AJ)<29>A<EFBFBD>R<EFBFBD>A<EFBFBD>{<7B>A(<28><>As<41><73>A<EFBFBD><41><EFBFBD>A!<21>ASJ<53>A<EFBFBD>s<EFBFBD>A<EFBFBD><41><EFBFBD>A1<41><31>A{<7B><>A<EFBFBD><18>AB<>A[k<>A<EFBFBD><41><EFBFBD>A<EFBFBD><41>B<>sBBB<><42>B<>1B1<42>B<>Z
B|<7C> B!<21> B<>Bk<42>BBB<><42>B[kBB<><42>BJ)B<><42>B<>RB9<42>B<>{ B<>"B)<29>#B<>9%Bs<42>&Bc(B<><42>)Bc<42>+B!-B<><42>.BSJ0B<30><42>1B<31>s3BB5B<35><42>6B<36>18B1<42>9B<39>Z;B|<7C><B!<21>>B<>@Bk<42>ABBCB<43><42>DBZkFBHBL <00>B[c<00>G<<3C><00>@<40><>p<EFBFBD><70><EFBFBD><EFBFBD><EFBFBD><EFBFBD><00>c<00>/(,<00>c(cl0<00>?S%<25>S%<25><00><><EFBFBD>>33s?9<> <0B>9<> <0B><00><><EFBFBD>>33s?P<><50>>P<><50>><00>?<00>?5τ<5τ<<00>>,(  <00>?aP?i<>x?f<>q?ۍx?/<2F>|?߼~?<3F><>?<00>?L A[c<0F>QQ2<51>J<><4A>IV<49><56>;<3B><><00><00>c%<00>6<00>2<00>Mc%<00>6<00>1<00><00>c%<00>6<00>.<00><00>c%<00>6<00>/<00>?<00><00><00>cC<00><><00><><00><><00>C<00>C<00>Cc%<00>%'<00>:@8@G@<00>3y<00><00>7@YvC!F4752BEF4026A232736BFE96D40C8884Engine ProvidedZc k<>!C 8M<38><4D><08><><EFBFBD>N<EFBFBD><4E><00> <00><00> <00>b NE_Haze,,<00><00><00>0<00>_<00><00><00>Zc<00>?<3F>{<7B> tI<74><49>[T<><54>HE,c<00>?<3F>{<7B> tI<74><49>[T<><54>HEW,e cWc0 <00>1c'^(<28><EFBFBD><7F>E<EFBFBD>} ޼lS<6C><53><00><00><00><00>cbcA<00><00>,P<00>v<EFBFBD><76>p<04><>,E<>ў<EFBFBD><D19E>j<EFBFBD> <0B><>ccA<00><00>,P<00>%<25><1E><><EFBFBD><EFBFBD><EFBFBD>=<3D><><EFBFBD><EFBFBD><EFBFBD>N\<05><><EFBFBD><00>, <00><00>1cz<><7A><EFBFBD>e_J<5F>'s<>ӓ<EFBFBD><00><00><00><00>cbcA<00><00>,P<00><08><><EFBFBD>T3u<><75><05><><03>Ե<D4B5>ccA<00><00>,P"<22><><EFBFBD>f<EFBFBD><66> <20><><EFBFBD>V<EFBFBD><56><EFBFBD>?:`ѝ<><00>,<00>",<00>1c9<>SD<53><44><EFBFBD>K<EFBFBD><4B>T,<2C>y<<3C><><00><00><00><00>cbcA<00><00>,P0Vi<><69><EFBFBD><EFBFBD><EFBFBD>$<24><>y<EFBFBD><13>N]<02>ccA<00><00>,P<00>K<EFBFBD><4B>nV<6E><1F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>E<EFBFBD><EFBFBD>V<EFBFBD><56><00>,,<00>
#$- %' <00>1cBK<42>\<5C>8VM<56>#k'<27><><EFBFBD>w<EFBFBD><00><00><00><00>cbcA<00><00>,P<00><>I<EFBFBD> <0B><><1F><>A{<7B>[<5B>U'<27>ccA<00><00>,PL5 &<26><><EFBFBD>ܶ<EFBFBD>(ҠUP<55> O<><00>,@<00>&+*)(!<00>1cW<>0<EFBFBD>~<7E>nI<6E>V<EFBFBD><56>#<0F>Q<EFBFBD><00><00><00><00>cbcA<00><00>,P0Vi<><69><EFBFBD><EFBFBD><EFBFBD>$<24><>y<EFBFBD><13>N]<02>ccA<00><00>,P<00>K<EFBFBD><4B>nV<6E><1F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>E<EFBFBD><EFBFBD>V<EFBFBD><56><00>,<00><00><00>Q80c<00><00>u]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>t]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>~<00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>}<00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>|<00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>zA]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>yq]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>x<00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>m<00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>s]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>w]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>W<00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>L<00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>?<3F><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>b<00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>h]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>r]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>m]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>rt]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>sE]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>v~]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>z]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>u]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>t
]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00><]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>o]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>6<00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>A<00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>G]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>=]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>F]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00><><EFBFBD><EFBFBD><EFBFBD><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>l<00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>nR]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>y]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>H]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>l]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>m]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>n]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>x]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>z]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>{]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>g]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>f]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>e]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>}]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>C]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>D]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>9
<EFBFBD>u1tM<EFBFBD><EFBFBD> @<40><><00>B<EFBFBD> <0B><>KH<4B><48><EFBFBD><EFBFBD><00>B<EFBFBD> <0B><>KH<4B><48><EFBFBD><EFBFBD><04><00>\<00><00><><EFBFBD><EFBFBD><00><00><00><><EFBFBD><EFBFBD>ӖM<D396>dA<15>w<EFBFBD><00><><EFBFBD><EFBFBD>ӖM<D396>dA<15>w<EFBFBD><77><00><01><00><00><><EFBFBD><EFBFBD><00><00>*<00> <0C>,<2C>\K<><4B><EFBFBD>z<12><00><00><><EFBFBD><EFBFBD>Rc<00><>]<5D><13>J<EFBFBD>ڽyI<79><49>bSubUVAnimationAQ c<00>q~
<00><><EFBFBD>I<EFBFBD>c:?<3F>[@<40><>Zc<00><>i:A,IM<49>Ђ<EFBFBD>C<EFBFBD>|<1E>'P<><50><EFBFBD><EFBFBD>'<00>*P<00><00><00>c]V<><56><EFBFBD>|J<><4A>a<1A>Ane<6E>d<>(<28>AO<41><4F><EFBFBD>r<EFBFBD>"A<>d<>(<28>AO<41><4F><EFBFBD>r<EFBFBD>"A<>$<00><00><00><00><><EFBFBD><EFBFBD><00><00> )C<19><>$I<><49>f<EFBFBD><04>'<27><42>l3FI<46><49><EFBFBD>3[<02>J<42>l3FI<46><49><EFBFBD>3[<02>J<EFBFBD><00>\<00><00><><EFBFBD><EFBFBD><00><00>R<>[;<3B><>K<EFBFBD>
<EFBFBD>!<21>i<EFBFBD>DR<>[;<3B><>K<EFBFBD>
<EFBFBD>!<21>i<EFBFBD>Dg<00><00><00><00><><EFBFBD><EFBFBD><00>NewEnumerator2<00><00><>7<<3C>C<EFBFBD><43><EFBFBD>2<EFBFBD>uX<00><>7<<3C>C<EFBFBD><43><EFBFBD>2<EFBFBD>uX<><00><01><00><00><><EFBFBD><EFBFBD><00><00>'<00><>D<EFBFBD><44><EFBFBD><EFBFBD>K<EFBFBD>h"<22><0F>wn%p<><<1E>TaG<61><47><EFBFBD><10>%2<><00><00><><EFBFBD><EFBFBD>Rc`<60><><18><>fD<66><44>X<>O"b
SpawnRateAQ c<00>@v=<3D>HfbB<62><42><EFBFBD><EFBFBD><EFBFBD>ΧGZc<00>fMĨHJ<48>Z<O<><4F>P<EFBFBD>'p<><70><EFBFBD><EFBFBD>'<00><00>c<00>7 Ƹ<><C6B8>C<EFBFBD>z<EFBFBD><7A><EFBFBD><7F><EFBFBD><EFBFBD><00>I5<49><17>G<7F>[<5B>۰3 <00>I5<49><17>G<7F>[<5B>۰3 $<00><00><00><00><><EFBFBD><EFBFBD><00><00>,<00>܈E<DC88>cnI<6E><1D>X^g<><00>Q<EFBFBD>D=3^A<>'<27><03><><EFBFBD>d<00>Q<EFBFBD>D=3^A<>'<27><03><><EFBFBD>d<EFBFBD><00><00><00><00><><EFBFBD><EFBFBD><00>false<00><00><>򍔢<EFBFBD>A<EFBFBD><41>#<23>CD<43><00><>򍔢<EFBFBD>A<EFBFBD><41>#<23>CD<43><1B><00><01><00><00><><EFBFBD><EFBFBD><00><00><00>H<13>P<EFBFBD>K<>t<EFBFBD><74><EFBFBD>~<7E><><00><00><><EFBFBD><EFBFBD>Rcp<><70><EFBFBD>$Y<>M<EFBFBD><4D>`<60><><EFBFBD><0F>bSphereLocationAQ8c<00>К<><D09A> <0C>mG<6D><47>Y&<26><><EFBFBD><EFBFBD>kܛ8,<2C>3<EFBFBD>@<40>V4֑<34>w<EFBFBD>OZc<00><>h]<5D><>I<><49>xY<78><<3C><>'p<><70><EFBFBD><EFBFBD>'<00><00>cPCy<43>[<5B><>J<EFBFBD><4A>`HCp
}<7D> R:.<2E>[xN<78><4E>
R<1F><>R:.<2E>[xN<78><4E>
R<1F><>$<00><00><00><00><><EFBFBD><EFBFBD><00><00>'<00>{Cc<><63>@<40>AHn<><6E>p |լ)]<5D>E<EFBFBD>$<24>Ĵ<EFBFBD>2 |լ)]<5D>E<EFBFBD>$<24>Ĵ<EFBFBD>2<><00><00><00><00><><EFBFBD><EFBFBD><00>NewEnumerator0<00><00><0E>ә\D<><02>k<13><><EFBFBD><00><0E>ә\D<><02>k<13><><EFBFBD><00><00><00><00><><EFBFBD><EFBFBD><00>false<00>B<>K<EFBFBD>BQH<><48>M<1A><>(|B<>K<EFBFBD>BQH<><48>M<1A><>(|T<00><00><00><00><><EFBFBD><EFBFBD><00>false<00><00>2{<7B>bb)D<><44>v'O<>F<00>2{<7B>bb)D<><44>v'O<>F<1B><00><00><00><00><><EFBFBD><EFBFBD><00>false<00>gK1UG<>F<EFBFBD><13><><EFBFBD><EFBFBD> gK1UG<>F<EFBFBD><13><><EFBFBD><EFBFBD> &<00><00><00><00><><EFBFBD><EFBFBD><00>NewEnumerator0<00>Sl<18><>rB<><42><EFBFBD><EFBFBD><06><><EFBFBD>Sl<18><>rB<><42><EFBFBD><EFBFBD><06><><EFBFBD>N<00><00><00><00><><EFBFBD><EFBFBD><00>NewEnumerator0<00>h<>|<7C>c%M<><4D>:<3A>}=h<>|<7C>c%M<><4D>:<3A>}=l<00><00><00><00><><EFBFBD><EFBFBD><00>true<00><00><>$<24><><EFBFBD>H<> <0A><><EFBFBD>}<7D>2<00><>$<24><><EFBFBD>H<> <0A><><EFBFBD>}<7D>2<EFBFBD><00><00><00><00><><EFBFBD><EFBFBD><00>false<00><00><>b <00><>L<EFBFBD><4C>B<EFBFBD>ѥ<EFBFBD><D1A5><00><>b <00><>L<EFBFBD><4C>B<EFBFBD>ѥ<EFBFBD>ߖ<00><00><00><00><><EFBFBD><EFBFBD><00>false<00>܎)Sq<53>B<>N\<5C><>o]܎)Sq<53>B<>N\<5C><>o]<5D><00><00><00><00><><EFBFBD><EFBFBD><00>false<00>{<7B><>Z<EFBFBD><5A>J<EFBFBD>,<2C><>t?Ľ{<7B><>Z<EFBFBD><5A>J<EFBFBD>,<2C><>t?Ľ<><00><00><00><00><><EFBFBD><EFBFBD><00>true<00><12>4<EFBFBD><34>)@<40>Q<02>q<EFBFBD><71><12>4<EFBFBD><34>)@<40>Q<02>q<EFBFBD><71><EFBFBD><00><01><00><00><><EFBFBD><EFBFBD><00><00> <00><><EFBFBD><EFBFBD><EFBFBD>!<21>I<EFBFBD><49>(P<><00><00><><EFBFBD><EFBFBD>Rcvm@<40>@<40>_N<5F>I<EFBFBD> +}b EmitterStateZcuT<75><54>9<EFBFBD>:F<>Z<EFBFBD><5A><EFBFBD><02><><EFBFBD>'P<><50><EFBFBD><EFBFBD>'<00>*P<00><00><00>c<00>4<EFBFBD><34>o<EFBFBD><6F>N<EFBFBD><4E><EFBFBD>h<>B<EFBFBD><42> <00><>{ɾ&+A<><1B>b<EFBFBD>"<22><><00><>{ɾ&+A<><1B>b<EFBFBD>"<22><>$<00><00><00><00><><EFBFBD><EFBFBD><00><00><00>9<EFBFBD>K<17><>H<EFBFBD><48><EFBFBD> <0B><>9<EFBFBD><00><>gq<67><71><EFBFBD>O<EFBFBD>;<0F>[<5B>6<EFBFBD><00><>gq<67><71><EFBFBD>O<EFBFBD>;<0F>[<5B>6<EFBFBD>5<00>\<00><00><><EFBFBD><EFBFBD><00><00><00>39<17><>G<EFBFBD>6<15>pS<00>39<17><>G<EFBFBD>6<15>pS<70><00><00><00><00><><EFBFBD><EFBFBD><00>false<00>P<><50>G)<29>C<EFBFBD><43><EFBFBD><EFBFBD>PӟP<><50>G)<29>C<EFBFBD><43><EFBFBD><EFBFBD>Pӟ<7F><00><00><00><00><><EFBFBD><EFBFBD><00>false<00><00><><EFBFBD><EFBFBD>*<2A><>@<40><>I<EFBFBD>Ǘ<><00><><EFBFBD><EFBFBD>*<2A><>@<40><>I<EFBFBD>Ǘ<><00><00><00><00><><EFBFBD><EFBFBD><00>NewEnumerator0<00><00> 0-/Q\K<><4B>G<EFBFBD><47><0F><><00> 0-/Q\K<><4B>G<EFBFBD><47><0F><>1<00><00><00><00><><EFBFBD><EFBFBD><00>NewEnumerator0<00>
AE<EFBFBD>a<><61>"E<> <20><><1C>
AE<EFBFBD>a<><61>"E<>J<00><00><00><00><><EFBFBD><EFBFBD><00>NewEnumerator0<00><00>F<EFBFBD>[k<>>D<>y<EFBFBD><79>:n<00>F<EFBFBD>[k<>>D<>y<EFBFBD><79>:nK<00><00><00><00><><EFBFBD><EFBFBD><00>NewEnumerator0<00>2?ͧ$)K<>Y<EFBFBD><08><><EFBFBD>2?ͧ$)K<>Y<EFBFBD><08><><EFBFBD>2<00><00><00><00><><EFBFBD><EFBFBD><00>NewEnumerator0<00><15>
@<40>dL<>"<22><>d<EFBFBD><64><EFBFBD><15>
@<40>dL<>"<22><>d<EFBFBD><64><EFBFBD>4<00><00><00><00><><EFBFBD><EFBFBD><00>false<00>o|ʰ-[E<><45>3Q&
<EFBFBD>o|ʰ-[E<><45>3Q&
<EFBFBD><04><00><00><00><00><><EFBFBD><EFBFBD><00>false<00><00><>;<3B>ΕG<CE95><47><EFBFBD><EFBFBD>bT<62>8<00><>;<3B>ΕG<CE95><47><EFBFBD><EFBFBD>bT<62>8<EFBFBD><00><01><00><00><><EFBFBD><EFBFBD><00><00>,<00>L<EFBFBD>,_q<5F>C<EFBFBD><43><EFBFBD>4<EFBFBD>G<EFBFBD>\".l<>8_<38>E<EFBFBD>;<3B><>c<EFBFBD>֦<00><00><><EFBFBD><EFBFBD>Rc*PΌa<CE8C>H<EFBFBD><48>?<3F>I/c<>bPointAttractionForceAQ c<00><00><><EFBFBD>q<EFBFBD>qVK<56><4B>G<EFBFBD>8ה.Zc<00>Q<EFBFBD><51>迪J<E8BFAA>'b <0A>Ǵ<EFBFBD><C7B4>'0<><30><EFBFBD><EFBFBD>'<00>M@<00>c<00>å<EFBFBD><C3A5><1D>B<EFBFBD><42>G<EFBFBD><47>U<><55><00>G<EFBFBD>,+^F<><46><EFBFBD><03>b<EFBFBD><62><00>G<EFBFBD>,+^F<><46><EFBFBD><03>b<EFBFBD><62>$<00><00><00><00><><EFBFBD><EFBFBD><00><00>*<00>}L<>YK<> <07><>;<3B>I<00><>N<EFBFBD>7r<37>C<EFBFBD><43><EFBFBD>^<5E><0F>a<00><>N<EFBFBD>7r<37>C<EFBFBD><43><EFBFBD>^<5E><0F>a+<00><00><00><00><><EFBFBD><EFBFBD><00>false<00><00><>`[vE<76>L<EFBFBD><4C>$^<5E><><00><>`[vE<76>L<EFBFBD><4C>$^<5E><><EFBFBD><00><00><00><00><><EFBFBD><EFBFBD><00>false<00><00>5<EFBFBD><35><EFBFBD>#<23>I<EFBFBD><49>Q<EFBFBD><51><EFBFBD>9<EFBFBD><00>5<EFBFBD><35><EFBFBD>#<23>I<EFBFBD><49>Q<EFBFBD><51><EFBFBD>9<EFBFBD><39><00><01><00><00><><EFBFBD><EFBFBD><00><00>ӄ l<><6C>pA<70><18>E<EFBFBD><00><00><><EFBFBD><EFBFBD>Rc?]F<><46><EFBFBD>A<>$[!>%Z-bSolveForcesAndVelocityZc0,-<2D><><EFBFBD>@<40>)<29> <0A><><00><>'<00><><EFBFBD><EFBFBD><EFBFBD>'<00><00>c<1D>m,sjB<><42>+<2B><>p<EFBFBD> <0A>ӄ l<><6C>pA<70><18>E<EFBFBD>ӄ l<><6C>pA<70><18>E<EFBFBD>$<00><00><00><00><><EFBFBD><EFBFBD><00><00><00>5<EFBFBD><35><EFBFBD>#<23>I<EFBFBD><49>Q<EFBFBD><51><EFBFBD>9<EFBFBD>ԡl<D4A1><07>xH<78><48>
<EFBFBD>ԡl<D4A1><07>xH<78><48>
<EFBFBD>[<00><00><00><00><><EFBFBD><EFBFBD><00>false<00>L <0B>U'<19>M<EFBFBD>*<2A><>)l<>L <0B>U'<19>M<EFBFBD>*<2A><>)l<>6<00><00><00><00><><EFBFBD><EFBFBD><00>false<00><13><><EFBFBD>D<EFBFBD>X<EFBFBD>#<23><13><><EFBFBD>D<EFBFBD>X<EFBFBD>#<23><EFBFBD><00><00><00><00><><EFBFBD><EFBFBD><00>true<00><00><>c<EFBFBD><63>zF<7F>)<29>%<25><><EFBFBD><EFBFBD><00><>c<EFBFBD><63>zF<7F>)<29>%<25><><EFBFBD><EFBFBD><EFBFBD><00><01><00><00><><EFBFBD><EFBFBD><00><00>)dMq<4D><71> D<><44><1E>2<EFBFBD><32><00><00><><EFBFBD><EFBFBD>RcX3<58>|8<>3L<33>+<2B>^<1D> ObDynamicMaterialParametersAQ c<00>^<5E>rW$O<><70><D2A7>CZc <0B><0F>|<7C>B<><42><04><>C<EFBFBD><06>'p<><70><EFBFBD><EFBFBD>'<00><00>c1P<31><50>%AE<41><45><EFBFBD>ܕ<m<>HI<>Ln<4C>F<EFBFBD>,<2C><>K<EFBFBD>O<EFBFBD>HI<>Ln<4C>F<EFBFBD>,<2C><>K<EFBFBD>O<EFBFBD>$<00><00><00><00><><EFBFBD><EFBFBD><00><00>(<00><>P<EFBFBD>m<EFBFBD><6D>N<EFBFBD><4E><EFBFBD><EFBFBD><EFBFBD>P<EFBFBD>dۍ<><DB8D>`OYE<59>J<1E><><EFBFBD>ۍ<><DB8D>`OYE<59>J<1E><00><00><00><00><><EFBFBD><EFBFBD><00>true<00>@<40><><EFBFBD> g@<40><><1A>`]<5D>=@<40><><EFBFBD> g@<40><><1A>`]<5D>=<3D><00><00><00><00><><EFBFBD><EFBFBD><00>false<00>#<23>m<>V|I<><49>C<EFBFBD>9r<39>L#<23>m<>V|I<><49>C<EFBFBD>9r<39>L<EFBFBD><00><00><00><00><><EFBFBD><EFBFBD><00>false<00><00>|b#N<>K<>+<2B><><03>z/<00>|b#N<>K<>+<2B><><03>z/<2F><00><00><00><00><><EFBFBD><EFBFBD><00>false<00><00>rjѩ1<D1A9>G<EFBFBD><47><EFBFBD>q@h<><00>rjѩ1<D1A9>G<EFBFBD><47><EFBFBD>q@h<><07><00><01><00><00><><EFBFBD><EFBFBD><00><00>!y<><79>}7<><37>B<EFBFBD>.<2E>ތF<DE8C>}"cL<00> ]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>X'<00><00>Zc%A~<7E><>.bO<62>eN<65>諁(<28>'<00><><EFBFBD><EFBFBD><EFBFBD>'<00> <00>c:<3A>-+<2B><>F<>w<EFBFBD>m<EFBFBD>b<EFBFBD><62><EFBFBD>V<>4<10><><EFBFBD>D<EFBFBD><44>k<13><13>V<>4<10><><EFBFBD>D<EFBFBD><44>k<13><13>"<00>\<00><00><><EFBFBD><EFBFBD><00><00>)<1A>da-O<><1B>1<EFBFBD>p<EFBFBD>X"cL<00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>X'<00><00>Zc#<23><>o<1F>H<EFBFBD><48>r<EFBFBD><72>D\<5C><>'<00><><EFBFBD><EFBFBD><EFBFBD>'<00> <00>c(T8<54>$sC<><43><EFBFBD>@<40>q<EFBFBD><71><EFBFBD><00><>C<><43>H2<48>&a<><00><>C<><43>H2<48>&a<>"<00>\<00><00><><EFBFBD><EFBFBD><00><00>+a6<11>t<EFBFBD>C<EFBFBD><43>M<EFBFBD>xd<78>""cM<00>$]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>Zc<00><><EFBFBD>!;<3B><>L<EFBFBD><4C><03>x<1C>h<EFBFBD>'p<><70><EFBFBD><EFBFBD>c<00><0E><><EFBFBD>XF<58>u)<29>)|<7C><><00><>q<EFBFBD><71><EFBFBD><EFBFBD>A<EFBFBD>U<16> <09><>}<00><>q<EFBFBD><71><EFBFBD><EFBFBD>A<EFBFBD>U<16> <09><>}"<00><01><00><00><><EFBFBD><EFBFBD><00><00><02>I0<49>%<25>J<EFBFBD><4A><EFBFBD><0E><04>p"c
<EFBFBD><EFBFBD>!C<><43><EFBFBD><EFBFBD><EFBFBD>Gs<47><73><02>I0<49>%<25>J<EFBFBD><4A><EFBFBD><0E><04>p<02>I0<49>%<25>J<EFBFBD><4A><EFBFBD><0E><04>p<EFBFBD><00><00><00><00><><EFBFBD><EFBFBD><00><00><00><>q<EFBFBD><71><EFBFBD><EFBFBD>A<EFBFBD>U<16> <09><>}<00>,<00>c<00>cL<00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>:<00><00><00>Zc<04>P<EFBFBD>O<1E>D<EFBFBD><0F><>6<EFBFBD><36>y<EFBFBD>'<00><00>cи<>;7<> J<><4A>)<29>T<EFBFBD>W&<26><00>H<13>P<EFBFBD>K<>t<EFBFBD><74><EFBFBD>~<7E><><00>H<13>P<EFBFBD>K<>t<EFBFBD><74><EFBFBD>~<7E><><EFBFBD><00><00><00><00><><EFBFBD><EFBFBD><00><00><00><>򍔢<EFBFBD>A<EFBFBD><41>#<23>CD<43><00>,<00>c<00>cM<00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>:<00><00><00>Zc<00><><EFBFBD>W3<57>uO<75><4F><EFBFBD>>ǿ <00>'<00><00>cHc<18>lepD<70>5q<35>r<EFBFBD>Um<55> <00><><EFBFBD><EFBFBD><EFBFBD>!<21>I<EFBFBD><49>(P<> <00><><EFBFBD><EFBFBD><EFBFBD>!<21>I<EFBFBD><49>(P<><1C><00><00><00><00><><EFBFBD><EFBFBD><00><00><12>4<EFBFBD><34>)@<40>Q<02>q<EFBFBD><71><00>,<00>c<00>cL<00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>:<00><00><00>Zcw<>5<EFBFBD><35><EFBFBD>F<>H<EFBFBD><50><D887><EFBFBD>'<00><00>c'<27>X<EFBFBD>6d<36>O<EFBFBD><4F><EFBFBD>,<00> <09><>!y<><79>}7<><37>B<EFBFBD>.<2E>ތF<DE8C>}!y<><79>}7<><37>B<EFBFBD>.<2E>ތF<DE8C>}<7D><00><00><00><00><><EFBFBD><EFBFBD><00><00><00>rjѩ1<D1A9>G<EFBFBD><47><EFBFBD>q@h<>Q(ccG<><47><EFBFBD>L<EFBFBD>0N<30>YKw<4B><77><06><><6C><CC91>@<40><>L<EFBFBD>&y<79>Zc{N<><4E><EFBFBD><EFBFBD>+K<><4B><1B><>Z<EFBFBD>R<EFBFBD>'P<><50><EFBFBD><EFBFBD>'<00><00>c 9 <0A>^!N<><4E>><3E><>1<EFBFBD><31><EFBFBD>".l<>8_<38>E<EFBFBD>;<3B><>c<EFBFBD>֦".l<>8_<38>E<EFBFBD>;<3B><>c<EFBFBD>֦F<00><00><00><00><><EFBFBD><EFBFBD><00><00><00><>;<3B>ΕG<CE95><47><EFBFBD><EFBFBD>bT<62>8"<00>tŘ(vVD<56>F|W<>r<1A>"<00>tŘ(vVD<56>F|W<>r<1A><>!1B1F67AF409DB07B274BFEBEC95DE240User.Haze SpawnRate<01><00><00><><EFBFBD><EFBFBD><00><00>,<00><<3C>Bn<11>H<EFBFBD><48>*<2A>]<5D><>G<><47><EFBFBD>L<EFBFBD>0N<30>YKw<4B><77>"Ҩ<><D2A8><EFBFBD>KJ<4B><4A>?u#<23>(<28>"Ҩ<><D2A8><EFBFBD>KJ<4B><4A>?u#<23>(<28>#<00>b<00><00><00>"<00><1E><><EFBFBD><EFBFBD><EFBFBD>L<EFBFBD><4C>cYʧ<59><CAA7>"<00><1E><><EFBFBD><EFBFBD><EFBFBD>L<EFBFBD><4C>cYʧ<59><CAA7><EFBFBD><00>]Default value for User.Haze SpawnRate if no other module has set it previously in the stack.<00><00><00><><EFBFBD><EFBFBD><00> 0.000000<00><00><><6C><CC91>@<40><>L<EFBFBD>&y<79>Q(cc3l>ğ<><C49F>D<EFBFBD>g<EFBFBD><67>Z<EFBFBD><5A>8<EFBFBD>.Э M<><08><><EFBFBD>Z<EFBFBD>vZc<00><>g4<>J<EFBFBD>v0<76>@<40>I<EFBFBD><49>'<00><><EFBFBD><EFBFBD><EFBFBD>'<00>c
DŽ㥯9D<EFBFBD><EFBFBD>k8<EFBFBD>$=<3D><>#R<>ߎ<EFBFBD><`B<><42><EFBFBD>Ú<EFBFBD><17>#R<>ߎ<EFBFBD><`B<><42><EFBFBD>Ú<EFBFBD><17>F<00><00><00><00><><EFBFBD><EFBFBD><00><00><00><><EFBFBD><EFBFBD>.<2E>hH<68><17><>=b#<00>+
<EFBFBD>J<EFBFBD>ZD<EFBFBD>f<EFBFBD>K<EFBFBD>;o#<00>+
<EFBFBD>J<EFBFBD>ZD<EFBFBD>f<EFBFBD>K<EFBFBD>;o<>!6CB5E0BD4A1747B20D501AB848EAD8C2User.Haze Size<01><00><00><><EFBFBD><EFBFBD><00><00>- <0C>3|<7C>8O<><4F><EFBFBD><EFBFBD>`_q<5F>3l>ğ<><C49F>D<EFBFBD>g<EFBFBD><67>Z<EFBFBD><5A>8#<00><>D;<3B>A<><41><EFBFBD><EFBFBD>`<00>#<00><>D;<3B>A<><41><EFBFBD><EFBFBD>`<00>#<00>b<00><00><00>#3M<33>׍<EFBFBD>M<>dMT<4D><54>4<EFBFBD>#3M<33>׍<EFBFBD>M<>dMT<4D><54>4<EFBFBD><34><00>XDefault value for User.Haze Size if no other module has set it previously in the stack.<00><00><00><><EFBFBD><EFBFBD><00> 0.000000<00><00>.Э M<><08><><EFBFBD>Z<EFBFBD>vQ(cc<14>(<28>N<EFBFBD>П<EFBFBD>N%<25><>@<40>N<EFBFBD><4E>}<7D>L<EFBFBD>*EyT<79>/QZc<00><>a0v<30>*M<><4D>R<EFBFBD><52>r<EFBFBD><72><EFBFBD>'<00><><EFBFBD><EFBFBD><EFBFBD>'<00><00>c<00><><EFBFBD><EFBFBD>qG<>F<EFBFBD>RtG<74> <0A>$:N<><4E><EFBFBD><EFBFBD><EFBFBD>O<EFBFBD>A<EFBFBD><41>< <06>$:N<><4E><EFBFBD><EFBFBD><EFBFBD>O<EFBFBD>A<EFBFBD><41>< <06>F<00><00><00><00><><EFBFBD><EFBFBD><00><00><00><><EFBFBD><EFBFBD>.<2E>hH<68><17><>=b$<00>v{P<><50><EFBFBD>B<EFBFBD>/<2F>&<26><><EFBFBD>$<00>v{P<><50><EFBFBD>B<EFBFBD>/<2F>&<26><><EFBFBD><05>!5867537349017B3A0F4D32B789A6C80DUser.Haze Lifetime<01><00><00><><EFBFBD><EFBFBD><00><00>-<00>\&7<><37><EFBFBD>C<EFBFBD>c<EFBFBD>mˋ><3E><14>(<28>N<EFBFBD>П<EFBFBD>N%<25><>$<00>~<7E><><EFBFBD><EFBFBD>eB<65>Y<EFBFBD><59><EFBFBD><EFBFBD><EFBFBD>3$<00>~<7E><><EFBFBD><EFBFBD>eB<65>Y<EFBFBD><59><EFBFBD><EFBFBD><EFBFBD>3#<00>b<00><00><00>$I<18>~<7E>moM<6F><00>4<EFBFBD><06><>$I<18>~<7E>moM<6F><00>4<EFBFBD><06><><EFBFBD><00>\Default value for User.Haze Lifetime if no other module has set it previously in the stack.<00><00><00><><EFBFBD><EFBFBD><00> 0.000000<00>@<40>N<EFBFBD><4E>}<7D>L<EFBFBD>*EyT<79>/QQ(cc<08>i0<05>_F<5F><46>Q<EFBFBD><51><EFBFBD><EFBFBD><EFBFBD><EFBFBD>  <20><><EFBFBD>G<EFBFBD><47>qW<71>=<3D>ZcZ<><5A>e
<EFBFBD><EFBFBD>E<EFBFBD><EFBFBD>n9^Z<>'P<><50><EFBFBD><EFBFBD>'~<00>c<00>b2K<07><>H<EFBFBD>pz<><7A>3Z<33>%p<><<1E>TaG<61><47><EFBFBD><10>%2<>%p<><<1E>TaG<61><47><EFBFBD><10>%2<>F<00><00><00><00><><EFBFBD><EFBFBD><00><00><00><>7<<3C>C<EFBFBD><43><EFBFBD>2<EFBFBD>uX%<00>l<EFBFBD>}-<2D>9B<39>H<14>-! <0A>%<00>l<EFBFBD>}-<2D>9B<39>H<14>-! ݚ!2AD374FA4A67F5D39E698299C6735242User.Haze Radius<01><00><00><><EFBFBD><EFBFBD><00><00>'<00><>u<>?+G<><47><EFBFBD>OU
<EFBFBD><EFBFBD><08>i0<05>_F<5F><46>Q<EFBFBD><51><EFBFBD><EFBFBD><EFBFBD>%<<3C><><EFBFBD><06>D<EFBFBD><44><EFBFBD>H<EFBFBD>1A<31>%<<3C><><EFBFBD><06>D<EFBFBD><44><EFBFBD>H<EFBFBD>1A<31>#<00>b<00><00><00>%<01>G
{<7B>G<EFBFBD>=<3D>3<EFBFBD><1C>%<01>G
{<7B>G<EFBFBD>=<3D>3<EFBFBD><1C><><00>ZDefault value for User.Haze Radius if no other module has set it previously in the stack.<00><00><00><><EFBFBD><EFBFBD><00> 0.000000<00><00>  <20><><EFBFBD>G<EFBFBD><47>qW<71>=<3D>Q(cc<00>/A<>GG<47>O<EFBFBD>\<5C>HA<48><41><EFBFBD>%f<><66><EFBFBD>1|G<><47><EFBFBD>ms>Zco<><6F>p<EFBFBD>4<EFBFBD>O<EFBFBD>G`=<3D><><EFBFBD>;<3B>'<00><><EFBFBD><EFBFBD><EFBFBD>'<00> M@<00>cMZd<5A>P<EFBFBD>nC<6E><04><>!<21><0F>&GN<47>ށ<EFBFBD>B<>w<77>#k<><6B>&GN<47>ށ<EFBFBD>B<>w<77>#k<><6B>F<00><00><00><00><><EFBFBD><EFBFBD><00><00><00>lWB<57><42><EFBFBD>5$<24>0<EFBFBD>&<00>|$<24>.<2E><>D<EFBFBD>I<EFBFBD>+!ު&<00>|$<24>.<2E><>D<EFBFBD>I<EFBFBD>+<>!CB43FD4D4DF86EFB0707F9AC6D312B42User.Haze Attraction<01><00><00><><EFBFBD><EFBFBD><00><00>+<19>!<21>!<00>@<40><0F><>M>a<00>/A<>GG<47>O<EFBFBD>\<5C>HA<48><41><EFBFBD>&Zy¸Y1<59>O<EFBFBD><4F><EFBFBD><EFBFBD>ߒp<DF92>&Zy¸Y1<59>O<EFBFBD><4F><EFBFBD><EFBFBD>ߒp<DF92>#<00>b<00><00><00>&<00><><EFBFBD><EFBFBD>6<EFBFBD><36>B<EFBFBD><42>Y<EFBFBD>\<5C>6<EFBFBD>&<00><><EFBFBD><EFBFBD>6<EFBFBD><36>B<EFBFBD><42>Y<EFBFBD>\<5C>6<EFBFBD><36><00>^Default value for User.Haze Attraction if no other module has set it previously in the stack.<00><00><00><><EFBFBD><EFBFBD><00> 0.000000<00>%f<><66><EFBFBD>1|G<><47><EFBFBD>ms>Zc^. <0A><17>F<EFBFBD><46><16><><EFBFBD> h<>'<00><><EFBFBD><EFBFBD><EFBFBD>'<00><00>c<00>5U)<29>.O<>Op<13><>{<7B>'<00><>D<EFBFBD><44><EFBFBD><EFBFBD>K<EFBFBD>h"<22><0F>wn'<00><>D<EFBFBD><44><EFBFBD><EFBFBD>K<EFBFBD>h"<22><0F>wnF<00><00><00><00><><EFBFBD><EFBFBD><00><00><00><>7<<3C>C<EFBFBD><43><EFBFBD>2<EFBFBD>uXCw<77>֢<EFBFBD>J<EFBFBD><03>|1]'<00><><EFBFBD>ꘄH<EA9884><48>C<EFBFBD>f<EFBFBD><1D>'<00><><EFBFBD>ꘄH<EA9884><48>C<EFBFBD>f<EFBFBD><1D>R<00><00><00><00><><EFBFBD><EFBFBD><00>NewEnumerator0<00>z<><7A>S@<40><>M<EFBFBD>U-<2D>ح
*'<00><>u<>?+G<><47><EFBFBD>OU
<EFBFBD><EFBFBD>'<00><>u<>?+G<><47><EFBFBD>OU
<EFBFBD><EFBFBD>Q<00><00><00><00><><EFBFBD><EFBFBD><00><00>%<00>l<EFBFBD>}-<2D>9B<39>H<14>-! <0A> <09><>k<>.E<><45><EFBFBD><EFBFBD><EFBFBD><01><>'<00>{Cc<><63>@<40>AHn<><6E>p'<00>{Cc<><63>@<40>AHn<><6E>p<EFBFBD><00><01><00><00><><EFBFBD><EFBFBD><00><00>R:.<2E>[xN<78><4E>
R<1F><>?/<2F>E<EFBFBD> <20>B<EFBFBD><42><EFBFBD>l&<26>Q'g%<25>z><3E><>L<EFBFBD><4C>a<EFBFBD><61><06>!'g%<25>z><3E><>L<EFBFBD><4C>a<EFBFBD><61><06>!#<00>b<00><00><00>O7<><37><EFBFBD><EFBFBD>K<EFBFBD>3<EFBFBD><33>k <09>tZc<00><1C><>$<24>F<><46><EFBFBD>@<40>ۭ <0B>'<00><><EFBFBD><EFBFBD><EFBFBD>'<00><00>cJ<>g<EFBFBD>
<EFBFBD>@<40>` r<>8 <09><>(~ps29<32>N<EFBFBD><4E>b<EFBFBD>*>k(~ps29<32>N<EFBFBD><4E>b<EFBFBD>*>kF<00><00><00><00><><EFBFBD><EFBFBD><00><00>)[<5B>J <0B>K<EFBFBD><4B><EFBFBD>{<7B><><EFBFBD><EFBFBD><00><>X<EFBFBD><07>L<7F>f<EFBFBD><66><EFBFBD>(<00><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>F<>!c/}x<>(<00><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>F<>!c/}x<><78><00><00><00><00><><EFBFBD><EFBFBD><00><00>xuho<68>F<>rVL<06>Bf/<><EF8DBE>J<EFBFBD>d<EFBFBD>!4<>AO(<00><>P<EFBFBD>m<EFBFBD><6D>N<EFBFBD><4E><EFBFBD><EFBFBD><EFBFBD>P<EFBFBD>d(<00><>P<EFBFBD>m<EFBFBD><6D>N<EFBFBD><4E><EFBFBD><EFBFBD><EFBFBD>P<EFBFBD>d<EFBFBD><00><01><00><00><><EFBFBD><EFBFBD><00><00>HI<>Ln<4C>F<EFBFBD>,<2C><>K<EFBFBD>O<EFBFBD>K<><4B>$<24><>F<EFBFBD>8<EFBFBD><01><>\X(?^ҁ<>F<EFBFBD>M<EFBFBD>V<EFBFBD><56><15><0E>(?^ҁ<>F<EFBFBD>M<EFBFBD>V<EFBFBD><56><15><0E>#<00>b<00><00><00>E9<45>ݳ<EFBFBD>=F<>+<2B>{xk~Zc<00>(V~<>I<EFBFBD><49><EFBFBD><EFBFBD><11>'P<><50><EFBFBD><EFBFBD>'<00><00>c;<1B><><EFBFBD><EFBFBD><EFBFBD>E<EFBFBD>k]Tg<54>s<EFBFBD>)dMq<4D><71> D<><44><1E>2<EFBFBD><32>)dMq<4D><71> D<><44><1E>2<EFBFBD><32>F<00><00><00><00><><EFBFBD><EFBFBD><00><00><00><>c<EFBFBD><63>zF<7F>)<29>%<25><><EFBFBD><EFBFBD><00> ,o<>xH@<40><>>$B<17>)<1A>da-O<><1B>1<EFBFBD>p<EFBFBD>X)<1A>da-O<><1B>1<EFBFBD>p<EFBFBD>X <00>\<00><00><><EFBFBD><EFBFBD><00><00>V<>4<10><><EFBFBD>D<EFBFBD><44>k<13><13>w<04><>ւO<><4F>*<2A><>)[<5B>J <0B>K<EFBFBD><4B><EFBFBD>{<7B><><EFBFBD><EFBFBD>)[<5B>J <0B>K<EFBFBD><4B><EFBFBD>{<7B><><EFBFBD><EFBFBD><EFBFBD><00><01><00><00><><EFBFBD><EFBFBD><00><00>) Ψ<>k<EFBFBD>H<EFBFBD><48><EFBFBD><15>[C(~ps29<32>N<EFBFBD><4E>b<EFBFBD>*>k:^;J<><4A>hC<68>[<5B><><42>)<00>\4h<34>T<EFBFBD>D<EFBFBD><44>jNAB"<22>)<00>\4h<34>T<EFBFBD>D<EFBFBD><44>jNAB"<22>#<00>b<00><00><00><00><><EFBFBD>&<26>%$D<><44><EFBFBD><EFBFBD>G<>LZcهK<D987><4B>Z<EFBFBD>G<EFBFBD>|<1E><><11><><EFBFBD>'<00><><EFBFBD><EFBFBD><EFBFBD>'<00>M@<00>cA<>V<EFBFBD><56><03>C<EFBFBD><43><EFBFBD>v><3E><>%<25>*SFij<69>7K<><4B><EFBFBD>l<><6C><EFBFBD>*SFij<69>7K<><4B><EFBFBD>l<><6C><EFBFBD>F<00><00><00><00><><EFBFBD><EFBFBD><00><00>+<00>
<EFBFBD>u1tM<EFBFBD><EFBFBD> @<40><><1F>C<EFBFBD>IyCN<43><1B><><EFBFBD>u<EFBFBD>M*<00> <0C>,<2C>\K<><4B><EFBFBD>z<12>*<00> <0C>,<2C>\K<><4B><EFBFBD>z<12><00><00><00><00><><EFBFBD><EFBFBD><00><00><00><><EFBFBD><EFBFBD>ӖM<D396>dA<15>w<EFBFBD>d<><64><EFBFBD>p<EFBFBD><70>O<EFBFBD>¦<08>e<EFBFBD><65>*<00>}L<>YK<> <07><>;<3B>I*<00>}L<>YK<> <07><>;<3B>I<EFBFBD><00><01><00><00><><EFBFBD><EFBFBD><00><00><00>G<EFBFBD>,+^F<><46><EFBFBD><03>b<EFBFBD><62><00>"<22>쇵SC<53>r<0F>@<40>=<3D>*<00>~Dd<44>N-F<>Fk<>Q<EFBFBD><*<00>~Dd<44>N-F<>Fk<>Q<EFBFBD><#<00>b<00><00><00><00><1B>z<EFBFBD><7A>H<EFBFBD><04>M<EFBFBD><4D><EFBFBD>YZcL<><4C>?<3F><><EFBFBD>N<EFBFBD><4E><19>؛1<D89B><31>'<10><><EFBFBD><EFBFBD>'<00>M@<00>c<00><><EFBFBD>I^<5E><>@<40>? k-{<7B><><EFBFBD>+<00><><EFBFBD><EFBFBD><EFBFBD>цA<D186>5N<35><4E><EFBFBD><EFBFBD><EFBFBD>+<00><><EFBFBD><EFBFBD><EFBFBD>цA<D186>5N<35><4E><EFBFBD><EFBFBD><EFBFBD>F<00><00><00><00><><EFBFBD><EFBFBD><00><00><00>lWB<57><42><EFBFBD>5$<24>0<EFBFBD><00><><EFBFBD><EFBFBD><1C><>G<EFBFBD><47><EFBFBD>=+<2B><><EFBFBD>+a6<11>t<EFBFBD>C<EFBFBD><43>M<EFBFBD>xd<78>"+a6<11>t<EFBFBD>C<EFBFBD><43>M<EFBFBD>xd<78>"<00>\<00><00><><EFBFBD><EFBFBD><00><00><00><>C<><43>H2<48>&a<>6<>=<3D><>B<EFBFBD>D<EFBFBD><44><EFBFBD><EFBFBD> ߺ<>+<19>!<21>!<00>@<40><0F><>M>a+<19>!<21>!<00>@<40><0F><>M>a<00><00><00><00><><EFBFBD><EFBFBD><00><00>&<00>|$<24>.<2E><>D<EFBFBD>I<EFBFBD>+<17> B<><42><EFBFBD>O<EFBFBD><4F><EFBFBD>N<11><><EFBFBD>+<00>
<EFBFBD>u1tM<EFBFBD><EFBFBD> @<40><>+<00>
<EFBFBD>u1tM<EFBFBD><EFBFBD> @ꨞ<00><01><00><00><><EFBFBD><EFBFBD><00><00>q|<7C> ,j1H<31><48>8<EFBFBD><38>m<EFBFBD>l*SFij<69>7K<><4B><EFBFBD>l<><6C><EFBFBD><00><>Ǜ<><K<>?<3F><><EFBFBD>i+e<>*<2A><><EFBFBD><F<><1A>Q<EFBFBD><51>.^+e<>*<2A><><EFBFBD><F<><1A>Q<EFBFBD><51>.^#<00>b<00><00><00>*X<><58><1C><>C<EFBFBD><43><EFBFBD><EFBFBD>F<EFBFBD>Zc<00><><EFBFBD>b<EFBFBD>]<5D>I<EFBFBD><49> <09><EFBFBD><EAA4B2>'<00><><EFBFBD><EFBFBD><EFBFBD>'<00><00>c<00>(<28>_{M<>9<EFBFBD><39><EFBFBD>v<12><>,<00>L<EFBFBD>,_q<5F>C<EFBFBD><43><EFBFBD>4<EFBFBD>G<EFBFBD>\,<00>L<EFBFBD>,_q<5F>C<EFBFBD><43><EFBFBD>4<EFBFBD>G<EFBFBD>\F<00><00><00><00><><EFBFBD><EFBFBD><00><00><00><>;<3B>ΕG<CE95><47><EFBFBD><EFBFBD>bT<62>8<00>bPJ<50>F<>y<EFBFBD><79><1E>V,<00><<3C>Bn<11>H<EFBFBD><48>*<2A>]<5D><>,<00><<3C>Bn<11>H<EFBFBD><48>*<2A>]<5D><>H<00><00><00><00><><EFBFBD><EFBFBD><00><00>"<00>tŘ(vVD<56>F|W<>r<1A><06>>\<03><>I<EFBFBD><49>_7<5F>#/,<00>܈E<DC88>cnI<6E><1D>X^g<>,<00>܈E<DC88>cnI<6E><1D>X^g<><67><00><01><00><00><><EFBFBD><EFBFBD><00><00><00>I5<49><17>G<7F>[<5B>۰3  ~<7E>=> <0A>L<EFBFBD><4C>CY<1D><>,<00><><EFBFBD><EFBFBD><19><>N<EFBFBD>>+"<22><><EFBFBD><EFBFBD>,<00><><EFBFBD><EFBFBD><19><>N<EFBFBD>>+"<22><><EFBFBD><EFBFBD>#<00>b<00><00><00>C <0C><><EFBFBD><EFBFBD><EFBFBD>D<EFBFBD><44><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Zc!<21><>y<EFBFBD>LyO<79>-1_J<5F><4A>'0<><30><EFBFBD><EFBFBD>'<00><00>c<00>b<EFBFBD><62><EFBFBD><EFBFBD>hF<68><46>*<2A>z0k<30><6B>-<00>mw y<>N<EFBFBD>o<EFBFBD>o@)3-<00>mw y<>N<EFBFBD>o<EFBFBD>o@)3F<00><00><00><00><><EFBFBD><EFBFBD><00><00><00><><EFBFBD><EFBFBD>.<2E>hH<68><17><>=b<08>=<3D>B5I<35><49>ɮ>r<<3C>- <0C>3|<7C>8O<><4F><EFBFBD><EFBFBD>`_q<5F>- <0C>3|<7C>8O<><4F><EFBFBD><EFBFBD>`_q<5F><00><00><00><00><><EFBFBD><EFBFBD><00><00>#<00>+
<EFBFBD>J<EFBFBD>ZD<EFBFBD>f<EFBFBD>K<EFBFBD>;o<00>B`<60><><EFBFBD>gJ<67>L`s<>o<EFBFBD>-<00>\&7<><37><EFBFBD>C<EFBFBD>c<EFBFBD>mˋ><3E>-<00>\&7<><37><EFBFBD>C<EFBFBD>c<EFBFBD>mˋ><3E><00><00><00><00><><EFBFBD><EFBFBD><00><00>$<00>v{P<><50><EFBFBD>B<EFBFBD>/<2F>&<26><><EFBFBD><00><>\+<2B>TI<54>E<><45><EFBFBD>J<EFBFBD>-dk<64>M<EFBFBD><06>G<EFBFBD>(<28><><EFBFBD>StR-dk<64>M<EFBFBD><06>G<EFBFBD>(<28><><EFBFBD>StR<74><00><01><00><00><><EFBFBD><EFBFBD><00><00> <00>Њ<EFBFBD><D08A><<3C>J<EFBFBD><4A>.<2E>+!#<23><00>f <0B><><EFBFBD>O<>כ<EFBFBD><D79B> <0B>^-<00>!<21><><EFBFBD>ҖL<D296>N<EFBFBD><4E>5<EFBFBD>\{-<00>!<21><><EFBFBD>ҖL<D296>N<EFBFBD><4E>5<EFBFBD>\{#<00>b<00><00><00>Dp,9<>"<22>E<EFBFBD><45><EFBFBD>ዟdL<00><00><00><00>c<00><<3C><>. D<>s<EFBFBD>d<S<><01>,<00>c<00>c<00><00><00>c<00><00>O'a'<00>c<00><<3C><>. D<>s<EFBFBD>d<S<>>@<00><00>v <00><00>'<00>Yv <00>J@#,<00>-,5c-c<00>5@<00>v <00><00><00><00><00>6@<00>v <00><00>v <00>0<00><00><00><00><00><00><00><00>v <00>)v <00>^v <00>,5cc<00>8Q<00>b.cq<00>dc;<00><00><00><c$,b%,5c%c<00>N@9@G@2c-<00><00>,P<00>(,5c(c<00>=c<00><00><00><00><00>$b7c%b<00><00>,5c<00>c<00>F<00>3<00>'c{<00><00>bZVNiagaraScript /Niagara/DefaultAssets/DefaultEmitter.DefaultEmitter:EmitterSpawnScript<00><00><00><00><00><00>cv<>~<13>)<29>C<EFBFBD>WI<57><15>.v<>,<00>c<00>c<00><00><00>c<00><00>O'a'<00>cv<>~<13>)<29>C<EFBFBD>WI<57><15>.v>@<00><00>v <00><00>'<00>Yv <00>J@#,<00>-,5c-c<00>5@<00>v <00><00><00><00><00>6@<00>v <00><00>v <00>0<00><00><00><00><00><00><00><00>v <00>)v <00>^v <00>,5cc<00>
;<00><00><00><c$,FbInterpolatedSpawnRequiresPersistentIDsGPUComputeSim%,5c%c<00>N@9@G@2cA<00><00>,P<00>K<EFBFBD><4B>nV<6E><1F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>E<EFBFBD><EFBFBD>V<EFBFBD><56>(,<00>cI(c<00><00><00>,P<00>K<EFBFBD><4B>nV<6E><1F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>E<EFBFBD><EFBFBD>V<EFBFBD><56><00>,P0<><30><EFBFBD><EFBFBD><17><><EFBFBD><EFBFBD><04><><14><><EFBFBD>k-<2D><><00>,Pw<>3v3[<5B>v<EFBFBD><1/<2F><>6>tH<><00>,Pw<>3v3[<5B>v<EFBFBD><1/<2F><>6>tH<><00>,Pw<>3v3[<5B>v<EFBFBD><1/<2F><>6>tH<><00>,Pw<>3v3[<5B>v<EFBFBD><1/<2F><>6>tH<><00>,P<00>S<EFBFBD>{<7B><>:N}<7D><>/<2F><><EFBFBD><EFBFBD>1X<31><00>,Pw<>3v3[<5B>v<EFBFBD><1/<2F><>6>tH<><00>,Pw<>3v3[<5B>v<EFBFBD><1/<2F><>6>tH<><00>,Pw<>3v3[<5B>v<EFBFBD><1/<2F><>6>tH<><00>,P<00><><EFBFBD>J ;<3B>&<26>$<24><><EFBFBD><17>ܦ(<28><00>,Pw<>3v3[<5B>v<EFBFBD><1/<2F><>6>tH<><00>,Pw<>3v3[<5B>v<EFBFBD><1/<2F><>6>tH<><00>,Pw<>3v3[<5B>v<EFBFBD><1/<2F><>6>tH<><00>,P<00>S<EFBFBD>{<7B><>:N}<7D><>/<2F><><EFBFBD><EFBFBD>1X<31><00>,P<00><>Nc,}ח<><D797>*<2A><><EFBFBD>h<EFBFBD><68><EFBFBD>ON<4F><00>,P<00>Vc<56>e<EFBFBD>)B<00>:%<25>Ϸf{<7B>B<EFBFBD><00>,P<00><>Nc,}ח<><D797>*<2A><><EFBFBD>h<EFBFBD><68><EFBFBD>ON<4F><00>,P<00>Vc<56>e<EFBFBD>)B<00>:%<25>Ϸf{<7B>B<EFBFBD><00>,Pw<>3v3[<5B>v<EFBFBD><1/<2F><>6>tH<><00>,Pw<>3v3[<5B>v<EFBFBD><1/<2F><>6>tH<><00>,P<00>S<EFBFBD>{<7B><>:N}<7D><>/<2F><><EFBFBD><EFBFBD>1X<31><00>,PD<>i-'Kس<4B>˕I{"*@W<><57><00>,Psr<73>i
b<EFBFBD>m<EFBFBD>\c&8T<38><54>9<EFBFBD><39><00>,P<00>mT<6D><54><EFBFBD>k<EFBFBD>SDޗ<44><DE97>B<EFBFBD><42>F? <0A><00>,P<00>Vc<56>e<EFBFBD>)B<00>:%<25>Ϸf{<7B>B<EFBFBD><00>,P<62><DF82><EFBFBD>Ѳ<EFBFBD><D1B2><EFBFBD>]<5D>^<5E><><EFBFBD>a<1C><00>,P<00><><EFBFBD>bPĞE<14>Y<EFBFBD><59>i<EFBFBD><69><EFBFBD><EFBFBD>$<24><00>,P<00><>R<EFBFBD><52>_<EFBFBD>6|b/<2F>?<1B><><10><><00>,P/kjn^<5E>b0t)Qqg[-<2D>~<7E><><EFBFBD><00>,P<00>7<><DB87><EFBFBD>53a<33>MD<>^gE<67><00>,P<00>S<EFBFBD>{<7B><>:N}<7D><>/<2F><><EFBFBD><EFBFBD>1X<31><00>,P<00>7<><DB87><EFBFBD>53a<33>MD<>^gE<67><00>,P<00>S<EFBFBD>{<7B><>:N}<7D><>/<2F><><EFBFBD><EFBFBD>1X<31><00>,P<00>7<><DB87><EFBFBD>53a<33>MD<>^gE<67><00>,P<00>S<EFBFBD>{<7B><>:N}<7D><>/<2F><><EFBFBD><EFBFBD>1X<31><00>,P<00>7<><DB87><EFBFBD>53a<33>MD<>^gE<67><00>,P<00>S<EFBFBD>{<7B><>:N}<7D><>/<2F><><EFBFBD><EFBFBD>1X<31><00>,P<00><>:<3A>m<EFBFBD>Hk!<14>`<60><>A<EFBFBD>(<28><><00>,P ^#<19><>*Q<><51><EFBFBD>MmIb<49><62>7<EFBFBD><37><EFBFBD><00>,P<00><><EFBFBD>[Ӭ$֟<> <0A><>q<EFBFBD>w<EFBFBD>|<7C><00>,P<00><><EFBFBD>[Ӭ$֟<> <0A><>q<EFBFBD>w<EFBFBD>|<7C><00>,P@<1D>$<24><>u<EFBFBD>.k<><51>S<1A>bt<62><00>,P<00>mT<6D><54><EFBFBD>k<EFBFBD>SDޗ<44><DE97>B<EFBFBD><42>F? <0A><00>,PD<>i-'Kس<4B>˕I{"*@W<><57><00>,Psr<73>i
b<EFBFBD>m<EFBFBD>\c&8T<38><54>9<EFBFBD><39><00>,PD<>i-'Kس<4B>˕I{"*@W<><57><00>,Psr<73>i
b<EFBFBD>m<EFBFBD>\c&8T<38><54>9<EFBFBD><39><00>,PD<>i-'Kس<4B>˕I{"*@W<><57><00>,Psr<73>i
b<EFBFBD>m<EFBFBD>\c&8T<38><54>9<EFBFBD><39><00>,PL5 &<26><><EFBFBD>ܶ<EFBFBD>(ҠUP<55> O<><00>,P[<08><><EFBFBD><EFBFBD>L<EFBFBD> <0B><>T<EFBFBD>%<12><00>,PZ<><5A>&<26>
`<60><><EFBFBD>2C<32>t<EFBFBD>j<EFBFBD><10><><00>,P<00>,X<19><>*<11><>^<5E><10>x<EFBFBD><78>=<3D><00>,P<00>mT<6D><54><EFBFBD>k<EFBFBD>SDޗ<44><DE97>B<EFBFBD><42>F? <0A><00>,PD<>i-'Kس<4B>˕I{"*@W<><57><00>,Psr<73>i
b<EFBFBD>m<EFBFBD>\c&8T<38><54>9<EFBFBD><39><00>,P<00><><EFBFBD>[Ӭ$֟<> <0A><>q<EFBFBD>w<EFBFBD>|<7C><00>,P<00><><EFBFBD>[Ӭ$֟<> <0A><>q<EFBFBD>w<EFBFBD>|<7C><00>,P<00>mT<6D><54><EFBFBD>k<EFBFBD>SDޗ<44><DE97>B<EFBFBD><42>F? <0A><00>,P<00><>%W<><57>9b<39>O<EFBFBD>8<EFBFBD><38><EFBFBD><05><><EFBFBD><EFBFBD><EFBFBD><00>,Psr<73>i
b<EFBFBD>m<EFBFBD>\c&8T<38><54>9<EFBFBD><39><00>,PD<>i-'Kس<4B>˕I{"*@W<><57><00>,Psr<73>i
b<EFBFBD>m<EFBFBD>\c&8T<38><54>9<EFBFBD><39><00>,P
j<>y[<5B>^<5E><06>_<EFBFBD><11><>^@?<3F><><00>,P<00>mT<6D><54><EFBFBD>k<EFBFBD>SDޗ<44><DE97>B<EFBFBD><42>F? <0A><00>,P<00><><EFBFBD>[Ӭ$֟<> <0A><>q<EFBFBD>w<EFBFBD>|<7C><00>,P<00><><EFBFBD>[Ӭ$֟<> <0A><>q<EFBFBD>w<EFBFBD>|<7C><00>,PZ<><5A>&<26>
`<60><><EFBFBD>2C<32>t<EFBFBD>j<EFBFBD><10><><00>,P<00><17><>@<40>vAU]<5D>L/P<>dW<64><00>,Pw 9<><39><EFBFBD>a)<29><18><>9`Fgf<17><00>,P<00>*<2A><>%LR<4C><52><EFBFBD>?<3F>L<EFBFBD>1%<25><><EFBFBD><00>,P<07>FD<46><44><11><>i<EFBFBD>SY<53><59><EFBFBD>U<EFBFBD><55>=c<00><00><00><00><00>$b7c%b<00><00>,5c<00>c<00>F<00>3<00>'cm <00>E, cEc<00><00>g]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>h]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>i]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>n]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00> o]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>p]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>q]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>r]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>$s]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>(t]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>,u]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>0v]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>4w]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>8x]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><y]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>Hz]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>L{]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>P|]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>T}]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>`~]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>d<00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>h<00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>t<00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00><00>,<00>P<00>@<00>?<00>?<00>C<00>CHCzDfff?<00>?<FzD<00>?<00>?<00>?<00>?<00>C?<00>?<3F>bXTNiagaraScript /Niagara/DefaultAssets/DefaultEmitter.DefaultEmitter:GPUComputeScript<00>Q<00>cc<00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>7<><37>{<7B><>M<EFBFBD><4D>) <0B><>d}o]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>}$<24><>A<EFBFBD>J<EFBFBD> K<18><19>Vc<00><00>dccn_7<5F>D!<><7F>N<EFBFBD>-G<>
;<00><00><00>$,FbInterpolatedSpawnRequiresPersistentIDsGPUComputeSim%,uc%c@<00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00> ]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>9@G@2cA<00><00>,P<00>K<EFBFBD><4B>nV<6E><1F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>E<EFBFBD><EFBFBD>V<EFBFBD><56>(,<00>cI(c<00><00><00>,P<00>K<EFBFBD><4B>nV<6E><1F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>E<EFBFBD><EFBFBD>V<EFBFBD><56><00>,P0<><30><EFBFBD><EFBFBD><17><><EFBFBD><EFBFBD><04><><14><><EFBFBD>k-<2D><><00>,Pw<>3v3[<5B>v<EFBFBD><1/<2F><>6>tH<><00>,Pw<>3v3[<5B>v<EFBFBD><1/<2F><>6>tH<><00>,Pw<>3v3[<5B>v<EFBFBD><1/<2F><>6>tH<><00>,Pw<>3v3[<5B>v<EFBFBD><1/<2F><>6>tH<><00>,P<00>S<EFBFBD>{<7B><>:N}<7D><>/<2F><><EFBFBD><EFBFBD>1X<31><00>,Pw<>3v3[<5B>v<EFBFBD><1/<2F><>6>tH<><00>,Pw<>3v3[<5B>v<EFBFBD><1/<2F><>6>tH<><00>,Pw<>3v3[<5B>v<EFBFBD><1/<2F><>6>tH<><00>,P<00><><EFBFBD>J ;<3B>&<26>$<24><><EFBFBD><17>ܦ(<28><00>,Pw<>3v3[<5B>v<EFBFBD><1/<2F><>6>tH<><00>,Pw<>3v3[<5B>v<EFBFBD><1/<2F><>6>tH<><00>,Pw<>3v3[<5B>v<EFBFBD><1/<2F><>6>tH<><00>,P<00>S<EFBFBD>{<7B><>:N}<7D><>/<2F><><EFBFBD><EFBFBD>1X<31><00>,P<00><>Nc,}ח<><D797>*<2A><><EFBFBD>h<EFBFBD><68><EFBFBD>ON<4F><00>,P<00>Vc<56>e<EFBFBD>)B<00>:%<25>Ϸf{<7B>B<EFBFBD><00>,P<00><>Nc,}ח<><D797>*<2A><><EFBFBD>h<EFBFBD><68><EFBFBD>ON<4F><00>,P<00>Vc<56>e<EFBFBD>)B<00>:%<25>Ϸf{<7B>B<EFBFBD><00>,Pw<>3v3[<5B>v<EFBFBD><1/<2F><>6>tH<><00>,Pw<>3v3[<5B>v<EFBFBD><1/<2F><>6>tH<><00>,P<00>S<EFBFBD>{<7B><>:N}<7D><>/<2F><><EFBFBD><EFBFBD>1X<31><00>,PD<>i-'Kس<4B>˕I{"*@W<><57><00>,Psr<73>i
b<EFBFBD>m<EFBFBD>\c&8T<38><54>9<EFBFBD><39><00>,P<00>mT<6D><54><EFBFBD>k<EFBFBD>SDޗ<44><DE97>B<EFBFBD><42>F? <0A><00>,P<00>Vc<56>e<EFBFBD>)B<00>:%<25>Ϸf{<7B>B<EFBFBD><00>,P<62><DF82><EFBFBD>Ѳ<EFBFBD><D1B2><EFBFBD>]<5D>^<5E><><EFBFBD>a<1C><00>,P<00><><EFBFBD>bPĞE<14>Y<EFBFBD><59>i<EFBFBD><69><EFBFBD><EFBFBD>$<24><00>,P<00><>R<EFBFBD><52>_<EFBFBD>6|b/<2F>?<1B><><10><><00>,P/kjn^<5E>b0t)Qqg[-<2D>~<7E><><EFBFBD><00>,P<00>7<><DB87><EFBFBD>53a<33>MD<>^gE<67><00>,P<00>S<EFBFBD>{<7B><>:N}<7D><>/<2F><><EFBFBD><EFBFBD>1X<31><00>,P<00>7<><DB87><EFBFBD>53a<33>MD<>^gE<67><00>,P<00>S<EFBFBD>{<7B><>:N}<7D><>/<2F><><EFBFBD><EFBFBD>1X<31><00>,P<00>7<><DB87><EFBFBD>53a<33>MD<>^gE<67><00>,P<00>S<EFBFBD>{<7B><>:N}<7D><>/<2F><><EFBFBD><EFBFBD>1X<31><00>,P<00>7<><DB87><EFBFBD>53a<33>MD<>^gE<67><00>,P<00>S<EFBFBD>{<7B><>:N}<7D><>/<2F><><EFBFBD><EFBFBD>1X<31><00>,P<00><>:<3A>m<EFBFBD>Hk!<14>`<60><>A<EFBFBD>(<28><><00>,P ^#<19><>*Q<><51><EFBFBD>MmIb<49><62>7<EFBFBD><37><EFBFBD><00>,P<00><><EFBFBD>[Ӭ$֟<> <0A><>q<EFBFBD>w<EFBFBD>|<7C><00>,P<00><><EFBFBD>[Ӭ$֟<> <0A><>q<EFBFBD>w<EFBFBD>|<7C><00>,P@<1D>$<24><>u<EFBFBD>.k<><51>S<1A>bt<62><00>,P<00>mT<6D><54><EFBFBD>k<EFBFBD>SDޗ<44><DE97>B<EFBFBD><42>F? <0A><00>,PD<>i-'Kس<4B>˕I{"*@W<><57><00>,Psr<73>i
b<EFBFBD>m<EFBFBD>\c&8T<38><54>9<EFBFBD><39><00>,PD<>i-'Kس<4B>˕I{"*@W<><57><00>,Psr<73>i
b<EFBFBD>m<EFBFBD>\c&8T<38><54>9<EFBFBD><39><00>,PD<>i-'Kس<4B>˕I{"*@W<><57><00>,Psr<73>i
b<EFBFBD>m<EFBFBD>\c&8T<38><54>9<EFBFBD><39><00>,PL5 &<26><><EFBFBD>ܶ<EFBFBD>(ҠUP<55> O<><00>,P[<08><><EFBFBD><EFBFBD>L<EFBFBD> <0B><>T<EFBFBD>%<12><00>,PZ<><5A>&<26>
`<60><><EFBFBD>2C<32>t<EFBFBD>j<EFBFBD><10><><00>,P<00>,X<19><>*<11><>^<5E><10>x<EFBFBD><78>=<3D><00>,P<00>mT<6D><54><EFBFBD>k<EFBFBD>SDޗ<44><DE97>B<EFBFBD><42>F? <0A><00>,PD<>i-'Kس<4B>˕I{"*@W<><57><00>,Psr<73>i
b<EFBFBD>m<EFBFBD>\c&8T<38><54>9<EFBFBD><39><00>,P<00><><EFBFBD>[Ӭ$֟<> <0A><>q<EFBFBD>w<EFBFBD>|<7C><00>,P<00><><EFBFBD>[Ӭ$֟<> <0A><>q<EFBFBD>w<EFBFBD>|<7C><00>,P<00>mT<6D><54><EFBFBD>k<EFBFBD>SDޗ<44><DE97>B<EFBFBD><42>F? <0A><00>,P<00><>%W<><57>9b<39>O<EFBFBD>8<EFBFBD><38><EFBFBD><05><><EFBFBD><EFBFBD><EFBFBD><00>,Psr<73>i
b<EFBFBD>m<EFBFBD>\c&8T<38><54>9<EFBFBD><39><00>,PD<>i-'Kس<4B>˕I{"*@W<><57><00>,Psr<73>i
b<EFBFBD>m<EFBFBD>\c&8T<38><54>9<EFBFBD><39><00>,P
j<>y[<5B>^<5E><06>_<EFBFBD><11><>^@?<3F><><00>,P<00>mT<6D><54><EFBFBD>k<EFBFBD>SDޗ<44><DE97>B<EFBFBD><42>F? <0A><00>,P<00><><EFBFBD>[Ӭ$֟<> <0A><>q<EFBFBD>w<EFBFBD>|<7C><00>,P<00><><EFBFBD>[Ӭ$֟<> <0A><>q<EFBFBD>w<EFBFBD>|<7C><00>,PZ<><5A>&<26>
`<60><><EFBFBD>2C<32>t<EFBFBD>j<EFBFBD><10><><00>,P<00><17><>@<40>vAU]<5D>L/P<>dW<64><00>,Pw 9<><39><EFBFBD>a)<29><18><>9`Fgf<17><00>,P<00>*<2A><>%LR<4C><52><EFBFBD>?<3F>L<EFBFBD>1%<25><><EFBFBD><00>,P<07>FD<46><44><11><>i<EFBFBD>SY<53><59><EFBFBD>U<EFBFBD><55><00>Uc<00>q<00><00>c<00><00><00>,<00>c<00>c<00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>s]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>r]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>Cq]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00> <00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>?<00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00> <00>?<00>?<00>?<3F>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00> <00>?<00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00> <00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>x]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00> w]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>By]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>?z]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>@~]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>zD}]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><Fo]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>?g]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>h]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>i]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>e,<00>cecL<00><00>cP<00><]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>ab<00><00>cP<00>4]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00><><EFBFBD><EFBFBD>ab<00>/,Ac/c <00>+]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>2]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>U]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>Y]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00> ]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00>
<00><00><00><00><00>'<00><><EFBFBD><EFBFBD><EFBFBD>c@<00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>),Dc)c<00><00><00>1%,<00>c%c<00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>,<00>c<00>cL<00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00><00><00>E@F@?@6@<00>v <00><00>K@L@O@H@;@<00>'<00>'<00><><EFBFBD><EFBFBD><EFBFBD>'<00><><EFBFBD><EFBFBD>Q<00><00><00>v <00>#Qcv<00>Qcv<00>*<00><00>+<00><00>=@<00><00><00><00><00>'<00><><EFBFBD><EFBFBD><EFBFBD>c@<00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>),Dc)c<00><00><00>1%,<00>c%c<00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>,<00>c<00>cL<00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00><00><00>E@F@?@6@<00>v <00><00>K@L@O@H@;@<00>'<00>'<00><><EFBFBD><EFBFBD><EFBFBD>'<00><><EFBFBD><EFBFBD>Q<00><00><00>v <00>#Qcv<00>Qcv<00>*<00><00>+<00><00>=@<00>`,<00>c`cP<00><00> <00><00><00>! <00> <00><00>j <00>i<00><00>T <00>S<00><00> <00><00><00> <00><00><00>D <00>C<00><00><00> <00><00><00>/bK<00>J// Shader generated by Niagara HLSL Translator
// Compile Tags:
// Variable: "bIsInfinitelyLived(False)" StringValue: ""
// Variable: "bCanDieWhenEmitterDeactivates(True)" StringValue: ""
struct NiagaraID
{
int Index;
int AcquireTag;
};
struct NiagaraRandInfo
{
int Seed1;
int Seed2;
int Seed3;
};
cbuffer FNiagaraGlobalParameters
{
float Engine_DeltaTime;
float Engine_InverseDeltaTime;
float Engine_Time;
float Engine_RealTime;
int Engine_QualityLevel;
int Engine_PaddingInt32_0;
int Engine_PaddingInt32_1;
int Engine_PaddingInt32_2;
}
cbuffer FNiagaraSystemParameters
{
float Engine_Owner_TimeSinceRendered;
float Engine_Owner_LODDistance;
float Engine_Owner_LODDistanceFraction;
float Engine_System_Age;
int Engine_Owner_ExecutionState;
int Engine_System_TickCount;
int Engine_System_NumEmitters;
int Engine_System_NumEmittersAlive;
int Engine_System_SignificanceIndex;
int Engine_System_PaddingInt32_0;
int Engine_System_PaddingInt32_1;
int Engine_System_PaddingInt32_2;
}
cbuffer FNiagaraOwnerParameters
{
float4x4 Engine_Owner_SystemLocalToWorld;
float4x4 Engine_Owner_SystemWorldToLocal;
float4x4 Engine_Owner_SystemLocalToWorldTransposed;
float4x4 Engine_Owner_SystemWorldToLocalTransposed;
float4x4 Engine_Owner_SystemLocalToWorldNoScale;
float4x4 Engine_Owner_SystemWorldToLocalNoScale;
float4 Engine_Owner_Rotation;
float4 Engine_Owner_Position;
float4 Engine_Owner_Velocity;
float4 Engine_Owner_SystemXAxis;
float4 Engine_Owner_SystemYAxis;
float4 Engine_Owner_SystemZAxis;
float4 Engine_Owner_Scale;
}
cbuffer FNiagaraEmitterParameters
{
int Engine_Emitter_NumParticles;
int Engine_Emitter_TotalSpawnedParticles;
float Engine_Emitter_SpawnCountScale;
float Emitter_Age;
int Emitter_RandomSeed;
int Engine_Emitter_InstanceSeed;
int Engine_Emitter_PaddingInt32_0;
int Engine_Emitter_PaddingInt32_1;
}
cbuffer FNiagaraExternalParameters
{
float User_HazeSize;
float User_HazeLifetime;
float Constants_Emitter_InitializeParticle_SpriteRotationAngleMin;
float Constants_Emitter_InitializeParticle_SpriteRotationAngleMax;
float4 Constants_Emitter_InitializeParticle_PositionOffset;
float Emitter_DistanceTraveled;
int Constants_Emitter_SubUVAnimation_StartFrame;
int Constants_Emitter_SubUVAnimation_EndFrame;
float User_HazeRadius;
int Constants_Emitter_SphereLocation_RandomSeed;
float Constants_Emitter_SphereLocation_SurfaceOnlyBandThickness;
float4 Constants_Emitter_SphereLocation_NonUniformScale;
float4 Constants_Emitter_SphereLocation_SphereOrientationAxis;
float4 Constants_Emitter_SphereLocation_Offset;
int Constants_Emitter_SphereLocation_SpawnGroupMask;
float User_HazeAttraction;
float4 Constants_Emitter_PointAttractionForce_AttractorPositionOffset;
float Constants_Emitter_PointAttractionForce_AttractionRadius;
float Constants_Emitter_PointAttractionForce_FalloffExponent;
float Constants_Emitter_PointAttractionForce_KillRadius;
float Constants_Emitter_SolveForcesAndVelocity_SpeedLimit;
float Constants_Emitter_SolveForcesAndVelocity_AccelerationLimit;
float Constants_Emitter_FloatFromCurve002_ScaleCurve;
float Constants_Emitter_DynamicMaterialParameters_Index0Param2;
float Constants_Emitter_DynamicMaterialParameters_Index0Param3;
float Constants_Emitter_DynamicMaterialParameters_Index0Param4;
float Emitter_SpawnRate;
}
cbuffer PREV_FNiagaraGlobalParameters
{
float PREV_Engine_DeltaTime;
float PREV_Engine_InverseDeltaTime;
float PREV_Engine_Time;
float PREV_Engine_RealTime;
int PREV_Engine_QualityLevel;
int PREV_Engine_PaddingInt32_0;
int PREV_Engine_PaddingInt32_1;
int PREV_Engine_PaddingInt32_2;
}
cbuffer PREV_FNiagaraSystemParameters
{
float PREV_Engine_Owner_TimeSinceRendered;
float PREV_Engine_Owner_LODDistance;
float PREV_Engine_Owner_LODDistanceFraction;
float PREV_Engine_System_Age;
int PREV_Engine_Owner_ExecutionState;
int PREV_Engine_System_TickCount;
int PREV_Engine_System_NumEmitters;
int PREV_Engine_System_NumEmittersAlive;
int PREV_Engine_System_SignificanceIndex;
int PREV_Engine_System_PaddingInt32_0;
int PREV_Engine_System_PaddingInt32_1;
int PREV_Engine_System_PaddingInt32_2;
}
cbuffer PREV_FNiagaraOwnerParameters
{
float4x4 PREV_Engine_Owner_SystemLocalToWorld;
float4x4 PREV_Engine_Owner_SystemWorldToLocal;
float4x4 PREV_Engine_Owner_SystemLocalToWorldTransposed;
float4x4 PREV_Engine_Owner_SystemWorldToLocalTransposed;
float4x4 PREV_Engine_Owner_SystemLocalToWorldNoScale;
float4x4 PREV_Engine_Owner_SystemWorldToLocalNoScale;
float4 PREV_Engine_Owner_Rotation;
float4 PREV_Engine_Owner_Position;
float4 PREV_Engine_Owner_Velocity;
float4 PREV_Engine_Owner_SystemXAxis;
float4 PREV_Engine_Owner_SystemYAxis;
float4 PREV_Engine_Owner_SystemZAxis;
float4 PREV_Engine_Owner_Scale;
}
cbuffer PREV_FNiagaraEmitterParameters
{
int PREV_Engine_Emitter_NumParticles;
int PREV_Engine_Emitter_TotalSpawnedParticles;
float PREV_Engine_Emitter_SpawnCountScale;
float PREV_Emitter_Age;
int PREV_Emitter_RandomSeed;
int PREV_Engine_Emitter_InstanceSeed;
int PREV_Engine_Emitter_PaddingInt32_0;
int PREV_Engine_Emitter_PaddingInt32_1;
}
cbuffer PREV_FNiagaraExternalParameters
{
float PREV_User_HazeSize;
float PREV_User_HazeLifetime;
float PREV_Constants_Emitter_InitializeParticle_SpriteRotationAngleMin;
float PREV_Constants_Emitter_InitializeParticle_SpriteRotationAngleMax;
float4 PREV_Constants_Emitter_InitializeParticle_PositionOffset;
float PREV_Emitter_DistanceTraveled;
int PREV_Constants_Emitter_SubUVAnimation_StartFrame;
int PREV_Constants_Emitter_SubUVAnimation_EndFrame;
float PREV_User_HazeRadius;
int PREV_Constants_Emitter_SphereLocation_RandomSeed;
float PREV_Constants_Emitter_SphereLocation_SurfaceOnlyBandThickness;
float4 PREV_Constants_Emitter_SphereLocation_NonUniformScale;
float4 PREV_Constants_Emitter_SphereLocation_SphereOrientationAxis;
float4 PREV_Constants_Emitter_SphereLocation_Offset;
int PREV_Constants_Emitter_SphereLocation_SpawnGroupMask;
float PREV_User_HazeAttraction;
float4 PREV_Constants_Emitter_PointAttractionForce_AttractorPositionOffset;
float PREV_Constants_Emitter_PointAttractionForce_AttractionRadius;
float PREV_Constants_Emitter_PointAttractionForce_FalloffExponent;
float PREV_Constants_Emitter_PointAttractionForce_KillRadius;
float PREV_Constants_Emitter_SolveForcesAndVelocity_SpeedLimit;
float PREV_Constants_Emitter_SolveForcesAndVelocity_AccelerationLimit;
float PREV_Constants_Emitter_FloatFromCurve002_ScaleCurve;
float PREV_Constants_Emitter_DynamicMaterialParameters_Index0Param2;
float PREV_Constants_Emitter_DynamicMaterialParameters_Index0Param3;
float PREV_Constants_Emitter_DynamicMaterialParameters_Index0Param4;
float PREV_Emitter_SpawnRate;
}
struct FParamMap0_User
{
float HazeAttraction;
float HazeLifetime;
float HazeRadius;
float HazeSize;
};
struct FParamMap0_Transient
{
bool FirstFrame;
float PhysicsDeltaTime;
float PhysicsDrag;
float3 PhysicsForce;
};
struct FParamMap0_SphereLocation
{
bool HemisphereX;
bool HemisphereY;
bool HemisphereZ;
bool NormalizeThickness;
int OffsetCoordinateSpace;
int SphereCoordinateSpace;
float3 SphereOrigin;
float SphereRadius;
int SurfaceExpansionMode;
};
struct FParamMap0_SolveForcesAndVelocity
{
float DeltaTime;
float3 Force;
float Mass;
float3 Position;
float3 PreviousVelocity;
float3 Velocity;
bool WritetoIntrinsicProperties;
};
struct FParamMap0_PointAttractionForce
{
float AttractionStrength;
float3 AttractorPosition;
float3 PositionToAttract;
bool UseFalloff;
};
struct FParamMap0_ParticleState
{
float DeltaTime;
float Lifetime;
};
struct FParamMap0_Particles_Previous
{
float3 Position;
float SpriteRotation;
float2 SpriteSize;
float3 Velocity;
};
struct FParamMap0_Particles_Presolve
{
float3 PhysicsForce;
float3 Position;
float3 Velocity;
};
struct FParamMap0_Particles
{
float Age;
float DistanceTraveled;
float4 DynamicMaterialParameter;
NiagaraID ID;
float Lifetime;
float Mass;
float MaterialRandom;
float NormalizedAge;
float3 Position;
FParamMap0_Particles_Presolve Presolve;
FParamMap0_Particles_Previous Previous;
float RibbonUVDistance;
float SpriteRotation;
float2 SpriteSize;
float SubImageIndex;
int UniqueID;
float2 UVScale;
float3 Velocity;
};
struct FParamMap0_OUTPUT_VAR_SphereLocation
{
float3 Position;
float3 SphereNormal;
float3 SphereVector;
};
struct FParamMap0_OUTPUT_VAR_SolveForcesAndVelocity
{
float IncomingPhysicsDrag;
float3 IncomingPhysicsForce;
float3 Position;
float3 Velocity;
};
struct FParamMap0_OUTPUT_VAR_ParticleState
{
bool FirstFrame;
};
struct FParamMap0_OUTPUT_VAR
{
FParamMap0_OUTPUT_VAR_ParticleState ParticleState;
FParamMap0_OUTPUT_VAR_SolveForcesAndVelocity SolveForcesAndVelocity;
FParamMap0_OUTPUT_VAR_SphereLocation SphereLocation;
};
struct FParamMap0_Local_SubUVAnimation
{
float EndFrame;
float StartFrame;
};
struct FParamMap0_Local_SphereLocation
{
float3 SphereVector;
};
struct FParamMap0_Local_SolveForcesAndVelocity
{
float DeltaTime;
float Mass;
float3 PhysicsForce;
};
struct FParamMap0_Local_PointAttractionForce
{
float3 AttractedPosition;
float3 AttractionForce;
float3 AttractorOrigin;
bool IsWithinAttractor;
float3 PointOriginVec;
float PointOriginVecLength;
};
struct FParamMap0_Local_InitializeParticle
{
float InitRIbbonDistance;
};
struct FParamMap0_Local
{
FParamMap0_Local_InitializeParticle InitializeParticle;
FParamMap0_Local_PointAttractionForce PointAttractionForce;
FParamMap0_Local_SolveForcesAndVelocity SolveForcesAndVelocity;
FParamMap0_Local_SphereLocation SphereLocation;
FParamMap0_Local_SubUVAnimation SubUVAnimation;
};
struct FParamMap0_Interpolation
{
float Emitter_InterpSpawnStartDt;
int Emitter_SpawnGroup;
float Emitter_SpawnInterval;
int InterpSpawn_Index;
float InterpSpawn_InvSpawnTime;
float InterpSpawn_InvUpdateTime;
float InterpSpawn_SpawnTime;
float InterpSpawn_UpdateTime;
float SpawnInterp;
};
struct FParamMap0_InitializeParticle
{
float Lifetime;
float MaterialRandom;
int PositionOffsetCoordinateSpace;
float UniformSpriteSize;
};
struct FParamMap0_FloatFromCurve002
{
float CurveIndex;
};
struct FParamMap0_FloatFromCurve001
{
float CurveIndex;
float ScaleCurve;
};
struct FParamMap0_Engine_System
{
float Age;
int NumEmitters;
int NumEmittersAlive;
int PaddingInt32_0;
int PaddingInt32_1;
int PaddingInt32_2;
int SignificanceIndex;
int TickCount;
};
struct FParamMap0_Engine_Owner
{
int ExecutionState;
float LODDistance;
float LODDistanceFraction;
float3 Position;
float4 Rotation;
float3 Scale;
float4x4 SystemLocalToWorld;
float4x4 SystemLocalToWorldNoScale;
float4x4 SystemLocalToWorldTransposed;
float4x4 SystemWorldToLocal;
float4x4 SystemWorldToLocalNoScale;
float4x4 SystemWorldToLocalTransposed;
float3 SystemXAxis;
float3 SystemYAxis;
float3 SystemZAxis;
float TimeSinceRendered;
float3 Velocity;
};
struct FParamMap0_Engine_Emitter
{
int InstanceSeed;
int NumParticles;
int PaddingInt32_0;
int PaddingInt32_1;
float SpawnCountScale;
int TotalSpawnedParticles;
};
struct FParamMap0_Engine
{
float DeltaTime;
FParamMap0_Engine_Emitter Emitter;
int ExecutionCount;
float InverseDeltaTime;
FParamMap0_Engine_Owner Owner;
int PaddingInt32_0;
int PaddingInt32_1;
int PaddingInt32_2;
int QualityLevel;
float RealTime;
FParamMap0_Engine_System System;
float Time;
};
struct FParamMap0_Emitter
{
float Age;
float DistanceTraveled;
int RandomSeed;
float SpawnRate;
};
struct FParamMap0_DynamicMaterialParameters
{
float Index0Param1;
bool Param0WriteEnabled;
bool Param1WriteEnabled;
bool Param2WriteEnabled;
bool Param3WriteEnabled;
};
struct FParamMap0_DataInstance
{
bool Alive;
};
struct FParamMap0
{
FParamMap0_DataInstance DataInstance;
FParamMap0_DynamicMaterialParameters DynamicMaterialParameters;
FParamMap0_Emitter Emitter;
FParamMap0_Engine Engine;
FParamMap0_FloatFromCurve001 FloatFromCurve001;
FParamMap0_FloatFromCurve002 FloatFromCurve002;
FParamMap0_InitializeParticle InitializeParticle;
FParamMap0_Interpolation Interpolation;
FParamMap0_Local Local;
FParamMap0_OUTPUT_VAR OUTPUT_VAR;
FParamMap0_Particles Particles;
FParamMap0_ParticleState ParticleState;
FParamMap0_PointAttractionForce PointAttractionForce;
FParamMap0_SolveForcesAndVelocity SolveForcesAndVelocity;
FParamMap0_SphereLocation SphereLocation;
FParamMap0_Transient Transient;
FParamMap0_User User;
};
struct FSimulationContext
{
FParamMap0 MapSpawn;
FParamMap0 MapUpdate;
};
static float HackSpawnInterp = 1.0;
void CalculateRandomRangeFloat_Particle_Particle_ScriptUsage4_EvaluationType_NewEnumerator0_FixedRandomSeed_false_OverrideSeed_false_RandomnessMode_NewEnumerator0_Func_(float In_FloatMin, float In_FloatMax, int In_Seed, int In_Engine_System_TickCount, int In_Particles_UniqueID, int In_Emitter_RandomSeed, int In_Engine_Emitter_InstanceSeed, out float Out_RandomFloat, out bool Out_IsDeterministic, inout FSimulationContext Context);
void CalculateRandomRangeInteger_Particle_Particle_ScriptUsage4_EvaluationType_NewEnumerator0_FixedRandomSeed_false_OverrideSeed_false_RandomnessMode_NewEnumerator0_Func_(int In_IntegerMin, int In_IntegerMax, int In_Seed, int In_Engine_System_TickCount, int In_Particles_UniqueID, int In_Emitter_RandomSeed, int In_Engine_Emitter_InstanceSeed, out int Out_RandomValue, out bool Out_IsDeterministic, out bool Out_IsFixedRandomSeed, inout FSimulationContext Context);
void CalculateRandomBool_EvaluationType_NewEnumerator0_FixedRandomSeed_false_OverrideSeed_false_RandomnessMode_NewEnumerator0_Func_(int In_Seed, out bool Out_RandomBool, inout FSimulationContext Context);
void InitializeParticle_SimulationPosition_Emitter_Func_(out float3 Out_OutPosition, inout FSimulationContext Context);
void InitializeParticle_Emitter_Func_(inout FSimulationContext Context);
void GetRandomInfo_Emitter_Determinism_false_Particle_Func_(int In_Seed, int In_Engine_System_TickCount, bool In_OverrideSeed, int In_Particles_UniqueID, int In_Emitter_RandomSeed, bool In_FixedOverrideSeed, int In_RandomnessMode, out NiagaraRandInfo Out_RandomInfo, out bool Out_UseDeterministicRandoms, inout FSimulationContext Context);
void RandomRangeInteger_Func_(int In_Min, int In_Max, int In_Seed, int In_RandomnessMode, bool In_OverrideSeed, out int Out_Result, inout FSimulationContext Context);
void SubUVAnimation_Emitter_Func_(inout FSimulationContext Context);
void CalculateRandomRange_Particle_Particle_ScriptUsage4_EvaluationType_NewEnumerator0_FixedRandomSeed_false_OverrideSeed_false_RandomnessMode_NewEnumerator0_Func_(float3 In_RangeMin, float3 In_RangeMax, int In_Seed, int In_Engine_System_TickCount, int In_Particles_UniqueID, int In_Emitter_RandomSeed, int In_Engine_Emitter_InstanceSeed, out float3 Out_RandomValue, out bool Out_IsDeterministic, inout FSimulationContext Context);
void CalculateRandomPointInSphere_EvaluationType_NewEnumerator0_FixedRandomSeed_false_OverrideSeed_false_RandomnessMode_NewEnumerator0_Func_(float In_InnerRadius, float In_OuterRadius, int In_Seed, out float3 Out_Ouput, inout FSimulationContext Context);
void CustomHlsl99D2D00244511A096EA5088DE8D89968_Func_(bool In_X, bool In_Y, bool In_Z, out float3 Out_Output);
void TransformBase_Func_(int In_SourceSpace, int In_DestinationSpace, float4x4 In_LocalToWorldTransform, float4x4 In_WorldToLocalTransform, bool In_bLocalSpace, out bool Out_bUseOriginal, out float4x4 Out_OutTransform, out bool Out_LocalToWorld, inout FSimulationContext Context);
void SphereLocation_NF_TransformVector_Emitter_Func_(float3 In_InVector, int In_SourceSpace, int In_DestinationSpace, bool In_ApplyScale, out float3 Out_OutVector, inout FSimulationContext Context);
void SphereLocation_TransformVector001_Emitter_Func_(float3 In_InVector, int In_SourceSpace, int In_DestinationSpace, bool In_ApplyScale, out float3 Out_OutVector, inout FSimulationContext Context);
void SphereLocation_Emitter_Func_(inout FSimulationContext Context);
void ParticleState_Emitter_Func_(inout FSimulationContext Context);
void SampleCurve_Emitter_FloatFromCurve001_FloatCurve(float In_X, out float Out_Value);
void FloatFromCurve001_Emitter_Func_(out float Out_Value, inout FSimulationContext Context);
void PointAttractionForce_SimulationPosition_Emitter_Func_(out float3 Out_OutPosition, inout FSimulationContext Context);
void DirectionAndLengthSafe_Func_(float3 In_V, float3 In_Fallback, float In_Threshold, float In_FallbackLength, out float3 Out_Direction, out float Out_Length, out bool Out_BelowThreshold, inout FSimulationContext Context);
void PointAttractionForce_Emitter_Func_(inout FSimulationContext Context);
void SolveForcesAndVelocity_Emitter_Func_(inout FSimulationContext Context);
void SampleCurve_Emitter_FloatFromCurve002_FloatCurve(float In_X, out float Out_Value);
void FloatFromCurve002_Emitter_Func_(out float Out_Value, inout FSimulationContext Context);
void DynamicMaterialParameters_Emitter_Func_(inout FSimulationContext Context);
float GetSpawnInterpolation();
void CalculateRandomRangeFloat_Particle_Particle_ScriptUsage4_EvaluationType_NewEnumerator0_FixedRandomSeed_false_OverrideSeed_false_RandomnessMode_NewEnumerator0_Func_(float In_FloatMin, float In_FloatMax, int In_Seed, int In_Engine_System_TickCount, int In_Particles_UniqueID, int In_Emitter_RandomSeed, int In_Engine_Emitter_InstanceSeed, out float Out_RandomFloat, out bool Out_IsDeterministic, inout FSimulationContext Context)
{
float Result = In_FloatMax - In_FloatMin;
float Result1 = rand_float(Result);
float Result2 = In_FloatMin + Result1;
bool Constant25 = false;
Out_RandomFloat = Result2;
Out_IsDeterministic = Constant25;
}
void CalculateRandomRangeInteger_Particle_Particle_ScriptUsage4_EvaluationType_NewEnumerator0_FixedRandomSeed_false_OverrideSeed_false_RandomnessMode_NewEnumerator0_Func_(int In_IntegerMin, int In_IntegerMax, int In_Seed, int In_Engine_System_TickCount, int In_Particles_UniqueID, int In_Emitter_RandomSeed, int In_Engine_Emitter_InstanceSeed, out int Out_RandomValue, out bool Out_IsDeterministic, out bool Out_IsFixedRandomSeed, inout FSimulationContext Context)
{
int Result3 = In_IntegerMax - In_IntegerMin;
int Constant36 = 1;
int Result4 = Result3 + Constant36;
int Result5 = rand_int(Result4);
int Result6 = In_IntegerMin + Result5;
bool Constant37 = false;
bool Constant38 = false;
Out_RandomValue = Result6;
Out_IsDeterministic = Constant37;
Out_IsFixedRandomSeed = Constant38;
}
void CalculateRandomBool_EvaluationType_NewEnumerator0_FixedRandomSeed_false_OverrideSeed_false_RandomnessMode_NewEnumerator0_Func_(int In_Seed, out bool Out_RandomBool, inout FSimulationContext Context)
{
int Constant30 = 0;
int Constant31 = 1;
int Constant32 = (0);
int Constant33 = 0;
int Constant34 = (0);
int Constant35 = (0);
int CalculateRandomRangeInteger_Particle_Particle_ScriptUsage4_EvaluationType_NewEnumerator0_FixedRandomSeed_false_OverrideSeed_false_RandomnessMode_NewEnumerator0_Func_Output_RandomValue;
bool CalculateRandomRangeInteger_Particle_Particle_ScriptUsage4_EvaluationType_NewEnumerator0_FixedRandomSeed_false_OverrideSeed_false_RandomnessMode_NewEnumerator0_Func_Output_IsDeterministic;
bool CalculateRandomRangeInteger_Particle_Particle_ScriptUsage4_EvaluationType_NewEnumerator0_FixedRandomSeed_false_OverrideSeed_false_RandomnessMode_NewEnumerator0_Func_Output_IsFixedRandomSeed;
CalculateRandomRangeInteger_Particle_Particle_ScriptUsage4_EvaluationType_NewEnumerator0_FixedRandomSeed_false_OverrideSeed_false_RandomnessMode_NewEnumerator0_Func_(Constant30, Constant31, In_Seed, Constant32, Constant33, Constant34, Constant35, CalculateRandomRangeInteger_Particle_Particle_ScriptUsage4_EvaluationType_NewEnumerator0_FixedRandomSeed_false_OverrideSeed_false_RandomnessMode_NewEnumerator0_Func_Output_RandomValue, CalculateRandomRangeInteger_Particle_Particle_ScriptUsage4_EvaluationType_NewEnumerator0_FixedRandomSeed_false_OverrideSeed_false_RandomnessMode_NewEnumerator0_Func_Output_IsDeterministic, CalculateRandomRangeInteger_Particle_Particle_ScriptUsage4_EvaluationType_NewEnumerator0_FixedRandomSeed_false_OverrideSeed_false_RandomnessMode_NewEnumerator0_Func_Output_IsFixedRandomSeed, Context);
bool RandomBool;
RandomBool = CalculateRandomRangeInteger_Particle_Particle_ScriptUsage4_EvaluationType_NewEnumerator0_FixedRandomSeed_false_OverrideSeed_false_RandomnessMode_NewEnumerator0_Func_Output_RandomValue;
Out_RandomBool = RandomBool;
}
void InitializeParticle_SimulationPosition_Emitter_Func_(out float3 Out_OutPosition, inout FSimulationContext Context)
{
bool Constant49 = false;
float3 Constant50 = float3(0,0,0);
float3 Constant51 = float3(0.0, 0.0, 0.0);
float3 Vector_SelectResult = Constant51;
if(Constant49 == 1)
{
Vector_SelectResult = Constant50;
}
if(Constant49 == 0)
{
Vector_SelectResult = Context.MapSpawn.Engine.Owner.Position;
}
Out_OutPosition = Vector_SelectResult;
}
void InitializeParticle_Emitter_Func_(inout FSimulationContext Context)
{
Context.MapSpawn.Particles.MaterialRandom = Context.MapSpawn.InitializeParticle.MaterialRandom;
Context.MapSpawn.Particles.Lifetime = Context.MapSpawn.InitializeParticle.Lifetime;
float Constant28 = 1;
Context.MapSpawn.Particles.Mass = Constant28;
float2 Output1;
Output1.x = Context.MapSpawn.InitializeParticle.UniformSpriteSize;
Output1.y = Context.MapSpawn.InitializeParticle.UniformSpriteSize;
Context.MapSpawn.Particles.SpriteSize = Output1;
int Constant29 = -1;
bool CalculateRandomBool_EvaluationType_NewEnumerator0_FixedRandomSeed_false_OverrideSeed_false_RandomnessMode_NewEnumerator0_Func_Output_RandomBool;
CalculateRandomBool_EvaluationType_NewEnumerator0_FixedRandomSeed_false_OverrideSeed_false_RandomnessMode_NewEnumerator0_Func_(Constant29, CalculateRandomBool_EvaluationType_NewEnumerator0_FixedRandomSeed_false_OverrideSeed_false_RandomnessMode_NewEnumerator0_Func_Output_RandomBool, Context);
float Constant39 = -1;
float Constant40 = 1;
float float_IfResult;
if(CalculateRandomBool_EvaluationType_NewEnumerator0_FixedRandomSeed_false_OverrideSeed_false_RandomnessMode_NewEnumerator0_Func_Output_RandomBool)
{
float_IfResult = Constant39;
}
else
{
float_IfResult = Constant40;
}
int Constant41 = 645645;
bool CalculateRandomBool_EvaluationType_NewEnumerator0_FixedRandomSeed_false_OverrideSeed_false_RandomnessMode_NewEnumerator0_Func_Output_RandomBool1;
CalculateRandomBool_EvaluationType_NewEnumerator0_FixedRandomSeed_false_OverrideSeed_false_RandomnessMode_NewEnumerator0_Func_(Constant41, CalculateRandomBool_EvaluationType_NewEnumerator0_FixedRandomSeed_false_OverrideSeed_false_RandomnessMode_NewEnumerator0_Func_Output_RandomBool1, Context);
float Constant42 = -1;
float Constant43 = 1;
float float_IfResult1;
if(CalculateRandomBool_EvaluationType_NewEnumerator0_FixedRandomSeed_false_OverrideSeed_false_RandomnessMode_NewEnumerator0_Func_Output_RandomBool1)
{
float_IfResult1 = Constant42;
}
else
{
float_IfResult1 = Constant43;
}
float2 Output11;
Output11.x = float_IfResult;
Output11.y = float_IfResult1;
Context.MapSpawn.Particles.UVScale = Output11;
int Constant44 = -1;
int Constant45 = (0);
int Constant46 = 0;
int Constant47 = (0);
int Constant48 = (0);
float CalculateRandomRangeFloat_Particle_Particle_ScriptUsage4_EvaluationType_NewEnumerator0_FixedRandomSeed_false_OverrideSeed_false_RandomnessMode_NewEnumerator0_Func_Output_RandomFloat1;
bool CalculateRandomRangeFloat_Particle_Particle_ScriptUsage4_EvaluationType_NewEnumerator0_FixedRandomSeed_false_OverrideSeed_false_RandomnessMode_NewEnumerator0_Func_Output_IsDeterministic1;
CalculateRandomRangeFloat_Particle_Particle_ScriptUsage4_EvaluationType_NewEnumerator0_FixedRandomSeed_false_OverrideSeed_false_RandomnessMode_NewEnumerator0_Func_(Constants_Emitter_InitializeParticle_SpriteRotationAngleMin, Constants_Emitter_InitializeParticle_SpriteRotationAngleMax, Constant44, Constant45, Constant46, Constant47, Constant48, CalculateRandomRangeFloat_Particle_Particle_ScriptUsage4_EvaluationType_NewEnumerator0_FixedRandomSeed_false_OverrideSeed_false_RandomnessMode_NewEnumerator0_Func_Output_RandomFloat1, CalculateRandomRangeFloat_Particle_Particle_ScriptUsage4_EvaluationType_NewEnumerator0_FixedRandomSeed_false_OverrideSeed_false_RandomnessMode_NewEnumerator0_Func_Output_IsDeterministic1, Context);
Context.MapSpawn.Particles.SpriteRotation = CalculateRandomRangeFloat_Particle_Particle_ScriptUsage4_EvaluationType_NewEnumerator0_FixedRandomSeed_false_OverrideSeed_false_RandomnessMode_NewEnumerator0_Func_Output_RandomFloat1;
float3 InitializeParticle_SimulationPosition_Emitter_Func_Output_OutPosition;
InitializeParticle_SimulationPosition_Emitter_Func_(InitializeParticle_SimulationPosition_Emitter_Func_Output_OutPosition, Context);
float Constant52 = 0;
float3 Result7 = Constants_Emitter_InitializeParticle_PositionOffset.xyz * Constant52;
float3 Result8 = InitializeParticle_SimulationPosition_Emitter_Func_Output_OutPosition + Result7;
Context.MapSpawn.Particles.Position = Result8;
Context.MapSpawn.Local.InitializeParticle.InitRIbbonDistance = Context.MapSpawn.Particles.RibbonUVDistance;
}
void GetRandomInfo_Emitter_Determinism_false_Particle_Func_(int In_Seed, int In_Engine_System_TickCount, bool In_OverrideSeed, int In_Particles_UniqueID, int In_Emitter_RandomSeed, bool In_FixedOverrideSeed, int In_RandomnessMode, out NiagaraRandInfo Out_RandomInfo, out bool Out_UseDeterministicRandoms, inout FSimulationContext Context)
{
bool Constant63 = false;
int Constant64 = 0;
bool Result9 = NiagaraAll(In_RandomnessMode == Constant64);
bool Result10 = Constant63 && Result9;
int Constant65 = 1;
bool Result11 = NiagaraAll(In_RandomnessMode == Constant65);
bool Result12 = Result10 || Result11;
int Seed_IfResult;
if(In_OverrideSeed)
{
Seed_IfResult = In_Seed;
}
else
{
Seed_IfResult = Context.MapSpawn.Emitter.RandomSeed;
}
int Constant66 = 0;
int Constant67 = 0;
int Seed1_IfResult;
int Seed2_IfResult;
int Seed3_IfResult;
if(In_FixedOverrideSeed)
{
Seed1_IfResult = Seed_IfResult;
Seed2_IfResult = Constant66;
Seed3_IfResult = Constant67;
}
else
{
Seed1_IfResult = Context.MapSpawn.Particles.UniqueID;
Seed2_IfResult = Context.MapSpawn.Engine.System.TickCount;
Seed3_IfResult = Seed_IfResult;
}
int Constant68 = -1;
int Constant69 = -1;
int Constant70 = -1;
int Seed1_IfResult1;
int Seed2_IfResult1;
int Seed3_IfResult1;
if(Result12)
{
Seed1_IfResult1 = Seed1_IfResult;
Seed2_IfResult1 = Seed2_IfResult;
Seed3_IfResult1 = Seed3_IfResult;
}
else
{
Seed1_IfResult1 = Constant68;
Seed2_IfResult1 = Constant69;
Seed3_IfResult1 = Constant70;
}
NiagaraRandInfo Output12;
Output12.Seed1 = Seed1_IfResult1;
Output12.Seed2 = Seed2_IfResult1;
Output12.Seed3 = Seed3_IfResult1;
Out_RandomInfo = Output12;
Out_UseDeterministicRandoms = Result12;
}
void RandomRangeInteger_Func_(int In_Min, int In_Max, int In_Seed, int In_RandomnessMode, bool In_OverrideSeed, out int Out_Result, inout FSimulationContext Context)
{
int Constant58 = (0);
bool Constant59 = false;
int Constant60 = 0;
int Constant61 = (0);
bool Constant62 = false;
NiagaraRandInfo GetRandomInfo_Emitter_Determinism_false_Particle_Func_Output_RandomInfo;
bool GetRandomInfo_Emitter_Determinism_false_Particle_Func_Output_UseDeterministicRandoms;
GetRandomInfo_Emitter_Determinism_false_Particle_Func_(In_Seed, Constant58, In_OverrideSeed, Constant60, Constant61, Constant62, In_RandomnessMode, GetRandomInfo_Emitter_Determinism_false_Particle_Func_Output_RandomInfo, GetRandomInfo_Emitter_Determinism_false_Particle_Func_Output_UseDeterministicRandoms, Context);
int Result13 = In_Max - In_Min;
int Constant71 = 1;
int Result14 = Result13 + Constant71;
int Seed1;
int Seed2;
int Seed3;
Seed1 = GetRandomInfo_Emitter_Determinism_false_Particle_Func_Output_RandomInfo.Seed1;
Seed2 = GetRandomInfo_Emitter_Determinism_false_Particle_Func_Output_RandomInfo.Seed2;
Seed3 = GetRandomInfo_Emitter_Determinism_false_Particle_Func_Output_RandomInfo.Seed3;
int Result15 = rand_int(Result14, Seed1, Seed2, Seed3);
int Result16 = rand_int(Result14);
int Random_IfResult;
if(GetRandomInfo_Emitter_Determinism_false_Particle_Func_Output_UseDeterministicRandoms)
{
Random_IfResult = Result15;
}
else
{
Random_IfResult = Result16;
}
int Result17 = In_Min + Random_IfResult;
Out_Result = Result17;
}
void SubUVAnimation_Emitter_Func_(inout FSimulationContext Context)
{
float NiagaraFloat;
NiagaraFloat = Constants_Emitter_SubUVAnimation_StartFrame;
float NiagaraFloat1;
NiagaraFloat1 = Constants_Emitter_SubUVAnimation_EndFrame;
Context.MapSpawn.Local.SubUVAnimation.StartFrame = NiagaraFloat;
Context.MapSpawn.Local.SubUVAnimation.EndFrame = NiagaraFloat1;
int Constant55 = -1;
int Constant56 = 0;
bool Constant57 = false;
int RandomRangeInteger_Func_Output_Result;
RandomRangeInteger_Func_(Constants_Emitter_SubUVAnimation_StartFrame, Constants_Emitter_SubUVAnimation_EndFrame, Constant55, Constant56, Constant57, RandomRangeInteger_Func_Output_Result, Context);
float NiagaraFloat2;
NiagaraFloat2 = RandomRangeInteger_Func_Output_Result;
Context.MapSpawn.Particles.SubImageIndex = NiagaraFloat2;
}
void CalculateRandomRange_Particle_Particle_ScriptUsage4_EvaluationType_NewEnumerator0_FixedRandomSeed_false_OverrideSeed_false_RandomnessMode_NewEnumerator0_Func_(float3 In_RangeMin, float3 In_RangeMax, int In_Seed, int In_Engine_System_TickCount, int In_Particles_UniqueID, int In_Emitter_RandomSeed, int In_Engine_Emitter_InstanceSeed, out float3 Out_RandomValue, out bool Out_IsDeterministic, inout FSimulationContext Context)
{
float3 Result27 = In_RangeMax - In_RangeMin;
float3 Result28 = rand(Result27);
float3 Result29 = In_RangeMin + Result28;
bool Constant93 = false;
Out_RandomValue = Result29;
Out_IsDeterministic = Constant93;
}
void CalculateRandomPointInSphere_EvaluationType_NewEnumerator0_FixedRandomSeed_false_OverrideSeed_false_RandomnessMode_NewEnumerator0_Func_(float In_InnerRadius, float In_OuterRadius, int In_Seed, out float3 Out_Ouput, inout FSimulationContext Context)
{
float Constant84 = 0;
float Constant85 = -1;
float Constant86 = 3;
float Result24 = pow(max(0, In_InnerRadius),Constant86);
float3 Output13;
Output13.x = Constant84;
Output13.y = Constant85;
Output13.z = Result24;
float Result25 = TWO_PI;
float Constant87 = 1;
float Constant88 = 3;
float Result26 = pow(max(0, In_OuterRadius),Constant88);
float3 Output14;
Output14.x = Result25;
Output14.y = Constant87;
Output14.z = Result26;
int Constant89 = (0);
int Constant90 = 0;
int Constant91 = (0);
int Constant92 = (0);
float3 CalculateRandomRange_Particle_Particle_ScriptUsage4_EvaluationType_NewEnumerator0_FixedRandomSeed_false_OverrideSeed_false_RandomnessMode_NewEnumerator0_Func_Output_RandomValue;
bool CalculateRandomRange_Particle_Particle_ScriptUsage4_EvaluationType_NewEnumerator0_FixedRandomSeed_false_OverrideSeed_false_RandomnessMode_NewEnumerator0_Func_Output_IsDeterministic;
CalculateRandomRange_Particle_Particle_ScriptUsage4_EvaluationType_NewEnumerator0_FixedRandomSeed_false_OverrideSeed_false_RandomnessMode_NewEnumerator0_Func_(Output13, Output14, In_Seed, Constant89, Constant90, Constant91, Constant92, CalculateRandomRange_Particle_Particle_ScriptUsage4_EvaluationType_NewEnumerator0_FixedRandomSeed_false_OverrideSeed_false_RandomnessMode_NewEnumerator0_Func_Output_RandomValue, CalculateRandomRange_Particle_Particle_ScriptUsage4_EvaluationType_NewEnumerator0_FixedRandomSeed_false_OverrideSeed_false_RandomnessMode_NewEnumerator0_Func_Output_IsDeterministic, Context);
float Phi;
float CosASC40ThetaASC41;
float RASC943;
Phi = CalculateRandomRange_Particle_Particle_ScriptUsage4_EvaluationType_NewEnumerator0_FixedRandomSeed_false_OverrideSeed_false_RandomnessMode_NewEnumerator0_Func_Output_RandomValue.x;
CosASC40ThetaASC41 = CalculateRandomRange_Particle_Particle_ScriptUsage4_EvaluationType_NewEnumerator0_FixedRandomSeed_false_OverrideSeed_false_RandomnessMode_NewEnumerator0_Func_Output_RandomValue.y;
RASC943 = CalculateRandomRange_Particle_Particle_ScriptUsage4_EvaluationType_NewEnumerator0_FixedRandomSeed_false_OverrideSeed_false_RandomnessMode_NewEnumerator0_Func_Output_RandomValue.z;
float Result30 = cos(Phi);
float Result31 = CosASC40ThetaASC41 * CosASC40ThetaASC41;
float Result32 = 1 - Result31;
float Result33 = sqrt(Result32);
float Result34 = Result30 * Result33;
float Result35 = sin(Phi);
float Result36 = Result35 * Result33;
float3 Output15;
Output15.x = Result34;
Output15.y = Result36;
Output15.z = CosASC40ThetaASC41;
float Constant94 = 0.333333;
float Result37 = pow(max(0, RASC943),Constant94);
float3 Result38 = Output15 * Result37;
Out_Ouput = Result38;
}
void CustomHlsl99D2D00244511A096EA5088DE8D89968_Func_(bool In_X, bool In_Y, bool In_Z, out float3 Out_Output)
{
Out_Output = float3(In_X, In_Y, In_Z);
}
void TransformBase_Func_(int In_SourceSpace, int In_DestinationSpace, float4x4 In_LocalToWorldTransform, float4x4 In_WorldToLocalTransform, bool In_bLocalSpace, out bool Out_bUseOriginal, out float4x4 Out_OutTransform, out bool Out_LocalToWorld, inout FSimulationContext Context)
{
int Constant98 = 0;
bool Result42 = NiagaraAll(In_SourceSpace == Constant98);
int Constant99 = 0;
bool Result43 = NiagaraAll(In_DestinationSpace == Constant99);
bool Result44 = Result42 && Result43;
int Constant100 = 1;
bool Result45 = NiagaraAll(In_SourceSpace == Constant100);
int Constant101 = 1;
bool Result46 = NiagaraAll(In_DestinationSpace == Constant101);
bool Result47 = Result45 && Result46;
bool Result48 = Result44 || Result47;
int Constant102 = 2;
bool Result49 = NiagaraAll(In_SourceSpace == Constant102);
int Constant103 = 2;
bool Result50 = NiagaraAll(In_DestinationSpace == Constant103);
bool Result51 = Result49 && Result50;
bool Result52 = Result48 || Result51;
bool Result53 = Result42 && Result50;
bool Result54 = Result49 && Result43;
bool Result55 = Result53 || Result54;
bool Result56 = In_bLocalSpace && Result55;
bool Result57 = Result52 || Result56;
bool Result58 = !In_bLocalSpace;
bool Result59 = Result42 && Result46;
bool Result60 = Result45 && Result43;
bool Result61 = Result59 || Result60;
bool Result62 = Result58 && Result61;
bool Result63 = Result57 || Result62;
bool Result64 = In_bLocalSpace && Result59;
bool Result65 = Result49 && Result46;
bool Result66 = Result64 || Result65;
bool Result67 = Result58 && Result54;
bool Result68 = Result66 || Result67;
float4x4 Matrix_IfResult1;
if(Result68)
{
Matrix_IfResult1 = In_LocalToWorldTransform;
}
else
{
Matrix_IfResult1 = In_WorldToLocalTransform;
}
Out_bUseOriginal = Result63;
Out_OutTransform = Matrix_IfResult1;
Out_LocalToWorld = Result68;
}
void SphereLocation_NF_TransformVector_Emitter_Func_(float3 In_InVector, int In_SourceSpace, int In_DestinationSpace, bool In_ApplyScale, out float3 Out_OutVector, inout FSimulationContext Context)
{
bool Constant97 = false;
float4x4 Matrix_IfResult;
float4x4 Matrix001_IfResult;
if(In_ApplyScale)
{
Matrix_IfResult = Context.MapSpawn.Engine.Owner.SystemLocalToWorld;
Matrix001_IfResult = Context.MapSpawn.Engine.Owner.SystemWorldToLocal;
}
else
{
Matrix_IfResult = Context.MapSpawn.Engine.Owner.SystemLocalToWorldNoScale;
Matrix001_IfResult = Context.MapSpawn.Engine.Owner.SystemWorldToLocalNoScale;
}
bool TransformBase_Func_Output_bUseOriginal;
float4x4 TransformBase_Func_Output_OutTransform;
bool TransformBase_Func_Output_LocalToWorld;
TransformBase_Func_(In_SourceSpace, In_DestinationSpace, Matrix_IfResult, Matrix001_IfResult, Constant97, TransformBase_Func_Output_bUseOriginal, TransformBase_Func_Output_OutTransform, TransformBase_Func_Output_LocalToWorld, Context);
float3 Result69 = mul(float4(In_InVector,0.0),TransformBase_Func_Output_OutTransform).xyz;
float3 Vector_IfResult;
if(TransformBase_Func_Output_bUseOriginal)
{
Vector_IfResult = In_InVector;
}
else
{
Vector_IfResult = Result69;
}
Out_OutVector = Vector_IfResult;
}
void SphereLocation_TransformVector001_Emitter_Func_(float3 In_InVector, int In_SourceSpace, int In_DestinationSpace, bool In_ApplyScale, out float3 Out_OutVector, inout FSimulationContext Context)
{
bool Constant108 = false;
float4x4 Matrix_IfResult2;
float4x4 Matrix001_IfResult1;
if(In_ApplyScale)
{
Matrix_IfResult2 = Context.MapSpawn.Engine.Owner.SystemLocalToWorld;
Matrix001_IfResult1 = Context.MapSpawn.Engine.Owner.SystemWorldToLocal;
}
else
{
Matrix_IfResult2 = Context.MapSpawn.Engine.Owner.SystemLocalToWorldNoScale;
Matrix001_IfResult1 = Context.MapSpawn.Engine.Owner.SystemWorldToLocalNoScale;
}
bool TransformBase_Func_Output_bUseOriginal1;
float4x4 TransformBase_Func_Output_OutTransform1;
bool TransformBase_Func_Output_LocalToWorld1;
TransformBase_Func_(In_SourceSpace, In_DestinationSpace, Matrix_IfResult2, Matrix001_IfResult1, Constant108, TransformBase_Func_Output_bUseOriginal1, TransformBase_Func_Output_OutTransform1, TransformBase_Func_Output_LocalToWorld1, Context);
float3 Result76 = mul(float4(In_InVector,0.0),TransformBase_Func_Output_OutTransform1).xyz;
float3 Vector_IfResult1;
if(TransformBase_Func_Output_bUseOriginal1)
{
Vector_IfResult1 = In_InVector;
}
else
{
Vector_IfResult1 = Result76;
}
Out_OutVector = Vector_IfResult1;
}
void SphereLocation_Emitter_Func_(inout FSimulationContext Context)
{
float Constant81 = 1;
float Result18 = Constants_Emitter_SphereLocation_SurfaceOnlyBandThickness / Context.MapSpawn.SphereLocation.SphereRadius;
float float_IfResult2;
if(Context.MapSpawn.SphereLocation.NormalizeThickness)
{
float_IfResult2 = Constants_Emitter_SphereLocation_SurfaceOnlyBandThickness;
}
else
{
float_IfResult2 = Result18;
}
float Result19 = Constant81 - float_IfResult2;
float Constant82 = 0.5;
float Result20 = float_IfResult2 * Constant82 * Context.MapSpawn.SphereLocation.SurfaceExpansionMode;
float Result21 = Result19 + Result20;
float Constant83 = 0;
float Result22 = max(Result21, Constant83);
float Result23 = Result21 + float_IfResult2;
float3 CalculateRandomPointInSphere_EvaluationType_NewEnumerator0_FixedRandomSeed_false_OverrideSeed_false_RandomnessMode_NewEnumerator0_Func_Output_Ouput;
CalculateRandomPointInSphere_EvaluationType_NewEnumerator0_FixedRandomSeed_false_OverrideSeed_false_RandomnessMode_NewEnumerator0_Func_(Result22, Result23, Constants_Emitter_SphereLocation_RandomSeed, CalculateRandomPointInSphere_EvaluationType_NewEnumerator0_FixedRandomSeed_false_OverrideSeed_false_RandomnessMode_NewEnumerator0_Func_Output_Ouput, Context);
Context.MapSpawn.Local.SphereLocation.SphereVector = CalculateRandomPointInSphere_EvaluationType_NewEnumerator0_FixedRandomSeed_false_OverrideSeed_false_RandomnessMode_NewEnumerator0_Func_Output_Ouput;
float3 Result39 = abs(Context.MapSpawn.Local.SphereLocation.SphereVector);
float3 CustomHlsl99D2D00244511A096EA5088DE8D89968_Func_Output_Output;
CustomHlsl99D2D00244511A096EA5088DE8D89968_Func_(Context.MapSpawn.SphereLocation.HemisphereX, Context.MapSpawn.SphereLocation.HemisphereY, Context.MapSpawn.SphereLocation.HemisphereZ, CustomHlsl99D2D00244511A096EA5088DE8D89968_Func_Output_Output);
float3 Result40 = lerp(Context.MapSpawn.Local.SphereLocation.SphereVector,Result39,CustomHlsl99D2D00244511A096EA5088DE8D89968_Func_Output_Output);
Context.MapSpawn.Local.SphereLocation.SphereVector = Result40;
float3 Result41 = Context.MapSpawn.SphereLocation.SphereRadius * Context.MapSpawn.Local.SphereLocation.SphereVector;
Context.MapSpawn.Local.SphereLocation.SphereVector = Result41;
Context.MapSpawn.Local.SphereLocation.SphereVector = Context.MapSpawn.Local.SphereLocation.SphereVector;
int Constant95 = 0;
bool Constant96 = true;
float3 SphereLocation_NF_TransformVector_Emitter_Func_Output_OutVector;
SphereLocation_NF_TransformVector_Emitter_Func_(Context.MapSpawn.Local.SphereLocation.SphereVector, Context.MapSpawn.SphereLocation.SphereCoordinateSpace, Constant95, Constant96, SphereLocation_NF_TransformVector_Emitter_Func_Output_OutVector, Context);
float3 Result70 = Context.MapSpawn.SphereLocation.SphereOrigin + SphereLocation_NF_TransformVector_Emitter_Func_Output_OutVector;
float Constant104 = 1;
float3 Result71 = Constants_Emitter_SphereLocation_NonUniformScale.xyz * Context.MapSpawn.Engine.Owner.Scale;
float3 Result72 = abs(Result71);
float3 Constant105 = float3(0.0001,0.0001,0.0001);
float3 Result73 = max(Result72, Constant105);
float3 Result74 = Constant104 / Result73;
float3 Result75 = Context.MapSpawn.Local.SphereLocation.SphereVector * Result74;
int Constant106 = 0;
bool Constant107 = true;
float3 SphereLocation_TransformVector001_Emitter_Func_Output_OutVector;
SphereLocation_TransformVector001_Emitter_Func_(Result75, Context.MapSpawn.SphereLocation.SphereCoordinateSpace, Constant106, Constant107, SphereLocation_TransformVector001_Emitter_Func_Output_OutVector, Context);
float3 Result77 = normalize(SphereLocation_TransformVector001_Emitter_Func_Output_OutVector);
Context.MapSpawn.OUTPUT_VAR.SphereLocation.Position = Result70;
Context.MapSpawn.OUTPUT_VAR.SphereLocation.SphereVector = SphereLocation_NF_TransformVector_Emitter_Func_Output_OutVector;
Context.MapSpawn.OUTPUT_VAR.SphereLocation.SphereNormal = Result77;
Context.MapSpawn.Particles.Position = Context.MapSpawn.OUTPUT_VAR.SphereLocation.Position;
}
void ParticleState_Emitter_Func_(inout FSimulationContext Context)
{
bool Result78 = NiagaraAll(Context.MapUpdate.Particles.Age <= Context.MapUpdate.Engine.DeltaTime);
Context.MapUpdate.OUTPUT_VAR.ParticleState.FirstFrame = Result78;
Context.MapUpdate.Transient.FirstFrame = Result78;
float Result79 = Context.MapUpdate.Particles.Age + Context.MapUpdate.ParticleState.DeltaTime;
float Constant110 = 1e-05;
float Result80 = max(Context.MapUpdate.ParticleState.Lifetime, Constant110);
float Constant111 = 0.0001;
float Result81 = Result80 - Constant111;
bool Result82 = NiagaraAll(Result79 < Result81);
bool Constant112 = false;
bool bool_IfResult;
if(Result82)
{
bool_IfResult = Context.MapUpdate.DataInstance.Alive;
}
else
{
bool_IfResult = Constant112;
}
float Result83 = Result79 / Result80;
Context.MapUpdate.DataInstance.Alive = bool_IfResult;
Context.MapUpdate.Particles.Age = Result79;
Context.MapUpdate.Particles.NormalizedAge = Result83;
bool Constant113 = false;
bool Constant114 = true;
}
void FloatFromCurve001_Emitter_Func_(out float Out_Value, inout FSimulationContext Context)
{
float SampleCurve_Emitter_FloatFromCurve001_FloatCurveOutput_Value;
SampleCurve_Emitter_FloatFromCurve001_FloatCurve(Context.MapUpdate.FloatFromCurve001.CurveIndex, SampleCurve_Emitter_FloatFromCurve001_FloatCurveOutput_Value);
float Result84 = SampleCurve_Emitter_FloatFromCurve001_FloatCurveOutput_Value * Context.MapUpdate.FloatFromCurve001.ScaleCurve;
Out_Value = Result84;
}
void PointAttractionForce_SimulationPosition_Emitter_Func_(out float3 Out_OutPosition, inout FSimulationContext Context)
{
bool Constant116 = false;
float3 Constant117 = float3(0,0,0);
float3 Constant118 = float3(0.0, 0.0, 0.0);
float3 Vector_SelectResult1 = Constant118;
if(Constant116 == 1)
{
Vector_SelectResult1 = Constant117;
}
if(Constant116 == 0)
{
Vector_SelectResult1 = Context.MapUpdate.Engine.Owner.Position;
}
Out_OutPosition = Vector_SelectResult1;
}
void DirectionAndLengthSafe_Func_(float3 In_V, float3 In_Fallback, float In_Threshold, float In_FallbackLength, out float3 Out_Direction, out float Out_Length, out bool Out_BelowThreshold, inout FSimulationContext Context)
{
float Result88 = length(In_V);
bool Result89 = NiagaraAll(Result88 < In_Threshold);
float Result90 = length(In_Fallback);
float3 Vector_IfResult2;
float float_IfResult3;
if(Result89)
{
Vector_IfResult2 = In_Fallback;
float_IfResult3 = In_FallbackLength;
}
else
{
Vector_IfResult2 = In_V;
float_IfResult3 = Result88;
}
float3 Result91 = Vector_IfResult2 / float_IfResult3;
float3 Vector_IfResult3;
float float_IfResult4;
if(Result89)
{
Vector_IfResult3 = In_Fallback;
float_IfResult4 = Result90;
}
else
{
Vector_IfResult3 = Result91;
float_IfResult4 = float_IfResult3;
}
Out_Direction = Vector_IfResult3;
Out_Length = float_IfResult4;
Out_BelowThreshold = Result89;
}
void PointAttractionForce_Emitter_Func_(inout FSimulationContext Context)
{
float3 Result85 = Context.MapUpdate.Transient.PhysicsForce * Context.MapUpdate.Engine.DeltaTime + Context.MapUpdate.Particles.Velocity;
float3 Result86 = Result85 * Context.MapUpdate.Engine.DeltaTime + Context.MapUpdate.PointAttractionForce.PositionToAttract;
float3 Result87 = Context.MapUpdate.PointAttractionForce.AttractorPosition - Result86;
float3 Constant123 = float3(0,0,1);
float Constant124 = 1e-05;
float Constant125 = 1e-06;
float3 DirectionAndLengthSafe_Func_Output_Direction;
float DirectionAndLengthSafe_Func_Output_Length;
bool DirectionAndLengthSafe_Func_Output_BelowThreshold;
DirectionAndLengthSafe_Func_(Result87, Constant123, Constant124, Constant125, DirectionAndLengthSafe_Func_Output_Direction, DirectionAndLengthSafe_Func_Output_Length, DirectionAndLengthSafe_Func_Output_BelowThreshold, Context);
Context.MapUpdate.Local.PointAttractionForce.PointOriginVec = DirectionAndLengthSafe_Func_Output_Direction;
Context.MapUpdate.Local.PointAttractionForce.PointOriginVecLength = DirectionAndLengthSafe_Func_Output_Length;
Context.MapUpdate.Local.PointAttractionForce.AttractorOrigin = Context.MapUpdate.PointAttractionForce.AttractorPosition;
Context.MapUpdate.Local.PointAttractionForce.AttractedPosition = Result86;
bool Result92 = NiagaraAll(Context.MapUpdate.Local.PointAttractionForce.PointOriginVecLength > Constants_Emitter_PointAttractionForce_AttractionRadius);
float Constant126 = 0;
float Result93 = pow(max(0, Context.MapUpdate.Local.PointAttractionForce.PointOriginVecLength),Constants_Emitter_PointAttractionForce_FalloffExponent);
float Falloff_IfResult;
if(Context.MapUpdate.PointAttractionForce.UseFalloff)
{
Falloff_IfResult = Result93;
}
else
{
Falloff_IfResult = Context.MapUpdate.Local.PointAttractionForce.PointOriginVecLength;
}
float Result94 = Context.MapUpdate.PointAttractionForce.AttractionStrength * Falloff_IfResult;
float float_IfResult5;
if(Result92)
{
float_IfResult5 = Constant126;
}
else
{
float_IfResult5 = Result94;
}
float3 Result95 = Context.MapUpdate.Local.PointAttractionForce.PointOriginVec * float_IfResult5;
float3 Result96 = Context.MapUpdate.Transient.PhysicsForce + Result95;
Context.MapUpdate.Transient.PhysicsForce = Result96;
Context.MapUpdate.Local.PointAttractionForce.IsWithinAttractor = Result92;
Context.MapUpdate.Local.PointAttractionForce.AttractionForce = Result95;
bool Constant127 = true;
bool Result97 = Context.MapUpdate.DataInstance.Alive && Constant127;
Context.MapUpdate.DataInstance.Alive = Result97;
}
void SolveForcesAndVelocity_Emitter_Func_(inout FSimulationContext Context)
{
Context.MapUpdate.Local.SolveForcesAndVelocity.DeltaTime = Context.MapUpdate.SolveForcesAndVelocity.DeltaTime;
Context.MapUpdate.Local.SolveForcesAndVelocity.PhysicsForce = Context.MapUpdate.SolveForcesAndVelocity.Force;
Context.MapUpdate.OUTPUT_VAR.SolveForcesAndVelocity.IncomingPhysicsForce = Context.MapUpdate.SolveForcesAndVelocity.Force;
Context.MapUpdate.OUTPUT_VAR.SolveForcesAndVelocity.Velocity = Context.MapUpdate.SolveForcesAndVelocity.Velocity;
Context.MapUpdate.Local.SolveForcesAndVelocity.Mass = Context.MapUpdate.SolveForcesAndVelocity.Mass;
Context.MapUpdate.OUTPUT_VAR.SolveForcesAndVelocity.Position = Context.MapUpdate.SolveForcesAndVelocity.Position;
Context.MapUpdate.Particles.Presolve.Velocity = Context.MapUpdate.OUTPUT_VAR.SolveForcesAndVelocity.Velocity;
Context.MapUpdate.Particles.Presolve.Position = Context.MapUpdate.OUTPUT_VAR.SolveForcesAndVelocity.Position;
Context.MapUpdate.Particles.Presolve.PhysicsForce = Context.MapUpdate.OUTPUT_VAR.SolveForcesAndVelocity.IncomingPhysicsForce;
float Constant136 = 0.0001;
float Result98 = max(Context.MapUpdate.Local.SolveForcesAndVelocity.Mass, Constant136);
float Result99 = Reciprocal(Result98);
float3 Result100 = Result99 * Context.MapUpdate.Local.SolveForcesAndVelocity.PhysicsForce;
Context.MapUpdate.Local.SolveForcesAndVelocity.PhysicsForce = Result100;
float3 Result101 = Context.MapUpdate.Local.SolveForcesAndVelocity.PhysicsForce * Context.MapUpdate.Local.SolveForcesAndVelocity.DeltaTime + Context.MapUpdate.OUTPUT_VAR.SolveForcesAndVelocity.Velocity;
float Constant137 = 0;
float Result102 = max(Context.MapUpdate.Transient.PhysicsDrag, Constant137);
float Result103 = Context.MapUpdate.Local.SolveForcesAndVelocity.DeltaTime * Result102;
float Constant138 = 1;
float Result104 = Result103 + Constant138;
float3 Result105 = Result101 / Result104;
Context.MapUpdate.OUTPUT_VAR.SolveForcesAndVelocity.Velocity = Result105;
Context.MapUpdate.OUTPUT_VAR.SolveForcesAndVelocity.IncomingPhysicsDrag = Context.MapUpdate.Transient.PhysicsDrag;
Context.MapUpdate.OUTPUT_VAR.SolveForcesAndVelocity.Velocity = Context.MapUpdate.OUTPUT_VAR.SolveForcesAndVelocity.Velocity;
Context.MapUpdate.OUTPUT_VAR.SolveForcesAndVelocity.Velocity = Context.MapUpdate.OUTPUT_VAR.SolveForcesAndVelocity.Velocity;
float3 Result106 = Context.MapUpdate.OUTPUT_VAR.SolveForcesAndVelocity.Velocity * Context.MapUpdate.Local.SolveForcesAndVelocity.DeltaTime + Context.MapUpdate.OUTPUT_VAR.SolveForcesAndVelocity.Position;
Context.MapUpdate.OUTPUT_VAR.SolveForcesAndVelocity.Position = Result106;
float3 Position_IfResult;
float3 Velocity_IfResult;
if(Context.MapUpdate.SolveForcesAndVelocity.WritetoIntrinsicProperties)
{
Position_IfResult = Context.MapUpdate.OUTPUT_VAR.SolveForcesAndVelocity.Position;
Velocity_IfResult = Context.MapUpdate.OUTPUT_VAR.SolveForcesAndVelocity.Velocity;
}
else
{
Position_IfResult = Context.MapUpdate.Particles.Position;
Velocity_IfResult = Context.MapUpdate.Particles.Velocity;
}
Context.MapUpdate.Particles.Position = Position_IfResult;
Context.MapUpdate.Particles.Velocity = Velocity_IfResult;
float3 Constant139 = float3(0,0,0);
float Constant140 = 0;
float3 ForceVector_IfResult;
float Drag_IfResult;
if(Context.MapUpdate.SolveForcesAndVelocity.WritetoIntrinsicProperties)
{
ForceVector_IfResult = Constant139;
Drag_IfResult = Constant140;
}
else
{
ForceVector_IfResult = Context.MapUpdate.Transient.PhysicsForce;
Drag_IfResult = Context.MapUpdate.Transient.PhysicsDrag;
}
Context.MapUpdate.Transient.PhysicsForce = ForceVector_IfResult;
Context.MapUpdate.Transient.PhysicsDrag = Drag_IfResult;
float3 Result107 = Context.MapUpdate.Particles.Position - Context.MapUpdate.Particles.Previous.Position;
float3 Result108 = Result107 * Context.MapUpdate.Engine.InverseDeltaTime;
float Result109 = length(Result108);
float Constant141 = 100;
float Result110 = Result109 / Constant141;
float Constant142 = 1e+08;
float Result111 = Modulo(Context.MapUpdate.Particles.DistanceTraveled, Constant142);
float Result112 = Result110 + Result111;
Context.MapUpdate.Particles.DistanceTraveled = Result112;
}
void FloatFromCurve002_Emitter_Func_(out float Out_Value, inout FSimulationContext Context)
{
float SampleCurve_Emitter_FloatFromCurve002_FloatCurveOutput_Value;
SampleCurve_Emitter_FloatFromCurve002_FloatCurve(Context.MapUpdate.FloatFromCurve002.CurveIndex, SampleCurve_Emitter_FloatFromCurve002_FloatCurveOutput_Value);
float Result113 = SampleCurve_Emitter_FloatFromCurve002_FloatCurveOutput_Value * Constants_Emitter_FloatFromCurve002_ScaleCurve;
Out_Value = Result113;
}
void DynamicMaterialParameters_Emitter_Func_(inout FSimulationContext Context)
{
float X;
float Y;
float Z;
float W;
X = Context.MapUpdate.Particles.DynamicMaterialParameter.x;
Y = Context.MapUpdate.Particles.DynamicMaterialParameter.y;
Z = Context.MapUpdate.Particles.DynamicMaterialParameter.z;
W = Context.MapUpdate.Particles.DynamicMaterialParameter.w;
float float_IfResult6;
if(Context.MapUpdate.DynamicMaterialParameters.Param0WriteEnabled)
{
float_IfResult6 = Context.MapUpdate.DynamicMaterialParameters.Index0Param1;
}
else
{
float_IfResult6 = X;
}
float float_IfResult7;
if(Context.MapUpdate.DynamicMaterialParameters.Param1WriteEnabled)
{
float_IfResult7 = Constants_Emitter_DynamicMaterialParameters_Index0Param2;
}
else
{
float_IfResult7 = Y;
}
float float_IfResult8;
if(Context.MapUpdate.DynamicMaterialParameters.Param2WriteEnabled)
{
float_IfResult8 = Constants_Emitter_DynamicMaterialParameters_Index0Param3;
}
else
{
float_IfResult8 = Z;
}
float float_IfResult9;
if(Context.MapUpdate.DynamicMaterialParameters.Param3WriteEnabled)
{
float_IfResult9 = Constants_Emitter_DynamicMaterialParameters_Index0Param4;
}
else
{
float_IfResult9 = W;
}
float4 Output16;
Output16.x = float_IfResult6;
Output16.y = float_IfResult7;
Output16.z = float_IfResult8;
Output16.w = float_IfResult9;
Context.MapUpdate.Particles.DynamicMaterialParameter = Output16;
}
float GetSpawnInterpolation()
{
return HackSpawnInterp;
}
void InterpolateParameters(inout FSimulationContext Context)
{
int InterpSpawn_Index = ExecIndex();
float InterpSpawn_SpawnTime = Emitter_InterpSpawnStartDt + (Emitter_SpawnInterval * InterpSpawn_Index);
float InterpSpawn_UpdateTime = Engine_DeltaTime - InterpSpawn_SpawnTime;
float InterpSpawn_InvSpawnTime = 1.0 / InterpSpawn_SpawnTime;
float InterpSpawn_InvUpdateTime = 1.0 / InterpSpawn_UpdateTime;
float SpawnInterp = InterpSpawn_SpawnTime * Engine_InverseDeltaTime ;
HackSpawnInterp = SpawnInterp;
Context.MapSpawn.Interpolation.InterpSpawn_Index = InterpSpawn_Index;
Context.MapSpawn.Interpolation.InterpSpawn_SpawnTime = InterpSpawn_SpawnTime;
Context.MapSpawn.Interpolation.InterpSpawn_UpdateTime = InterpSpawn_UpdateTime;
Context.MapSpawn.Interpolation.InterpSpawn_InvSpawnTime = InterpSpawn_InvSpawnTime;
Context.MapSpawn.Interpolation.InterpSpawn_InvUpdateTime = InterpSpawn_InvUpdateTime;
Context.MapSpawn.Interpolation.SpawnInterp = SpawnInterp;
Context.MapSpawn.Interpolation.Emitter_SpawnInterval = Emitter_SpawnInterval;
Context.MapSpawn.Interpolation.Emitter_InterpSpawnStartDt = Emitter_InterpSpawnStartDt;
Context.MapSpawn.Interpolation.Emitter_SpawnGroup = Emitter_SpawnGroup;
Context.MapSpawn.Engine.Time = lerp(PREV_Engine_Time, Engine_Time, SpawnInterp);
Context.MapSpawn.Engine.RealTime = lerp(PREV_Engine_RealTime, Engine_RealTime, SpawnInterp);
Context.MapSpawn.Engine.Owner.TimeSinceRendered = lerp(PREV_Engine_Owner_TimeSinceRendered, Engine_Owner_TimeSinceRendered, SpawnInterp);
Context.MapSpawn.Engine.Owner.LODDistance = lerp(PREV_Engine_Owner_LODDistance, Engine_Owner_LODDistance, SpawnInterp);
Context.MapSpawn.Engine.Owner.LODDistanceFraction = lerp(PREV_Engine_Owner_LODDistanceFraction, Engine_Owner_LODDistanceFraction, SpawnInterp);
Context.MapSpawn.Engine.System.Age = lerp(PREV_Engine_System_Age, Engine_System_Age, SpawnInterp);
Context.MapSpawn.Engine.Owner.Rotation = lerp(PREV_Engine_Owner_Rotation, Engine_Owner_Rotation, SpawnInterp);
Context.MapSpawn.Engine.Owner.Position = lerp(PREV_Engine_Owner_Position.xyz, Engine_Owner_Position.xyz, SpawnInterp);
Context.MapSpawn.Engine.Owner.Velocity = lerp(PREV_Engine_Owner_Velocity.xyz, Engine_Owner_Velocity.xyz, SpawnInterp);
Context.MapSpawn.Engine.Owner.SystemXAxis = lerp(PREV_Engine_Owner_SystemXAxis.xyz, Engine_Owner_SystemXAxis.xyz, SpawnInterp);
Context.MapSpawn.Engine.Owner.SystemYAxis = lerp(PREV_Engine_Owner_SystemYAxis.xyz, Engine_Owner_SystemYAxis.xyz, SpawnInterp);
Context.MapSpawn.Engine.Owner.SystemZAxis = lerp(PREV_Engine_Owner_SystemZAxis.xyz, Engine_Owner_SystemZAxis.xyz, SpawnInterp);
Context.MapSpawn.Engine.Owner.Scale = lerp(PREV_Engine_Owner_Scale.xyz, Engine_Owner_Scale.xyz, SpawnInterp);
Context.MapSpawn.Emitter.Age = lerp(PREV_Emitter_Age, Emitter_Age, SpawnInterp);
Context.MapSpawn.User.HazeSize = lerp(PREV_User_HazeSize, User_HazeSize, SpawnInterp);
Context.MapSpawn.User.HazeLifetime = lerp(PREV_User_HazeLifetime, User_HazeLifetime, SpawnInterp);
Context.MapSpawn.Emitter.DistanceTraveled = lerp(PREV_Emitter_DistanceTraveled, Emitter_DistanceTraveled, SpawnInterp);
Context.MapSpawn.User.HazeRadius = lerp(PREV_User_HazeRadius, User_HazeRadius, SpawnInterp);
Context.MapSpawn.User.HazeAttraction = lerp(PREV_User_HazeAttraction, User_HazeAttraction, SpawnInterp);
Context.MapUpdate.Engine.DeltaTime = InterpSpawn_UpdateTime;
Context.MapUpdate.Engine.InverseDeltaTime = InterpSpawn_InvUpdateTime;
}
#if (((SimulationStageIndex >= 0) && (SimulationStageIndex < 1))) // MapSpawn
void HandlePreviousValuesForSpawn(inout FSimulationContext Context)
{
Context.MapSpawn.Particles.Previous.Position = Context.MapSpawn.Particles.Position;
Context.MapSpawn.Particles.Previous.SpriteRotation = Context.MapSpawn.Particles.SpriteRotation;
Context.MapSpawn.Particles.Previous.SpriteSize = Context.MapSpawn.Particles.SpriteSize;
Context.MapSpawn.Particles.Previous.Velocity = Context.MapSpawn.Particles.Velocity;
}
#endif
void ReadDataSets(inout FSimulationContext Context)
{
}
void WriteDataSets(inout FSimulationContext Context)
{
}
void SimulateMapSpawn(inout FSimulationContext Context)
{
//Begin Interpolated Spawn Script!
//Begin Initialize Parameter Map Defaults
float Constant = (0.0);
Context.MapSpawn.Particles.MaterialRandom = Constant;
float Constant1 = (0.0);
Context.MapSpawn.Particles.Lifetime = Constant1;
float Constant2 = 1;
Context.MapSpawn.Particles.Mass = Constant2;
float2 Constant3 = float2(0.0, 0.0);
Context.MapSpawn.Particles.SpriteSize = Constant3;
float2 Constant4 = float2(0.0, 0.0);
Context.MapSpawn.Particles.UVScale = Constant4;
float Constant5 = (0.0);
Context.MapSpawn.Particles.SpriteRotation = Constant5;
float3 Constant6 = float3(0.0, 0.0, 0.0);
Context.MapSpawn.Particles.Position = Constant6;
float Constant7 = (0.0);
Context.MapSpawn.Particles.SubImageIndex = Constant7;
float Constant8 = 0;
Context.MapSpawn.Particles.Age = Constant8;
float Constant9 = (0.0);
Context.MapSpawn.Particles.NormalizedAge = Constant9;
float3 Constant10 = float3(0,0,0);
Context.MapSpawn.Particles.Velocity = Constant10;
float3 Constant11 = float3(0.0, 0.0, 0.0);
Context.MapSpawn.Particles.Presolve.Velocity = Constant11;
float3 Constant12 = float3(0.0, 0.0, 0.0);
Context.MapSpawn.Particles.Presolve.Position = Constant12;
float3 Constant13 = float3(0.0, 0.0, 0.0);
Context.MapSpawn.Particles.Presolve.PhysicsForce = Constant13;
float3 Constant14 = float3(0,0,0);
Context.MapSpawn.Particles.Previous.Velocity = Constant14;
float3 Constant15 = float3(0,0,0);
Context.MapSpawn.Particles.Previous.Position = Constant15;
float Constant16 = 0;
Context.MapSpawn.Particles.DistanceTraveled = Constant16;
float4 Constant17 = float4(0,0,0,0);
Context.MapSpawn.Particles.DynamicMaterialParameter = Constant17;
//End Initialize Parameter Map Defaults
Context.MapSpawn.InitializeParticle.UniformSpriteSize = Context.MapSpawn.User.HazeSize;
Context.MapSpawn.InitializeParticle.Lifetime = Context.MapSpawn.User.HazeLifetime;
float Constant18 = 0;
float Constant19 = 1;
int Constant20 = -1;
int Constant21 = (0);
int Constant22 = 0;
int Constant23 = (0);
int Constant24 = (0);
float CalculateRandomRangeFloat_Particle_Particle_ScriptUsage4_EvaluationType_NewEnumerator0_FixedRandomSeed_false_OverrideSeed_false_RandomnessMode_NewEnumerator0_Func_Output_RandomFloat;
bool CalculateRandomRangeFloat_Particle_Particle_ScriptUsage4_EvaluationType_NewEnumerator0_FixedRandomSeed_false_OverrideSeed_false_RandomnessMode_NewEnumerator0_Func_Output_IsDeterministic;
CalculateRandomRangeFloat_Particle_Particle_ScriptUsage4_EvaluationType_NewEnumerator0_FixedRandomSeed_false_OverrideSeed_false_RandomnessMode_NewEnumerator0_Func_(Constant18, Constant19, Constant20, Constant21, Constant22, Constant23, Constant24, CalculateRandomRangeFloat_Particle_Particle_ScriptUsage4_EvaluationType_NewEnumerator0_FixedRandomSeed_false_OverrideSeed_false_RandomnessMode_NewEnumerator0_Func_Output_RandomFloat, CalculateRandomRangeFloat_Particle_Particle_ScriptUsage4_EvaluationType_NewEnumerator0_FixedRandomSeed_false_OverrideSeed_false_RandomnessMode_NewEnumerator0_Func_Output_IsDeterministic, Context);
Context.MapSpawn.InitializeParticle.MaterialRandom = CalculateRandomRangeFloat_Particle_Particle_ScriptUsage4_EvaluationType_NewEnumerator0_FixedRandomSeed_false_OverrideSeed_false_RandomnessMode_NewEnumerator0_Func_Output_RandomFloat;
bool Constant26 = false;
int Constant27 = 0;
Context.MapSpawn.InitializeParticle.PositionOffsetCoordinateSpace = Constant27;
Context.MapSpawn.Particles.RibbonUVDistance = Context.MapSpawn.Emitter.DistanceTraveled;
EnterStatScope(1 /**InitializeParticle_Emitter_Func_*/);
InitializeParticle_Emitter_Func_(Context);
ExitStatScope(/**InitializeParticle_Emitter_Func_*/);
float Constant53 = (0.0);
Context.MapSpawn.Local.SubUVAnimation.StartFrame = Constant53;
float Constant54 = (0.0);
Context.MapSpawn.Local.SubUVAnimation.EndFrame = Constant54;
EnterStatScope(2 /**SubUVAnimation_Emitter_Func_*/);
SubUVAnimation_Emitter_Func_(Context);
ExitStatScope(/**SubUVAnimation_Emitter_Func_*/);
int Constant72 = 0;
Context.MapSpawn.SphereLocation.SurfaceExpansionMode = Constant72;
Context.MapSpawn.SphereLocation.SphereRadius = Context.MapSpawn.User.HazeRadius;
bool Constant73 = true;
Context.MapSpawn.SphereLocation.NormalizeThickness = Constant73;
float3 Constant74 = float3(0.0, 0.0, 0.0);
Context.MapSpawn.Local.SphereLocation.SphereVector = Constant74;
bool Constant75 = false;
Context.MapSpawn.SphereLocation.HemisphereX = Constant75;
bool Constant76 = false;
Context.MapSpawn.SphereLocation.HemisphereY = Constant76;
bool Constant77 = false;
Context.MapSpawn.SphereLocation.HemisphereZ = Constant77;
Context.MapSpawn.SphereLocation.SphereOrigin = Context.MapSpawn.Particles.Position;
int Constant78 = 2;
Context.MapSpawn.SphereLocation.OffsetCoordinateSpace = Constant78;
int Constant79 = 2;
Context.MapSpawn.SphereLocation.SphereCoordinateSpace = Constant79;
float3 Constant80 = float3(0.0, 0.0, 0.0);
Context.MapSpawn.OUTPUT_VAR.SphereLocation.Position = Constant80;
EnterStatScope(3 /**SphereLocation_Emitter_Func_*/);
SphereLocation_Emitter_Func_(Context);
ExitStatScope(/**SphereLocation_Emitter_Func_*/);
//End Spawn Script!
//Handle resetting previous values at the end of spawn so that they match outputs! (Needed for motion blur/etc)
HandlePreviousValuesForSpawn(Context);
// Begin HandleMissingDefaultValues
// End HandleMissingDefaultValues
}
void SimulateMapUpdate(inout FSimulationContext Context)
{
//Begin Update Script!
RandomCounterDeterministic = 0;
bool Constant109 = true;
Context.MapUpdate.DataInstance.Alive = Constant109;
Context.MapUpdate.ParticleState.DeltaTime = Context.MapUpdate.Engine.DeltaTime;
Context.MapUpdate.ParticleState.Lifetime = Context.MapUpdate.Particles.Lifetime;
EnterStatScope(4 /**ParticleState_Emitter_Func_*/);
ParticleState_Emitter_Func_(Context);
ExitStatScope(/**ParticleState_Emitter_Func_*/);
Context.MapUpdate.FloatFromCurve001.ScaleCurve = Context.MapUpdate.User.HazeAttraction;
Context.MapUpdate.FloatFromCurve001.CurveIndex = Context.MapUpdate.Particles.NormalizedAge;
float FloatFromCurve001_Emitter_Func_Output_Value;
FloatFromCurve001_Emitter_Func_(FloatFromCurve001_Emitter_Func_Output_Value, Context);
Context.MapUpdate.PointAttractionForce.AttractionStrength = FloatFromCurve001_Emitter_Func_Output_Value;
bool Constant115 = false;
float3 PointAttractionForce_SimulationPosition_Emitter_Func_Output_OutPosition;
PointAttractionForce_SimulationPosition_Emitter_Func_(PointAttractionForce_SimulationPosition_Emitter_Func_Output_OutPosition, Context);
Context.MapUpdate.PointAttractionForce.AttractorPosition = PointAttractionForce_SimulationPosition_Emitter_Func_Output_OutPosition;
float3 Constant119 = float3(0,0,0);
Context.MapUpdate.Transient.PhysicsForce = Constant119;
Context.MapUpdate.PointAttractionForce.PositionToAttract = Context.MapUpdate.Particles.Position;
float3 Constant120 = float3(0.0, 0.0, 0.0);
Context.MapUpdate.Local.PointAttractionForce.PointOriginVec = Constant120;
float Constant121 = (0.0);
Context.MapUpdate.Local.PointAttractionForce.PointOriginVecLength = Constant121;
bool Constant122 = true;
Context.MapUpdate.PointAttractionForce.UseFalloff = Constant122;
EnterStatScope(5 /**PointAttractionForce_Emitter_Func_*/);
PointAttractionForce_Emitter_Func_(Context);
ExitStatScope(/**PointAttractionForce_Emitter_Func_*/);
Context.MapUpdate.Transient.PhysicsDeltaTime = Context.MapUpdate.Engine.DeltaTime;
Context.MapUpdate.SolveForcesAndVelocity.DeltaTime = Context.MapUpdate.Transient.PhysicsDeltaTime;
float Constant128 = (0.0);
Context.MapUpdate.Local.SolveForcesAndVelocity.DeltaTime = Constant128;
Context.MapUpdate.SolveForcesAndVelocity.Force = Context.MapUpdate.Transient.PhysicsForce;
Context.MapUpdate.SolveForcesAndVelocity.Velocity = Context.MapUpdate.Particles.Velocity;
Context.MapUpdate.SolveForcesAndVelocity.Mass = Context.MapUpdate.Particles.Mass;
Context.MapUpdate.SolveForcesAndVelocity.Position = Context.MapUpdate.Particles.Position;
float3 Constant129 = float3(0.0, 0.0, 0.0);
Context.MapUpdate.Local.SolveForcesAndVelocity.PhysicsForce = Constant129;
float3 Constant130 = float3(0.0, 0.0, 0.0);
Context.MapUpdate.OUTPUT_VAR.SolveForcesAndVelocity.IncomingPhysicsForce = Constant130;
float3 Constant131 = float3(0.0, 0.0, 0.0);
Context.MapUpdate.OUTPUT_VAR.SolveForcesAndVelocity.Velocity = Constant131;
float Constant132 = (0.0);
Context.MapUpdate.Local.SolveForcesAndVelocity.Mass = Constant132;
float3 Constant133 = float3(0.0, 0.0, 0.0);
Context.MapUpdate.OUTPUT_VAR.SolveForcesAndVelocity.Position = Constant133;
float Constant134 = 0;
Context.MapUpdate.Transient.PhysicsDrag = Constant134;
Context.MapUpdate.SolveForcesAndVelocity.PreviousVelocity = Context.MapUpdate.Particles.Previous.Velocity;
bool Constant135 = true;
Context.MapUpdate.SolveForcesAndVelocity.WritetoIntrinsicProperties = Constant135;
EnterStatScope(6 /**SolveForcesAndVelocity_Emitter_Func_*/);
SolveForcesAndVelocity_Emitter_Func_(Context);
ExitStatScope(/**SolveForcesAndVelocity_Emitter_Func_*/);
Context.MapUpdate.FloatFromCurve002.CurveIndex = Context.MapUpdate.Particles.NormalizedAge;
float FloatFromCurve002_Emitter_Func_Output_Value;
FloatFromCurve002_Emitter_Func_(FloatFromCurve002_Emitter_Func_Output_Value, Context);
Context.MapUpdate.DynamicMaterialParameters.Index0Param1 = FloatFromCurve002_Emitter_Func_Output_Value;
bool Constant143 = true;
Context.MapUpdate.DynamicMaterialParameters.Param0WriteEnabled = Constant143;
bool Constant144 = true;
Context.MapUpdate.DynamicMaterialParameters.Param1WriteEnabled = Constant144;
bool Constant145 = true;
Context.MapUpdate.DynamicMaterialParameters.Param2WriteEnabled = Constant145;
bool Constant146 = true;
Context.MapUpdate.DynamicMaterialParameters.Param3WriteEnabled = Constant146;
EnterStatScope(7 /**DynamicMaterialParameters_Emitter_Func_*/);
DynamicMaterialParameters_Emitter_Func_(Context);
ExitStatScope(/**DynamicMaterialParameters_Emitter_Func_*/);
//End Update Script!
}
Buffer<float> CurveLUT_Emitter_FloatFromCurve001_FloatCurve;
float MinTime_Emitter_FloatFromCurve001_FloatCurve;
float MaxTime_Emitter_FloatFromCurve001_FloatCurve;
float InvTimeRange_Emitter_FloatFromCurve001_FloatCurve;
float CurveLUTNumMinusOne_Emitter_FloatFromCurve001_FloatCurve;
float TimeToLUTFraction_Emitter_FloatFromCurve001_FloatCurve(float T)
{
return saturate((T - MinTime_Emitter_FloatFromCurve001_FloatCurve) * InvTimeRange_Emitter_FloatFromCurve001_FloatCurve);
}
float SampleCurve_Emitter_FloatFromCurve001_FloatCurve(float T)
{
return CurveLUT_Emitter_FloatFromCurve001_FloatCurve[(uint)T];
}
Buffer<float> CurveLUT_Emitter_FloatFromCurve002_FloatCurve;
float MinTime_Emitter_FloatFromCurve002_FloatCurve;
float MaxTime_Emitter_FloatFromCurve002_FloatCurve;
float InvTimeRange_Emitter_FloatFromCurve002_FloatCurve;
float CurveLUTNumMinusOne_Emitter_FloatFromCurve002_FloatCurve;
float TimeToLUTFraction_Emitter_FloatFromCurve002_FloatCurve(float T)
{
return saturate((T - MinTime_Emitter_FloatFromCurve002_FloatCurve) * InvTimeRange_Emitter_FloatFromCurve002_FloatCurve);
}
float SampleCurve_Emitter_FloatFromCurve002_FloatCurve(float T)
{
return CurveLUT_Emitter_FloatFromCurve002_FloatCurve[(uint)T];
}
void SampleCurve_Emitter_FloatFromCurve001_FloatCurve(in float In_X, out float Out_Value)
{
float RemappedX = TimeToLUTFraction_Emitter_FloatFromCurve001_FloatCurve(In_X) * CurveLUTNumMinusOne_Emitter_FloatFromCurve001_FloatCurve;
float Prev = floor(RemappedX);
float Next = Prev < CurveLUTNumMinusOne_Emitter_FloatFromCurve001_FloatCurve ? Prev + 1.0 : Prev;
float Interp = RemappedX - Prev;
float A = SampleCurve_Emitter_FloatFromCurve001_FloatCurve(Prev);
float B = SampleCurve_Emitter_FloatFromCurve001_FloatCurve(Next);
Out_Value = lerp(A, B, Interp);
}
void SampleCurve_Emitter_FloatFromCurve002_FloatCurve(in float In_X, out float Out_Value)
{
float RemappedX = TimeToLUTFraction_Emitter_FloatFromCurve002_FloatCurve(In_X) * CurveLUTNumMinusOne_Emitter_FloatFromCurve002_FloatCurve;
float Prev = floor(RemappedX);
float Next = Prev < CurveLUTNumMinusOne_Emitter_FloatFromCurve002_FloatCurve ? Prev + 1.0 : Prev;
float Interp = RemappedX - Prev;
float A = SampleCurve_Emitter_FloatFromCurve002_FloatCurve(Prev);
float B = SampleCurve_Emitter_FloatFromCurve002_FloatCurve(Next);
Out_Value = lerp(A, B, Interp);
}
void InitConstants(inout FSimulationContext Context)
{
Context.MapSpawn.User.HazeSize = User_HazeSize;
Context.MapSpawn.User.HazeLifetime = User_HazeLifetime;
Context.MapSpawn.Engine.Owner.Position = Engine_Owner_Position.xyz;
Context.MapSpawn.Emitter.DistanceTraveled = Emitter_DistanceTraveled;
Context.MapSpawn.Emitter.RandomSeed = Emitter_RandomSeed;
Context.MapSpawn.Engine.System.TickCount = Engine_System_TickCount;
Context.MapSpawn.User.HazeRadius = User_HazeRadius;
Context.MapSpawn.Engine.Owner.SystemLocalToWorld = Engine_Owner_SystemLocalToWorld;
Context.MapSpawn.Engine.Owner.SystemWorldToLocal = Engine_Owner_SystemWorldToLocal;
Context.MapSpawn.Engine.Owner.SystemLocalToWorldNoScale = Engine_Owner_SystemLocalToWorldNoScale;
Context.MapSpawn.Engine.Owner.SystemWorldToLocalNoScale = Engine_Owner_SystemWorldToLocalNoScale;
Context.MapSpawn.Engine.Owner.Scale = Engine_Owner_Scale.xyz;
Context.MapUpdate.Engine.DeltaTime = Engine_DeltaTime;
Context.MapUpdate.User.HazeAttraction = User_HazeAttraction;
Context.MapUpdate.Engine.Owner.Position = Engine_Owner_Position.xyz;
Context.MapUpdate.Engine.InverseDeltaTime = Engine_InverseDeltaTime;
Context.MapUpdate.Engine.Time = Engine_Time;
Context.MapUpdate.Engine.ExecutionCount = Engine_ExecutionCount;
Context.MapUpdate.Emitter.SpawnRate = Emitter_SpawnRate;
Context.MapUpdate.Engine.Emitter.TotalSpawnedParticles = Engine_Emitter_TotalSpawnedParticles;
Context.MapUpdate.Emitter.RandomSeed = Emitter_RandomSeed;
Context.MapUpdate.Engine.Emitter.InstanceSeed = Engine_Emitter_InstanceSeed;
}
void InitSpawnVariables(inout FSimulationContext Context)
{
Context.MapSpawn.Particles.Age = 0.0f;
Context.MapSpawn.Particles.DistanceTraveled = 0.0f;
Context.MapSpawn.Particles.DynamicMaterialParameter.x = 0.0f;
Context.MapSpawn.Particles.DynamicMaterialParameter.y = 0.0f;
Context.MapSpawn.Particles.DynamicMaterialParameter.z = 0.0f;
Context.MapSpawn.Particles.DynamicMaterialParameter.w = 0.0f;
Context.MapSpawn.Particles.ID.Index = 0;
Context.MapSpawn.Particles.ID.AcquireTag = 0;
Context.MapSpawn.Particles.Lifetime = 0.0f;
Context.MapSpawn.Particles.Mass = 0.0f;
Context.MapSpawn.Particles.MaterialRandom = 0.0f;
Context.MapSpawn.Particles.NormalizedAge = 0.0f;
Context.MapSpawn.Particles.Position.x = 0.0f;
Context.MapSpawn.Particles.Position.y = 0.0f;
Context.MapSpawn.Particles.Position.z = 0.0f;
Context.MapSpawn.Particles.Presolve.PhysicsForce.x = 0.0f;
Context.MapSpawn.Particles.Presolve.PhysicsForce.y = 0.0f;
Context.MapSpawn.Particles.Presolve.PhysicsForce.z = 0.0f;
Context.MapSpawn.Particles.Presolve.Position.x = 0.0f;
Context.MapSpawn.Particles.Presolve.Position.y = 0.0f;
Context.MapSpawn.Particles.Presolve.Position.z = 0.0f;
Context.MapSpawn.Particles.Presolve.Velocity.x = 0.0f;
Context.MapSpawn.Particles.Presolve.Velocity.y = 0.0f;
Context.MapSpawn.Particles.Presolve.Velocity.z = 0.0f;
Context.MapSpawn.Particles.Previous.Position.x = 0.0f;
Context.MapSpawn.Particles.Previous.Position.y = 0.0f;
Context.MapSpawn.Particles.Previous.Position.z = 0.0f;
Context.MapSpawn.Particles.Previous.SpriteRotation = 0.0f;
Context.MapSpawn.Particles.Previous.SpriteSize.x = 0.0f;
Context.MapSpawn.Particles.Previous.SpriteSize.y = 0.0f;
Context.MapSpawn.Particles.Previous.Velocity.x = 0.0f;
Context.MapSpawn.Particles.Previous.Velocity.y = 0.0f;
Context.MapSpawn.Particles.Previous.Velocity.z = 0.0f;
Context.MapSpawn.Particles.RibbonUVDistance = 0.0f;
Context.MapSpawn.Particles.SpriteRotation = 0.0f;
Context.MapSpawn.Particles.SpriteSize.x = 0.0f;
Context.MapSpawn.Particles.SpriteSize.y = 0.0f;
Context.MapSpawn.Particles.SubImageIndex = 0.0f;
Context.MapSpawn.Particles.UniqueID = 0;
Context.MapSpawn.Particles.UVScale.x = 0.0f;
Context.MapSpawn.Particles.UVScale.y = 0.0f;
Context.MapSpawn.Particles.Velocity.x = 0.0f;
Context.MapSpawn.Particles.Velocity.y = 0.0f;
Context.MapSpawn.Particles.Velocity.z = 0.0f;
Context.MapSpawn.DataInstance.Alive=true;
int IDIndex, IDAcquireTag;
AcquireID(0, IDIndex, IDAcquireTag);
Context.MapSpawn.Particles.ID.Index = IDIndex;
Context.MapSpawn.Particles.ID.AcquireTag = IDAcquireTag;
}
void LoadUpdateVariables(inout FSimulationContext Context, int InstanceIdx)
{
Context.MapUpdate.Particles.Age = InputDataFloat(0, 0, InstanceIdx);
Context.MapUpdate.Particles.DistanceTraveled = InputDataFloat(0, 1, InstanceIdx);
Context.MapUpdate.Particles.DynamicMaterialParameter.x = InputDataFloat(0, 2, InstanceIdx);
Context.MapUpdate.Particles.DynamicMaterialParameter.y = InputDataFloat(0, 3, InstanceIdx);
Context.MapUpdate.Particles.DynamicMaterialParameter.z = InputDataFloat(0, 4, InstanceIdx);
Context.MapUpdate.Particles.DynamicMaterialParameter.w = InputDataFloat(0, 5, InstanceIdx);
Context.MapUpdate.Particles.ID.Index = InputDataInt(0, 0, InstanceIdx);
Context.MapUpdate.Particles.ID.AcquireTag = InputDataInt(0, 1, InstanceIdx);
Context.MapUpdate.Particles.Lifetime = InputDataFloat(0, 6, InstanceIdx);
Context.MapUpdate.Particles.Mass = InputDataFloat(0, 7, InstanceIdx);
Context.MapUpdate.Particles.MaterialRandom = InputDataFloat(0, 8, InstanceIdx);
Context.MapUpdate.Particles.NormalizedAge = InputDataFloat(0, 9, InstanceIdx);
Context.MapUpdate.Particles.Position.x = InputDataFloat(0, 10, InstanceIdx);
Context.MapUpdate.Particles.Position.y = InputDataFloat(0, 11, InstanceIdx);
Context.MapUpdate.Particles.Position.z = InputDataFloat(0, 12, InstanceIdx);
Context.MapUpdate.Particles.Presolve.PhysicsForce.x = InputDataFloat(0, 13, InstanceIdx);
Context.MapUpdate.Particles.Presolve.PhysicsForce.y = InputDataFloat(0, 14, InstanceIdx);
Context.MapUpdate.Particles.Presolve.PhysicsForce.z = InputDataFloat(0, 15, InstanceIdx);
Context.MapUpdate.Particles.Presolve.Position.x = InputDataFloat(0, 16, InstanceIdx);
Context.MapUpdate.Particles.Presolve.Position.y = InputDataFloat(0, 17, InstanceIdx);
Context.MapUpdate.Particles.Presolve.Position.z = InputDataFloat(0, 18, InstanceIdx);
Context.MapUpdate.Particles.Presolve.Velocity.x = InputDataFloat(0, 19, InstanceIdx);
Context.MapUpdate.Particles.Presolve.Velocity.y = InputDataFloat(0, 20, InstanceIdx);
Context.MapUpdate.Particles.Presolve.Velocity.z = InputDataFloat(0, 21, InstanceIdx);
Context.MapUpdate.Particles.RibbonUVDistance = InputDataFloat(0, 31, InstanceIdx);
Context.MapUpdate.Particles.SpriteRotation = InputDataFloat(0, 32, InstanceIdx);
Context.MapUpdate.Particles.SpriteSize.x = InputDataFloat(0, 33, InstanceIdx);
Context.MapUpdate.Particles.SpriteSize.y = InputDataFloat(0, 34, InstanceIdx);
Context.MapUpdate.Particles.SubImageIndex = InputDataFloat(0, 35, InstanceIdx);
Context.MapUpdate.Particles.UniqueID = InputDataInt(0, 2, InstanceIdx);
Context.MapUpdate.Particles.UVScale.x = InputDataFloat(0, 36, InstanceIdx);
Context.MapUpdate.Particles.UVScale.y = InputDataFloat(0, 37, InstanceIdx);
Context.MapUpdate.Particles.Velocity.x = InputDataFloat(0, 38, InstanceIdx);
Context.MapUpdate.Particles.Velocity.y = InputDataFloat(0, 39, InstanceIdx);
Context.MapUpdate.Particles.Velocity.z = InputDataFloat(0, 40, InstanceIdx);
Context.MapUpdate.Particles.Previous.Position = Context.MapUpdate.Particles.Position;
Context.MapUpdate.Particles.Previous.SpriteRotation = Context.MapUpdate.Particles.SpriteRotation;
Context.MapUpdate.Particles.Previous.SpriteSize = Context.MapUpdate.Particles.SpriteSize;
Context.MapUpdate.Particles.Previous.Velocity = Context.MapUpdate.Particles.Velocity;
Context.MapUpdate.DataInstance.Alive=true;
}
void ConditionalInterpolateParameters(inout FSimulationContext Context)
{
InterpolateParameters(Context);
}
void TransferAttributes(inout FSimulationContext Context)
{
Context.MapUpdate.Particles = Context.MapSpawn.Particles;
Context.MapUpdate.Particles.Previous.Velocity = Context.MapSpawn.Particles.Velocity;
Context.MapUpdate.Particles.Previous.Position = Context.MapSpawn.Particles.Position;
}
void StoreUpdateVariables(in FSimulationContext Context)
{
const bool bValid = Context.MapUpdate.DataInstance.Alive;
const int WriteIndex = OutputIndex(0, true, bValid);
UpdateID(0, bValid ? Context.MapUpdate.Particles.ID.Index : -1, WriteIndex);
if (bValid)
{
OutputDataFloat(0, 0, WriteIndex, Context.MapUpdate.Particles.Age);
OutputDataFloat(0, 1, WriteIndex, Context.MapUpdate.Particles.DistanceTraveled);
OutputDataFloat(0, 2, WriteIndex, Context.MapUpdate.Particles.DynamicMaterialParameter.x);
OutputDataFloat(0, 3, WriteIndex, Context.MapUpdate.Particles.DynamicMaterialParameter.y);
OutputDataFloat(0, 4, WriteIndex, Context.MapUpdate.Particles.DynamicMaterialParameter.z);
OutputDataFloat(0, 5, WriteIndex, Context.MapUpdate.Particles.DynamicMaterialParameter.w);
OutputDataInt(0, 0, WriteIndex, Context.MapUpdate.Particles.ID.Index);
OutputDataInt(0, 1, WriteIndex, Context.MapUpdate.Particles.ID.AcquireTag);
OutputDataFloat(0, 6, WriteIndex, Context.MapUpdate.Particles.Lifetime);
OutputDataFloat(0, 7, WriteIndex, Context.MapUpdate.Particles.Mass);
OutputDataFloat(0, 8, WriteIndex, Context.MapUpdate.Particles.MaterialRandom);
OutputDataFloat(0, 9, WriteIndex, Context.MapUpdate.Particles.NormalizedAge);
OutputDataFloat(0, 10, WriteIndex, Context.MapUpdate.Particles.Position.x);
OutputDataFloat(0, 11, WriteIndex, Context.MapUpdate.Particles.Position.y);
OutputDataFloat(0, 12, WriteIndex, Context.MapUpdate.Particles.Position.z);
OutputDataFloat(0, 13, WriteIndex, Context.MapUpdate.Particles.Presolve.PhysicsForce.x);
OutputDataFloat(0, 14, WriteIndex, Context.MapUpdate.Particles.Presolve.PhysicsForce.y);
OutputDataFloat(0, 15, WriteIndex, Context.MapUpdate.Particles.Presolve.PhysicsForce.z);
OutputDataFloat(0, 16, WriteIndex, Context.MapUpdate.Particles.Presolve.Position.x);
OutputDataFloat(0, 17, WriteIndex, Context.MapUpdate.Particles.Presolve.Position.y);
OutputDataFloat(0, 18, WriteIndex, Context.MapUpdate.Particles.Presolve.Position.z);
OutputDataFloat(0, 19, WriteIndex, Context.MapUpdate.Particles.Presolve.Velocity.x);
OutputDataFloat(0, 20, WriteIndex, Context.MapUpdate.Particles.Presolve.Velocity.y);
OutputDataFloat(0, 21, WriteIndex, Context.MapUpdate.Particles.Presolve.Velocity.z);
OutputDataFloat(0, 22, WriteIndex, Context.MapUpdate.Particles.Previous.Position.x);
OutputDataFloat(0, 23, WriteIndex, Context.MapUpdate.Particles.Previous.Position.y);
OutputDataFloat(0, 24, WriteIndex, Context.MapUpdate.Particles.Previous.Position.z);
OutputDataFloat(0, 25, WriteIndex, Context.MapUpdate.Particles.Previous.SpriteRotation);
OutputDataFloat(0, 26, WriteIndex, Context.MapUpdate.Particles.Previous.SpriteSize.x);
OutputDataFloat(0, 27, WriteIndex, Context.MapUpdate.Particles.Previous.SpriteSize.y);
OutputDataFloat(0, 28, WriteIndex, Context.MapUpdate.Particles.Previous.Velocity.x);
OutputDataFloat(0, 29, WriteIndex, Context.MapUpdate.Particles.Previous.Velocity.y);
OutputDataFloat(0, 30, WriteIndex, Context.MapUpdate.Particles.Previous.Velocity.z);
OutputDataFloat(0, 31, WriteIndex, Context.MapUpdate.Particles.RibbonUVDistance);
OutputDataFloat(0, 32, WriteIndex, Context.MapUpdate.Particles.SpriteRotation);
OutputDataFloat(0, 33, WriteIndex, Context.MapUpdate.Particles.SpriteSize.x);
OutputDataFloat(0, 34, WriteIndex, Context.MapUpdate.Particles.SpriteSize.y);
OutputDataFloat(0, 35, WriteIndex, Context.MapUpdate.Particles.SubImageIndex);
OutputDataInt(0, 2, WriteIndex, Context.MapUpdate.Particles.UniqueID);
OutputDataFloat(0, 36, WriteIndex, Context.MapUpdate.Particles.UVScale.x);
OutputDataFloat(0, 37, WriteIndex, Context.MapUpdate.Particles.UVScale.y);
OutputDataFloat(0, 38, WriteIndex, Context.MapUpdate.Particles.Velocity.x);
OutputDataFloat(0, 39, WriteIndex, Context.MapUpdate.Particles.Velocity.y);
OutputDataFloat(0, 40, WriteIndex, Context.MapUpdate.Particles.Velocity.z);
}
}
void CopyInstance(in int InstanceIdx)
{
// TODO!
}
/*
* CS wrapper for our generated code; calls spawn and update functions on the corresponding instances in the buffer
*/
[numthreads(THREADGROUP_SIZE, 1, 1)]
void SimulateMainComputeCS(
uint3 DispatchThreadId : SV_DispatchThreadID,
uint3 GroupThreadId : SV_GroupThreadID)
{
GLinearThreadId = DispatchThreadId.x + (DispatchThreadId.y * DispatchThreadIdToLinear);
GDispatchThreadId = DispatchThreadId;
GGroupThreadId = GroupThreadId;
GCurrentPhase = -1;
GEmitterTickCounter = EmitterTickCounter;
GSimStart = SimStart;
GRandomSeedOffset = 0;
/*
if(CopyInstancesBeforeStart == 1)
{
UpdateStartInstance = 0;
}
*/
// The CPU code will set UpdateStartInstance to 0 and ReadInstanceCountOffset to -1 for stages.
const uint InstanceID = UpdateStartInstance + GLinearThreadId;
if (ReadInstanceCountOffset == 0xFFFFFFFF)
{
GSpawnStartInstance = 0;
}
else
{
GSpawnStartInstance = RWInstanceCounts[ReadInstanceCountOffset]; // needed by ExecIndex()
}
bool bRunUpdateLogic, bRunSpawnLogic;
#if USE_SIMULATION_STAGES
int IterationInterfaceInstanceCount = SimulationStage_GetInstanceCount();
if (IterationInterfaceInstanceCount > 0)
{
bRunUpdateLogic = InstanceID < IterationInterfaceInstanceCount && GSimStart != 1;
bRunSpawnLogic = InstanceID < IterationInterfaceInstanceCount && GSimStart == 1;
GSpawnStartInstance = IterationInterfaceInstanceCount;
}
else
#endif // USE_SIMULATION_STAGES
{
const int MaxInstances = GSpawnStartInstance + SpawnedInstances;
bRunUpdateLogic = InstanceID < GSpawnStartInstance && InstanceID < UpdateStartInstance + MaxInstances;
bRunSpawnLogic = InstanceID >= GSpawnStartInstance && InstanceID < UpdateStartInstance + MaxInstances;
}
const float RandomSeedInitialisation = NiagaraInternalNoise(InstanceID * 16384, 0 * 8196, (bRunUpdateLogic ? 4096 : 0) + EmitterTickCounter); // initialise the random state seed
FSimulationContext Context = (FSimulationContext)0;
BRANCH
if (bRunUpdateLogic)
{
GCurrentPhase = GUpdatePhase;
SetupExecIndexForGPU();
InitConstants(Context);
LoadUpdateVariables(Context, InstanceID);
ReadDataSets(Context);
}
else if (bRunSpawnLogic)
{
GCurrentPhase = GSpawnPhase;
#if USE_SIMULATION_STAGES
// Only process the spawn info for particle-based stages. Stages with an iteration interface expect the exec index to simply be the thread index.
if (IterationInterfaceInstanceCount > 0)
{
SetupExecIndexForGPU();
}
else
#endif
{
SetupExecIndexAndSpawnInfoForGPU();
}
InitConstants(Context);
InitSpawnVariables(Context);
ReadDataSets(Context);
Context.MapSpawn.Particles.UniqueID = Engine_Emitter_TotalSpawnedParticles + ExecIndex();
ConditionalInterpolateParameters(Context);
SimulateMapSpawn(Context);
GCurrentPhase = GUpdatePhase;
TransferAttributes(Context);
}
if (bRunUpdateLogic || bRunSpawnLogic)
{
SimulateMapUpdate(Context);
WriteDataSets(Context);
}
StoreUpdateVariables(Context);
}
<00>,Mc<00>c<00>%Emitter_FloatFromCurve001_FloatCurveNiagaraDataInterfaceCurve11SampleCurve_Emitter_FloatFromCurve001_FloatCurve%Emitter_FloatFromCurve002_FloatCurveNiagaraDataInterfaceCurve11SampleCurve_Emitter_FloatFromCurve002_FloatCurve-<00><00><00>0,<00>c0c<00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00> ]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00> ]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00> ]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>T,acTc,<00><00><00><00><00><00><00>'<00><><EFBFBD><EFBFBD><EFBFBD>c@<00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>*<00><00>+<00><00><00><00><00><00><00><00><00>'<00><><EFBFBD><EFBFBD><EFBFBD>c@<00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>*<00><00>+<00><00><00><00><00><00><00><00>cr<>9<EFBFBD>E5<45>B<EFBFBD><42><6E> #<23>,<00>c<00>c<00><00><00>c<00><00>O'a'<00>cr<>9<EFBFBD>E5<45>B<EFBFBD><42><6E> #>@<00><00>v <00><00>'<00>Yv <00>J@#,<00>-,5c-c<00>5@<00>v <00><00><00><00><00>6@<00>v <00><00>v <00>0<00><00><00><00><00><00><00><00>v <00>)v <00>^v <00>,5cc<00>8Q<00>b.c<00>dccn_7<5F>D!<><7F>N<EFBFBD>-G<>
;<00><00><00><c$,FbInterpolatedSpawnRequiresPersistentIDsGPUComputeSim%,5c%c<00>N@9@G@2cA<00><00>,P<00>K<EFBFBD><4B>nV<6E><1F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>E<EFBFBD><EFBFBD>V<EFBFBD><56>(,}cH(cH<00><00>,P0<><30><EFBFBD><EFBFBD><17><><EFBFBD><EFBFBD><04><><14><><EFBFBD>k-<2D><><00>,Pw<>3v3[<5B>v<EFBFBD><1/<2F><>6>tH<><00>,Pw<>3v3[<5B>v<EFBFBD><1/<2F><>6>tH<><00>,Pw<>3v3[<5B>v<EFBFBD><1/<2F><>6>tH<><00>,Pw<>3v3[<5B>v<EFBFBD><1/<2F><>6>tH<><00>,P<00>S<EFBFBD>{<7B><>:N}<7D><>/<2F><><EFBFBD><EFBFBD>1X<31><00>,Pw<>3v3[<5B>v<EFBFBD><1/<2F><>6>tH<><00>,Pw<>3v3[<5B>v<EFBFBD><1/<2F><>6>tH<><00>,Pw<>3v3[<5B>v<EFBFBD><1/<2F><>6>tH<><00>,P<00><><EFBFBD>J ;<3B>&<26>$<24><><EFBFBD><17>ܦ(<28><00>,Pw<>3v3[<5B>v<EFBFBD><1/<2F><>6>tH<><00>,Pw<>3v3[<5B>v<EFBFBD><1/<2F><>6>tH<><00>,Pw<>3v3[<5B>v<EFBFBD><1/<2F><>6>tH<><00>,P<00>S<EFBFBD>{<7B><>:N}<7D><>/<2F><><EFBFBD><EFBFBD>1X<31><00>,P<00><>Nc,}ח<><D797>*<2A><><EFBFBD>h<EFBFBD><68><EFBFBD>ON<4F><00>,P<00>Vc<56>e<EFBFBD>)B<00>:%<25>Ϸf{<7B>B<EFBFBD><00>,P<00><>Nc,}ח<><D797>*<2A><><EFBFBD>h<EFBFBD><68><EFBFBD>ON<4F><00>,P<00>Vc<56>e<EFBFBD>)B<00>:%<25>Ϸf{<7B>B<EFBFBD><00>,Pw<>3v3[<5B>v<EFBFBD><1/<2F><>6>tH<><00>,Pw<>3v3[<5B>v<EFBFBD><1/<2F><>6>tH<><00>,P<00>S<EFBFBD>{<7B><>:N}<7D><>/<2F><><EFBFBD><EFBFBD>1X<31><00>,PD<>i-'Kس<4B>˕I{"*@W<><57><00>,Psr<73>i
b<EFBFBD>m<EFBFBD>\c&8T<38><54>9<EFBFBD><39><00>,P<00>mT<6D><54><EFBFBD>k<EFBFBD>SDޗ<44><DE97>B<EFBFBD><42>F? <0A><00>,P<00>Vc<56>e<EFBFBD>)B<00>:%<25>Ϸf{<7B>B<EFBFBD><00>,P<62><DF82><EFBFBD>Ѳ<EFBFBD><D1B2><EFBFBD>]<5D>^<5E><><EFBFBD>a<1C><00>,P<00><><EFBFBD>bPĞE<14>Y<EFBFBD><59>i<EFBFBD><69><EFBFBD><EFBFBD>$<24><00>,P<00><>R<EFBFBD><52>_<EFBFBD>6|b/<2F>?<1B><><10><><00>,P/kjn^<5E>b0t)Qqg[-<2D>~<7E><><EFBFBD><00>,P<00>7<><DB87><EFBFBD>53a<33>MD<>^gE<67><00>,P<00>S<EFBFBD>{<7B><>:N}<7D><>/<2F><><EFBFBD><EFBFBD>1X<31><00>,P<00>7<><DB87><EFBFBD>53a<33>MD<>^gE<67><00>,P<00>S<EFBFBD>{<7B><>:N}<7D><>/<2F><><EFBFBD><EFBFBD>1X<31><00>,P<00>7<><DB87><EFBFBD>53a<33>MD<>^gE<67><00>,P<00>S<EFBFBD>{<7B><>:N}<7D><>/<2F><><EFBFBD><EFBFBD>1X<31><00>,P<00>7<><DB87><EFBFBD>53a<33>MD<>^gE<67><00>,P<00>S<EFBFBD>{<7B><>:N}<7D><>/<2F><><EFBFBD><EFBFBD>1X<31><00>,P<00><>:<3A>m<EFBFBD>Hk!<14>`<60><>A<EFBFBD>(<28><><00>,P ^#<19><>*Q<><51><EFBFBD>MmIb<49><62>7<EFBFBD><37><EFBFBD><00>,P<00><><EFBFBD>[Ӭ$֟<> <0A><>q<EFBFBD>w<EFBFBD>|<7C><00>,P<00><><EFBFBD>[Ӭ$֟<> <0A><>q<EFBFBD>w<EFBFBD>|<7C><00>,P@<1D>$<24><>u<EFBFBD>.k<><51>S<1A>bt<62><00>,P<00>mT<6D><54><EFBFBD>k<EFBFBD>SDޗ<44><DE97>B<EFBFBD><42>F? <0A><00>,PD<>i-'Kس<4B>˕I{"*@W<><57><00>,Psr<73>i
b<EFBFBD>m<EFBFBD>\c&8T<38><54>9<EFBFBD><39><00>,PD<>i-'Kس<4B>˕I{"*@W<><57><00>,Psr<73>i
b<EFBFBD>m<EFBFBD>\c&8T<38><54>9<EFBFBD><39><00>,PD<>i-'Kس<4B>˕I{"*@W<><57><00>,Psr<73>i
b<EFBFBD>m<EFBFBD>\c&8T<38><54>9<EFBFBD><39><00>,PL5 &<26><><EFBFBD>ܶ<EFBFBD>(ҠUP<55> O<><00>,P[<08><><EFBFBD><EFBFBD>L<EFBFBD> <0B><>T<EFBFBD>%<12><00>,PZ<><5A>&<26>
`<60><><EFBFBD>2C<32>t<EFBFBD>j<EFBFBD><10><><00>,P<00>,X<19><>*<11><>^<5E><10>x<EFBFBD><78>=<3D><00>,P<00>mT<6D><54><EFBFBD>k<EFBFBD>SDޗ<44><DE97>B<EFBFBD><42>F? <0A><00>,PD<>i-'Kس<4B>˕I{"*@W<><57><00>,Psr<73>i
b<EFBFBD>m<EFBFBD>\c&8T<38><54>9<EFBFBD><39><00>,P<00><><EFBFBD>[Ӭ$֟<> <0A><>q<EFBFBD>w<EFBFBD>|<7C><00>,P<00><><EFBFBD>[Ӭ$֟<> <0A><>q<EFBFBD>w<EFBFBD>|<7C><00>,P<00>mT<6D><54><EFBFBD>k<EFBFBD>SDޗ<44><DE97>B<EFBFBD><42>F? <0A><00>,P<00><>%W<><57>9b<39>O<EFBFBD>8<EFBFBD><38><EFBFBD><05><><EFBFBD><EFBFBD><EFBFBD><00>,Psr<73>i
b<EFBFBD>m<EFBFBD>\c&8T<38><54>9<EFBFBD><39><00>,PD<>i-'Kس<4B>˕I{"*@W<><57><00>,Psr<73>i
b<EFBFBD>m<EFBFBD>\c&8T<38><54>9<EFBFBD><39><00>,P
j<>y[<5B>^<5E><06>_<EFBFBD><11><>^@?<3F><><00>,P<00>mT<6D><54><EFBFBD>k<EFBFBD>SDޗ<44><DE97>B<EFBFBD><42>F? <0A><00>,P<00><><EFBFBD>[Ӭ$֟<> <0A><>q<EFBFBD>w<EFBFBD>|<7C><00>,P<00><><EFBFBD>[Ӭ$֟<> <0A><>q<EFBFBD>w<EFBFBD>|<7C><00>,PZ<><5A>&<26>
`<60><><EFBFBD>2C<32>t<EFBFBD>j<EFBFBD><10><><00>,P<00><17><>@<40>vAU]<5D>L/P<>dW<64><00>,Pw 9<><39><EFBFBD>a)<29><18><>9`Fgf<17><00>,P<00>*<2A><>%LR<4C><52><EFBFBD>?<3F>L<EFBFBD>1%<25><><EFBFBD><00>,P<07>FD<46><44><11><>i<EFBFBD>SY<53><59><EFBFBD>U<EFBFBD><55>=c<00><00><00><00><00>$b7c%b<00><00>,<00>c<00>c<00><00><00>c<00>#I|<7C>ڳI<DAB3><49> <20>.r%S' <09><><00>c<00><>\<5C>,<2C>F<>!p
;<3B>S'<00>(<28><><00>c'<27><>(<28>i<EFBFBD>F<EFBFBD>.YO<59> <0C>YS'Ɛ<><C690><EFBFBD><00>c<00><><EFBFBD>4<><34>L<EFBFBD>Ϻo<CFBA>d S'Ɛ<><C690><EFBFBD>F<00>3<00>'co<00>E,]cEc(<00>q]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>r]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00> s]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>u]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>v]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>(<00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>4<00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>8<00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><<00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>H<00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>L<00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>P<00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>T<00>,\PX<00>C<00>CHC<00>?<00>?<00>?<00>??<00>?<3F>bSONiagaraScript /Niagara/DefaultAssets/DefaultEmitter.DefaultEmitter:SpawnScript<00>Vc<00><00>dccn_7<5F>D!<><7F>N<EFBFBD>-G<>
;<00><00><00>$,FbInterpolatedSpawnRequiresPersistentIDsGPUComputeSim%,uc%c@<00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00> ]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>9@G@2cA<00><00>,P<00>K<EFBFBD><4B>nV<6E><1F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>E<EFBFBD><EFBFBD>V<EFBFBD><56>(,}cH(cH<00><00>,P0<><30><EFBFBD><EFBFBD><17><><EFBFBD><EFBFBD><04><><14><><EFBFBD>k-<2D><><00>,Pw<>3v3[<5B>v<EFBFBD><1/<2F><>6>tH<><00>,Pw<>3v3[<5B>v<EFBFBD><1/<2F><>6>tH<><00>,Pw<>3v3[<5B>v<EFBFBD><1/<2F><>6>tH<><00>,Pw<>3v3[<5B>v<EFBFBD><1/<2F><>6>tH<><00>,P<00>S<EFBFBD>{<7B><>:N}<7D><>/<2F><><EFBFBD><EFBFBD>1X<31><00>,Pw<>3v3[<5B>v<EFBFBD><1/<2F><>6>tH<><00>,Pw<>3v3[<5B>v<EFBFBD><1/<2F><>6>tH<><00>,Pw<>3v3[<5B>v<EFBFBD><1/<2F><>6>tH<><00>,P<00><><EFBFBD>J ;<3B>&<26>$<24><><EFBFBD><17>ܦ(<28><00>,Pw<>3v3[<5B>v<EFBFBD><1/<2F><>6>tH<><00>,Pw<>3v3[<5B>v<EFBFBD><1/<2F><>6>tH<><00>,Pw<>3v3[<5B>v<EFBFBD><1/<2F><>6>tH<><00>,P<00>S<EFBFBD>{<7B><>:N}<7D><>/<2F><><EFBFBD><EFBFBD>1X<31><00>,P<00><>Nc,}ח<><D797>*<2A><><EFBFBD>h<EFBFBD><68><EFBFBD>ON<4F><00>,P<00>Vc<56>e<EFBFBD>)B<00>:%<25>Ϸf{<7B>B<EFBFBD><00>,P<00><>Nc,}ח<><D797>*<2A><><EFBFBD>h<EFBFBD><68><EFBFBD>ON<4F><00>,P<00>Vc<56>e<EFBFBD>)B<00>:%<25>Ϸf{<7B>B<EFBFBD><00>,Pw<>3v3[<5B>v<EFBFBD><1/<2F><>6>tH<><00>,Pw<>3v3[<5B>v<EFBFBD><1/<2F><>6>tH<><00>,P<00>S<EFBFBD>{<7B><>:N}<7D><>/<2F><><EFBFBD><EFBFBD>1X<31><00>,PD<>i-'Kس<4B>˕I{"*@W<><57><00>,Psr<73>i
b<EFBFBD>m<EFBFBD>\c&8T<38><54>9<EFBFBD><39><00>,P<00>mT<6D><54><EFBFBD>k<EFBFBD>SDޗ<44><DE97>B<EFBFBD><42>F? <0A><00>,P<00>Vc<56>e<EFBFBD>)B<00>:%<25>Ϸf{<7B>B<EFBFBD><00>,P<62><DF82><EFBFBD>Ѳ<EFBFBD><D1B2><EFBFBD>]<5D>^<5E><><EFBFBD>a<1C><00>,P<00><><EFBFBD>bPĞE<14>Y<EFBFBD><59>i<EFBFBD><69><EFBFBD><EFBFBD>$<24><00>,P<00><>R<EFBFBD><52>_<EFBFBD>6|b/<2F>?<1B><><10><><00>,P/kjn^<5E>b0t)Qqg[-<2D>~<7E><><EFBFBD><00>,P<00>7<><DB87><EFBFBD>53a<33>MD<>^gE<67><00>,P<00>S<EFBFBD>{<7B><>:N}<7D><>/<2F><><EFBFBD><EFBFBD>1X<31><00>,P<00>7<><DB87><EFBFBD>53a<33>MD<>^gE<67><00>,P<00>S<EFBFBD>{<7B><>:N}<7D><>/<2F><><EFBFBD><EFBFBD>1X<31><00>,P<00>7<><DB87><EFBFBD>53a<33>MD<>^gE<67><00>,P<00>S<EFBFBD>{<7B><>:N}<7D><>/<2F><><EFBFBD><EFBFBD>1X<31><00>,P<00>7<><DB87><EFBFBD>53a<33>MD<>^gE<67><00>,P<00>S<EFBFBD>{<7B><>:N}<7D><>/<2F><><EFBFBD><EFBFBD>1X<31><00>,P<00><>:<3A>m<EFBFBD>Hk!<14>`<60><>A<EFBFBD>(<28><><00>,P ^#<19><>*Q<><51><EFBFBD>MmIb<49><62>7<EFBFBD><37><EFBFBD><00>,P<00><><EFBFBD>[Ӭ$֟<> <0A><>q<EFBFBD>w<EFBFBD>|<7C><00>,P<00><><EFBFBD>[Ӭ$֟<> <0A><>q<EFBFBD>w<EFBFBD>|<7C><00>,P@<1D>$<24><>u<EFBFBD>.k<><51>S<1A>bt<62><00>,P<00>mT<6D><54><EFBFBD>k<EFBFBD>SDޗ<44><DE97>B<EFBFBD><42>F? <0A><00>,PD<>i-'Kس<4B>˕I{"*@W<><57><00>,Psr<73>i
b<EFBFBD>m<EFBFBD>\c&8T<38><54>9<EFBFBD><39><00>,PD<>i-'Kس<4B>˕I{"*@W<><57><00>,Psr<73>i
b<EFBFBD>m<EFBFBD>\c&8T<38><54>9<EFBFBD><39><00>,PD<>i-'Kس<4B>˕I{"*@W<><57><00>,Psr<73>i
b<EFBFBD>m<EFBFBD>\c&8T<38><54>9<EFBFBD><39><00>,PL5 &<26><><EFBFBD>ܶ<EFBFBD>(ҠUP<55> O<><00>,P[<08><><EFBFBD><EFBFBD>L<EFBFBD> <0B><>T<EFBFBD>%<12><00>,PZ<><5A>&<26>
`<60><><EFBFBD>2C<32>t<EFBFBD>j<EFBFBD><10><><00>,P<00>,X<19><>*<11><>^<5E><10>x<EFBFBD><78>=<3D><00>,P<00>mT<6D><54><EFBFBD>k<EFBFBD>SDޗ<44><DE97>B<EFBFBD><42>F? <0A><00>,PD<>i-'Kس<4B>˕I{"*@W<><57><00>,Psr<73>i
b<EFBFBD>m<EFBFBD>\c&8T<38><54>9<EFBFBD><39><00>,P<00><><EFBFBD>[Ӭ$֟<> <0A><>q<EFBFBD>w<EFBFBD>|<7C><00>,P<00><><EFBFBD>[Ӭ$֟<> <0A><>q<EFBFBD>w<EFBFBD>|<7C><00>,P<00>mT<6D><54><EFBFBD>k<EFBFBD>SDޗ<44><DE97>B<EFBFBD><42>F? <0A><00>,P<00><>%W<><57>9b<39>O<EFBFBD>8<EFBFBD><38><EFBFBD><05><><EFBFBD><EFBFBD><EFBFBD><00>,Psr<73>i
b<EFBFBD>m<EFBFBD>\c&8T<38><54>9<EFBFBD><39><00>,PD<>i-'Kس<4B>˕I{"*@W<><57><00>,Psr<73>i
b<EFBFBD>m<EFBFBD>\c&8T<38><54>9<EFBFBD><39><00>,P
j<>y[<5B>^<5E><06>_<EFBFBD><11><>^@?<3F><><00>,P<00>mT<6D><54><EFBFBD>k<EFBFBD>SDޗ<44><DE97>B<EFBFBD><42>F? <0A><00>,P<00><><EFBFBD>[Ӭ$֟<> <0A><>q<EFBFBD>w<EFBFBD>|<7C><00>,P<00><><EFBFBD>[Ӭ$֟<> <0A><>q<EFBFBD>w<EFBFBD>|<7C><00>,PZ<><5A>&<26>
`<60><><EFBFBD>2C<32>t<EFBFBD>j<EFBFBD><10><><00>,P<00><17><>@<40>vAU]<5D>L/P<>dW<64><00>,Pw 9<><39><EFBFBD>a)<29><18><>9`Fgf<17><00>,P<00>*<2A><>%LR<4C><52><EFBFBD>?<3F>L<EFBFBD>1%<25><><EFBFBD><00>,P<07>FD<46><44><11><>i<EFBFBD>SY<53><59><EFBFBD>U<EFBFBD><55><00>Uc P<00><00>c6
<00><00>,
c<00>c<00> <00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>s]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>r]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>Cq]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00> <00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>?<00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00> <00>?<00>?<00>?<3F>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00> <00>?<00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00> <00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>x]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00> w]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>By]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>?z]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>@~]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>zD}]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><Fo]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>?g]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>h]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>i]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>e,<00>cecL<00><00>cP<00><]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>ab<00><00>cP<00>4]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00><><EFBFBD><EFBFBD>ab<00>/,Ac/c <00>+]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>2]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>U]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>Y]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00> ]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00>
<00><00><00><00><00>'<00><><EFBFBD><EFBFBD><EFBFBD>c@<00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>),Dc)c<00><00><00>1%,<00>c%c<00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>,<00>c<00>cL<00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00><00><00>E@F@?@6@<00>v <00><00>K@L@O@H@;@<00>'<00>'<00><><EFBFBD><EFBFBD><EFBFBD>'<00><><EFBFBD><EFBFBD>Q<00><00><00>v <00>#Qcv<00>Qcv<00>*<00><00>+<00><00>=@<00><00><00><00><00>'<00><><EFBFBD><EFBFBD><EFBFBD>c@<00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>),Dc)c<00><00><00>1%,<00>c%c<00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>,<00>c<00>cL<00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00><00><00>E@F@?@6@<00>v <00><00>K@L@O@H@;@<00>'<00>'<00><><EFBFBD><EFBFBD><EFBFBD>'<00><><EFBFBD><EFBFBD>Q<00><00><00>v <00>#Qcv<00>Qcv<00>*<00><00>+<00><00>=@<00>`,cc `c.<00><00>I <00>I<00><00>! <00> <00><00>j <00>i<00><00>T <00>S<00><00> <00><00><00> <00><00><00>D <00>C<00><00><00> <00><00><00><00>J <00>N<00><00>K <00>R<00><00>L <00>S<00>/b<00>(<00>(// Shader generated by Niagara HLSL Translator
// Compile Tags:
// Variable: "bIsInfinitelyLived(False)" StringValue: ""
// Variable: "bCanDieWhenEmitterDeactivates(True)" StringValue: ""
struct NiagaraID
{
int Index;
int AcquireTag;
};
struct NiagaraRandInfo
{
int Seed1;
int Seed2;
int Seed3;
};
cbuffer FNiagaraGlobalParameters
{
float Engine_DeltaTime;
float Engine_InverseDeltaTime;
float Engine_Time;
float Engine_RealTime;
int Engine_QualityLevel;
int Engine_PaddingInt32_0;
int Engine_PaddingInt32_1;
int Engine_PaddingInt32_2;
}
cbuffer FNiagaraSystemParameters
{
float Engine_Owner_TimeSinceRendered;
float Engine_Owner_LODDistance;
float Engine_Owner_LODDistanceFraction;
float Engine_System_Age;
int Engine_Owner_ExecutionState;
int Engine_System_TickCount;
int Engine_System_NumEmitters;
int Engine_System_NumEmittersAlive;
int Engine_System_SignificanceIndex;
int Engine_System_PaddingInt32_0;
int Engine_System_PaddingInt32_1;
int Engine_System_PaddingInt32_2;
}
cbuffer FNiagaraOwnerParameters
{
float4x4 Engine_Owner_SystemLocalToWorld;
float4x4 Engine_Owner_SystemWorldToLocal;
float4x4 Engine_Owner_SystemLocalToWorldTransposed;
float4x4 Engine_Owner_SystemWorldToLocalTransposed;
float4x4 Engine_Owner_SystemLocalToWorldNoScale;
float4x4 Engine_Owner_SystemWorldToLocalNoScale;
float4 Engine_Owner_Rotation;
float4 Engine_Owner_Position;
float4 Engine_Owner_Velocity;
float4 Engine_Owner_SystemXAxis;
float4 Engine_Owner_SystemYAxis;
float4 Engine_Owner_SystemZAxis;
float4 Engine_Owner_Scale;
}
cbuffer FNiagaraEmitterParameters
{
int Engine_Emitter_NumParticles;
int Engine_Emitter_TotalSpawnedParticles;
float Engine_Emitter_SpawnCountScale;
float Emitter_Age;
int Emitter_RandomSeed;
int Engine_Emitter_InstanceSeed;
int Engine_Emitter_PaddingInt32_0;
int Engine_Emitter_PaddingInt32_1;
}
cbuffer FNiagaraExternalParameters
{
float User_HazeSize;
float User_HazeLifetime;
float Constants_Emitter_InitializeParticle_SpriteRotationAngleMin;
float Constants_Emitter_InitializeParticle_SpriteRotationAngleMax;
float3 Constants_Emitter_InitializeParticle_PositionOffset;
float Emitter_DistanceTraveled;
int Constants_Emitter_SubUVAnimation_StartFrame;
int Constants_Emitter_SubUVAnimation_EndFrame;
float User_HazeRadius;
int Constants_Emitter_SphereLocation_RandomSeed;
float Constants_Emitter_SphereLocation_SurfaceOnlyBandThickness;
float3 Constants_Emitter_SphereLocation_NonUniformScale;
float3 Constants_Emitter_SphereLocation_SphereOrientationAxis;
float3 Constants_Emitter_SphereLocation_Offset;
int Constants_Emitter_SphereLocation_SpawnGroupMask;
float User_HazeAttraction;
float3 Constants_Emitter_PointAttractionForce_AttractorPositionOffset;
float Constants_Emitter_PointAttractionForce_AttractionRadius;
float Constants_Emitter_PointAttractionForce_FalloffExponent;
float Constants_Emitter_PointAttractionForce_KillRadius;
float Constants_Emitter_SolveForcesAndVelocity_SpeedLimit;
float Constants_Emitter_SolveForcesAndVelocity_AccelerationLimit;
float Constants_Emitter_FloatFromCurve002_ScaleCurve;
float Constants_Emitter_DynamicMaterialParameters_Index0Param2;
float Constants_Emitter_DynamicMaterialParameters_Index0Param3;
float Constants_Emitter_DynamicMaterialParameters_Index0Param4;
int Engine_ExecutionCount;
float Emitter_SpawnRate;
float Emitter_SpawnInterval;
float Emitter_InterpSpawnStartDt;
int Emitter_SpawnGroup;
}
cbuffer PREV_FNiagaraGlobalParameters
{
float PREV_Engine_DeltaTime;
float PREV_Engine_InverseDeltaTime;
float PREV_Engine_Time;
float PREV_Engine_RealTime;
int PREV_Engine_QualityLevel;
int PREV_Engine_PaddingInt32_0;
int PREV_Engine_PaddingInt32_1;
int PREV_Engine_PaddingInt32_2;
}
cbuffer PREV_FNiagaraSystemParameters
{
float PREV_Engine_Owner_TimeSinceRendered;
float PREV_Engine_Owner_LODDistance;
float PREV_Engine_Owner_LODDistanceFraction;
float PREV_Engine_System_Age;
int PREV_Engine_Owner_ExecutionState;
int PREV_Engine_System_TickCount;
int PREV_Engine_System_NumEmitters;
int PREV_Engine_System_NumEmittersAlive;
int PREV_Engine_System_SignificanceIndex;
int PREV_Engine_System_PaddingInt32_0;
int PREV_Engine_System_PaddingInt32_1;
int PREV_Engine_System_PaddingInt32_2;
}
cbuffer PREV_FNiagaraOwnerParameters
{
float4x4 PREV_Engine_Owner_SystemLocalToWorld;
float4x4 PREV_Engine_Owner_SystemWorldToLocal;
float4x4 PREV_Engine_Owner_SystemLocalToWorldTransposed;
float4x4 PREV_Engine_Owner_SystemWorldToLocalTransposed;
float4x4 PREV_Engine_Owner_SystemLocalToWorldNoScale;
float4x4 PREV_Engine_Owner_SystemWorldToLocalNoScale;
float4 PREV_Engine_Owner_Rotation;
float4 PREV_Engine_Owner_Position;
float4 PREV_Engine_Owner_Velocity;
float4 PREV_Engine_Owner_SystemXAxis;
float4 PREV_Engine_Owner_SystemYAxis;
float4 PREV_Engine_Owner_SystemZAxis;
float4 PREV_Engine_Owner_Scale;
}
cbuffer PREV_FNiagaraEmitterParameters
{
int PREV_Engine_Emitter_NumParticles;
int PREV_Engine_Emitter_TotalSpawnedParticles;
float PREV_Engine_Emitter_SpawnCountScale;
float PREV_Emitter_Age;
int PREV_Emitter_RandomSeed;
int PREV_Engine_Emitter_InstanceSeed;
int PREV_Engine_Emitter_PaddingInt32_0;
int PREV_Engine_Emitter_PaddingInt32_1;
}
cbuffer PREV_FNiagaraExternalParameters
{
float PREV_User_HazeSize;
float PREV_User_HazeLifetime;
float PREV_Constants_Emitter_InitializeParticle_SpriteRotationAngleMin;
float PREV_Constants_Emitter_InitializeParticle_SpriteRotationAngleMax;
float3 PREV_Constants_Emitter_InitializeParticle_PositionOffset;
float PREV_Emitter_DistanceTraveled;
int PREV_Constants_Emitter_SubUVAnimation_StartFrame;
int PREV_Constants_Emitter_SubUVAnimation_EndFrame;
float PREV_User_HazeRadius;
int PREV_Constants_Emitter_SphereLocation_RandomSeed;
float PREV_Constants_Emitter_SphereLocation_SurfaceOnlyBandThickness;
float3 PREV_Constants_Emitter_SphereLocation_NonUniformScale;
float3 PREV_Constants_Emitter_SphereLocation_SphereOrientationAxis;
float3 PREV_Constants_Emitter_SphereLocation_Offset;
int PREV_Constants_Emitter_SphereLocation_SpawnGroupMask;
float PREV_User_HazeAttraction;
float3 PREV_Constants_Emitter_PointAttractionForce_AttractorPositionOffset;
float PREV_Constants_Emitter_PointAttractionForce_AttractionRadius;
float PREV_Constants_Emitter_PointAttractionForce_FalloffExponent;
float PREV_Constants_Emitter_PointAttractionForce_KillRadius;
float PREV_Constants_Emitter_SolveForcesAndVelocity_SpeedLimit;
float PREV_Constants_Emitter_SolveForcesAndVelocity_AccelerationLimit;
float PREV_Constants_Emitter_FloatFromCurve002_ScaleCurve;
float PREV_Constants_Emitter_DynamicMaterialParameters_Index0Param2;
float PREV_Constants_Emitter_DynamicMaterialParameters_Index0Param3;
float PREV_Constants_Emitter_DynamicMaterialParameters_Index0Param4;
int PREV_Engine_ExecutionCount;
float PREV_Emitter_SpawnRate;
float PREV_Emitter_SpawnInterval;
float PREV_Emitter_InterpSpawnStartDt;
int PREV_Emitter_SpawnGroup;
}
struct FParamMap0_User
{
float HazeAttraction;
float HazeLifetime;
float HazeRadius;
float HazeSize;
};
struct FParamMap0_Transient
{
bool FirstFrame;
float PhysicsDeltaTime;
float PhysicsDrag;
float3 PhysicsForce;
};
struct FParamMap0_SphereLocation
{
bool HemisphereX;
bool HemisphereY;
bool HemisphereZ;
bool NormalizeThickness;
int OffsetCoordinateSpace;
int SphereCoordinateSpace;
float3 SphereOrigin;
float SphereRadius;
int SurfaceExpansionMode;
};
struct FParamMap0_SolveForcesAndVelocity
{
float DeltaTime;
float3 Force;
float Mass;
float3 Position;
float3 PreviousVelocity;
float3 Velocity;
bool WritetoIntrinsicProperties;
};
struct FParamMap0_PointAttractionForce
{
float AttractionStrength;
float3 AttractorPosition;
float3 PositionToAttract;
bool UseFalloff;
};
struct FParamMap0_ParticleState
{
float DeltaTime;
float Lifetime;
};
struct FParamMap0_Particles_Previous
{
float3 Position;
float SpriteRotation;
float2 SpriteSize;
float3 Velocity;
};
struct FParamMap0_Particles_Presolve
{
float3 PhysicsForce;
float3 Position;
float3 Velocity;
};
struct FParamMap0_Particles
{
float Age;
float DistanceTraveled;
float4 DynamicMaterialParameter;
NiagaraID ID;
float Lifetime;
float Mass;
float MaterialRandom;
float NormalizedAge;
float3 Position;
FParamMap0_Particles_Presolve Presolve;
FParamMap0_Particles_Previous Previous;
float RibbonUVDistance;
float SpriteRotation;
float2 SpriteSize;
float SubImageIndex;
int UniqueID;
float2 UVScale;
float3 Velocity;
};
struct FParamMap0_OUTPUT_VAR_SphereLocation
{
float3 Position;
float3 SphereNormal;
float3 SphereVector;
};
struct FParamMap0_OUTPUT_VAR_SolveForcesAndVelocity
{
float IncomingPhysicsDrag;
float3 IncomingPhysicsForce;
float3 Position;
float3 Velocity;
};
struct FParamMap0_OUTPUT_VAR_ParticleState
{
bool FirstFrame;
};
struct FParamMap0_OUTPUT_VAR
{
FParamMap0_OUTPUT_VAR_ParticleState ParticleState;
FParamMap0_OUTPUT_VAR_SolveForcesAndVelocity SolveForcesAndVelocity;
FParamMap0_OUTPUT_VAR_SphereLocation SphereLocation;
};
struct FParamMap0_Local_SubUVAnimation
{
float EndFrame;
float StartFrame;
};
struct FParamMap0_Local_SphereLocation
{
float3 SphereVector;
};
struct FParamMap0_Local_SolveForcesAndVelocity
{
float DeltaTime;
float Mass;
float3 PhysicsForce;
};
struct FParamMap0_Local_PointAttractionForce
{
float3 AttractedPosition;
float3 AttractionForce;
float3 AttractorOrigin;
bool IsWithinAttractor;
float3 PointOriginVec;
float PointOriginVecLength;
};
struct FParamMap0_Local_InitializeParticle
{
float InitRIbbonDistance;
};
struct FParamMap0_Local
{
FParamMap0_Local_InitializeParticle InitializeParticle;
FParamMap0_Local_PointAttractionForce PointAttractionForce;
FParamMap0_Local_SolveForcesAndVelocity SolveForcesAndVelocity;
FParamMap0_Local_SphereLocation SphereLocation;
FParamMap0_Local_SubUVAnimation SubUVAnimation;
};
struct FParamMap0_Interpolation
{
float Emitter_InterpSpawnStartDt;
int Emitter_SpawnGroup;
float Emitter_SpawnInterval;
int InterpSpawn_Index;
float InterpSpawn_InvSpawnTime;
float InterpSpawn_InvUpdateTime;
float InterpSpawn_SpawnTime;
float InterpSpawn_UpdateTime;
float SpawnInterp;
};
struct FParamMap0_InitializeParticle
{
float Lifetime;
float MaterialRandom;
int PositionOffsetCoordinateSpace;
float UniformSpriteSize;
};
struct FParamMap0_FloatFromCurve002
{
float CurveIndex;
};
struct FParamMap0_FloatFromCurve001
{
float CurveIndex;
float ScaleCurve;
};
struct FParamMap0_Engine_System
{
float Age;
int NumEmitters;
int NumEmittersAlive;
int PaddingInt32_0;
int PaddingInt32_1;
int PaddingInt32_2;
int SignificanceIndex;
int TickCount;
};
struct FParamMap0_Engine_Owner
{
int ExecutionState;
float LODDistance;
float LODDistanceFraction;
float3 Position;
float4 Rotation;
float3 Scale;
float4x4 SystemLocalToWorld;
float4x4 SystemLocalToWorldNoScale;
float4x4 SystemLocalToWorldTransposed;
float4x4 SystemWorldToLocal;
float4x4 SystemWorldToLocalNoScale;
float4x4 SystemWorldToLocalTransposed;
float3 SystemXAxis;
float3 SystemYAxis;
float3 SystemZAxis;
float TimeSinceRendered;
float3 Velocity;
};
struct FParamMap0_Engine_Emitter
{
int InstanceSeed;
int NumParticles;
int PaddingInt32_0;
int PaddingInt32_1;
float SpawnCountScale;
int TotalSpawnedParticles;
};
struct FParamMap0_Engine
{
float DeltaTime;
FParamMap0_Engine_Emitter Emitter;
int ExecutionCount;
float InverseDeltaTime;
FParamMap0_Engine_Owner Owner;
int PaddingInt32_0;
int PaddingInt32_1;
int PaddingInt32_2;
int QualityLevel;
float RealTime;
FParamMap0_Engine_System System;
float Time;
};
struct FParamMap0_Emitter
{
float Age;
float DistanceTraveled;
float InterpSpawnStartDt;
int RandomSeed;
int SpawnGroup;
float SpawnInterval;
float SpawnRate;
};
struct FParamMap0_DynamicMaterialParameters
{
float Index0Param1;
bool Param0WriteEnabled;
bool Param1WriteEnabled;
bool Param2WriteEnabled;
bool Param3WriteEnabled;
};
struct FParamMap0_DataInstance
{
bool Alive;
};
struct FParamMap0
{
FParamMap0_DataInstance DataInstance;
FParamMap0_DynamicMaterialParameters DynamicMaterialParameters;
FParamMap0_Emitter Emitter;
FParamMap0_Engine Engine;
FParamMap0_FloatFromCurve001 FloatFromCurve001;
FParamMap0_FloatFromCurve002 FloatFromCurve002;
FParamMap0_InitializeParticle InitializeParticle;
FParamMap0_Interpolation Interpolation;
FParamMap0_Local Local;
FParamMap0_OUTPUT_VAR OUTPUT_VAR;
FParamMap0_Particles Particles;
FParamMap0_ParticleState ParticleState;
FParamMap0_PointAttractionForce PointAttractionForce;
FParamMap0_SolveForcesAndVelocity SolveForcesAndVelocity;
FParamMap0_SphereLocation SphereLocation;
FParamMap0_Transient Transient;
FParamMap0_User User;
};
struct FSimulationContext
{
FParamMap0 MapSpawn;
FParamMap0 MapUpdate;
};
static float HackSpawnInterp = 1.0;
void CalculateRandomRangeFloat_ScriptUsage4_EvaluationType_NewEnumerator0_FixedRandomSeed_false_OverrideSeed_false_RandomnessMode_NewEnumerator0_Func_(float In_FloatMin, float In_FloatMax, int In_Seed, int In_Engine_System_TickCount, int In_Particles_UniqueID, int In_Emitter_RandomSeed, int In_Engine_Emitter_InstanceSeed, out float Out_RandomFloat, out bool Out_IsDeterministic, inout FSimulationContext Context);
void CalculateRandomRangeInteger_ScriptUsage4_EvaluationType_NewEnumerator0_FixedRandomSeed_false_OverrideSeed_false_RandomnessMode_NewEnumerator0_Func_(int In_IntegerMin, int In_IntegerMax, int In_Seed, int In_Engine_System_TickCount, int In_Particles_UniqueID, int In_Emitter_RandomSeed, int In_Engine_Emitter_InstanceSeed, out int Out_RandomValue, out bool Out_IsDeterministic, out bool Out_IsFixedRandomSeed, inout FSimulationContext Context);
void CalculateRandomBool_EvaluationType_NewEnumerator0_FixedRandomSeed_false_OverrideSeed_false_RandomnessMode_NewEnumerator0_Func_(int In_Seed, out bool Out_RandomBool, inout FSimulationContext Context);
void InitializeParticle_SimulationPosition_Emitter_Func_(out float3 Out_OutPosition, inout FSimulationContext Context);
void InitializeParticle_Emitter_Func_(inout FSimulationContext Context);
void GetRandomInfo_Emitter_Determinism_false_Func_(int In_Seed, int In_Engine_System_TickCount, bool In_OverrideSeed, int In_Particles_UniqueID, int In_Emitter_RandomSeed, bool In_FixedOverrideSeed, int In_RandomnessMode, out NiagaraRandInfo Out_RandomInfo, out bool Out_UseDeterministicRandoms, inout FSimulationContext Context);
void RandomRangeInteger_Func_(int In_Min, int In_Max, int In_Seed, int In_RandomnessMode, bool In_OverrideSeed, out int Out_Result, inout FSimulationContext Context);
void SubUVAnimation_Emitter_Func_(inout FSimulationContext Context);
void CalculateRandomRange_ScriptUsage4_EvaluationType_NewEnumerator0_FixedRandomSeed_false_OverrideSeed_false_RandomnessMode_NewEnumerator0_Func_(float3 In_RangeMin, float3 In_RangeMax, int In_Seed, int In_Engine_System_TickCount, int In_Particles_UniqueID, int In_Emitter_RandomSeed, int In_Engine_Emitter_InstanceSeed, out float3 Out_RandomValue, out bool Out_IsDeterministic, inout FSimulationContext Context);
void CalculateRandomPointInSphere_EvaluationType_NewEnumerator0_FixedRandomSeed_false_OverrideSeed_false_RandomnessMode_NewEnumerator0_Func_(float In_InnerRadius, float In_OuterRadius, int In_Seed, out float3 Out_Ouput, inout FSimulationContext Context);
void CustomHlsl99D2D00244511A096EA5088DE8D89968_Func_(bool In_X, bool In_Y, bool In_Z, out float3 Out_Output);
void TransformBase_Func_(int In_SourceSpace, int In_DestinationSpace, float4x4 In_LocalToWorldTransform, float4x4 In_WorldToLocalTransform, bool In_bLocalSpace, out bool Out_bUseOriginal, out float4x4 Out_OutTransform, out bool Out_LocalToWorld, inout FSimulationContext Context);
void SphereLocation_NF_TransformVector_Emitter_Func_(float3 In_InVector, int In_SourceSpace, int In_DestinationSpace, bool In_ApplyScale, out float3 Out_OutVector, inout FSimulationContext Context);
void SphereLocation_TransformVector001_Emitter_Func_(float3 In_InVector, int In_SourceSpace, int In_DestinationSpace, bool In_ApplyScale, out float3 Out_OutVector, inout FSimulationContext Context);
void SphereLocation_Emitter_Func_(inout FSimulationContext Context);
void ParticleState_Emitter_Func_(inout FSimulationContext Context);
void SampleCurve_Emitter_FloatFromCurve001_FloatCurve(float In_X, out float Out_Value);
void FloatFromCurve001_Emitter_Func_(out float Out_Value, inout FSimulationContext Context);
void PointAttractionForce_SimulationPosition_Emitter_Func_(out float3 Out_OutPosition, inout FSimulationContext Context);
void DirectionAndLengthSafe_Func_(float3 In_V, float3 In_Fallback, float In_Threshold, float In_FallbackLength, out float3 Out_Direction, out float Out_Length, out bool Out_BelowThreshold, inout FSimulationContext Context);
void PointAttractionForce_Emitter_Func_(inout FSimulationContext Context);
void SolveForcesAndVelocity_Emitter_Func_(inout FSimulationContext Context);
void SampleCurve_Emitter_FloatFromCurve002_FloatCurve(float In_X, out float Out_Value);
void FloatFromCurve002_Emitter_Func_(out float Out_Value, inout FSimulationContext Context);
void DynamicMaterialParameters_Emitter_Func_(inout FSimulationContext Context);
float GetSpawnInterpolation();
void CalculateRandomRangeFloat_ScriptUsage4_EvaluationType_NewEnumerator0_FixedRandomSeed_false_OverrideSeed_false_RandomnessMode_NewEnumerator0_Func_(float In_FloatMin, float In_FloatMax, int In_Seed, int In_Engine_System_TickCount, int In_Particles_UniqueID, int In_Emitter_RandomSeed, int In_Engine_Emitter_InstanceSeed, out float Out_RandomFloat, out bool Out_IsDeterministic, inout FSimulationContext Context)
{
float Result = In_FloatMax - In_FloatMin;
float Result1 = rand_float(Result);
float Result2 = In_FloatMin + Result1;
bool Constant25 = false;
Out_RandomFloat = Result2;
Out_IsDeterministic = Constant25;
}
void CalculateRandomRangeInteger_ScriptUsage4_EvaluationType_NewEnumerator0_FixedRandomSeed_false_OverrideSeed_false_RandomnessMode_NewEnumerator0_Func_(int In_IntegerMin, int In_IntegerMax, int In_Seed, int In_Engine_System_TickCount, int In_Particles_UniqueID, int In_Emitter_RandomSeed, int In_Engine_Emitter_InstanceSeed, out int Out_RandomValue, out bool Out_IsDeterministic, out bool Out_IsFixedRandomSeed, inout FSimulationContext Context)
{
int Result3 = In_IntegerMax - In_IntegerMin;
int Constant36 = 1;
int Result4 = Result3 + Constant36;
int Result5 = rand_int(Result4);
int Result6 = In_IntegerMin + Result5;
bool Constant37 = false;
bool Constant38 = false;
Out_RandomValue = Result6;
Out_IsDeterministic = Constant37;
Out_IsFixedRandomSeed = Constant38;
}
void CalculateRandomBool_EvaluationType_NewEnumerator0_FixedRandomSeed_false_OverrideSeed_false_RandomnessMode_NewEnumerator0_Func_(int In_Seed, out bool Out_RandomBool, inout FSimulationContext Context)
{
int Constant30 = 0;
int Constant31 = 1;
int Constant32 = (0);
int Constant33 = 0;
int Constant34 = (0);
int Constant35 = (0);
int CalculateRandomRangeInteger_ScriptUsage4_EvaluationType_NewEnumerator0_FixedRandomSeed_false_OverrideSeed_false_RandomnessMode_NewEnumerator0_Func_Output_RandomValue;
bool CalculateRandomRangeInteger_ScriptUsage4_EvaluationType_NewEnumerator0_FixedRandomSeed_false_OverrideSeed_false_RandomnessMode_NewEnumerator0_Func_Output_IsDeterministic;
bool CalculateRandomRangeInteger_ScriptUsage4_EvaluationType_NewEnumerator0_FixedRandomSeed_false_OverrideSeed_false_RandomnessMode_NewEnumerator0_Func_Output_IsFixedRandomSeed;
CalculateRandomRangeInteger_ScriptUsage4_EvaluationType_NewEnumerator0_FixedRandomSeed_false_OverrideSeed_false_RandomnessMode_NewEnumerator0_Func_(Constant30, Constant31, In_Seed, Constant32, Constant33, Constant34, Constant35, CalculateRandomRangeInteger_ScriptUsage4_EvaluationType_NewEnumerator0_FixedRandomSeed_false_OverrideSeed_false_RandomnessMode_NewEnumerator0_Func_Output_RandomValue, CalculateRandomRangeInteger_ScriptUsage4_EvaluationType_NewEnumerator0_FixedRandomSeed_false_OverrideSeed_false_RandomnessMode_NewEnumerator0_Func_Output_IsDeterministic, CalculateRandomRangeInteger_ScriptUsage4_EvaluationType_NewEnumerator0_FixedRandomSeed_false_OverrideSeed_false_RandomnessMode_NewEnumerator0_Func_Output_IsFixedRandomSeed, Context);
bool RandomBool;
RandomBool = CalculateRandomRangeInteger_ScriptUsage4_EvaluationType_NewEnumerator0_FixedRandomSeed_false_OverrideSeed_false_RandomnessMode_NewEnumerator0_Func_Output_RandomValue;
Out_RandomBool = RandomBool;
}
void InitializeParticle_SimulationPosition_Emitter_Func_(out float3 Out_OutPosition, inout FSimulationContext Context)
{
bool Constant49 = false;
float3 Constant50 = float3(0,0,0);
float3 Constant51 = float3(0.0, 0.0, 0.0);
float3 Vector_SelectResult = Constant51;
if(Constant49 == 1)
{
Vector_SelectResult = Constant50;
}
if(Constant49 == 0)
{
Vector_SelectResult = Context.MapSpawn.Engine.Owner.Position;
}
Out_OutPosition = Vector_SelectResult;
}
void InitializeParticle_Emitter_Func_(inout FSimulationContext Context)
{
Context.MapSpawn.Particles.MaterialRandom = Context.MapSpawn.InitializeParticle.MaterialRandom;
Context.MapSpawn.Particles.Lifetime = Context.MapSpawn.InitializeParticle.Lifetime;
float Constant28 = 1;
Context.MapSpawn.Particles.Mass = Constant28;
float2 Output1;
Output1.x = Context.MapSpawn.InitializeParticle.UniformSpriteSize;
Output1.y = Context.MapSpawn.InitializeParticle.UniformSpriteSize;
Context.MapSpawn.Particles.SpriteSize = Output1;
int Constant29 = -1;
bool CalculateRandomBool_EvaluationType_NewEnumerator0_FixedRandomSeed_false_OverrideSeed_false_RandomnessMode_NewEnumerator0_Func_Output_RandomBool;
CalculateRandomBool_EvaluationType_NewEnumerator0_FixedRandomSeed_false_OverrideSeed_false_RandomnessMode_NewEnumerator0_Func_(Constant29, CalculateRandomBool_EvaluationType_NewEnumerator0_FixedRandomSeed_false_OverrideSeed_false_RandomnessMode_NewEnumerator0_Func_Output_RandomBool, Context);
float Constant39 = -1;
float Constant40 = 1;
float float_IfResult;
if(CalculateRandomBool_EvaluationType_NewEnumerator0_FixedRandomSeed_false_OverrideSeed_false_RandomnessMode_NewEnumerator0_Func_Output_RandomBool)
{
float_IfResult = Constant39;
}
else
{
float_IfResult = Constant40;
}
int Constant41 = 645645;
bool CalculateRandomBool_EvaluationType_NewEnumerator0_FixedRandomSeed_false_OverrideSeed_false_RandomnessMode_NewEnumerator0_Func_Output_RandomBool1;
CalculateRandomBool_EvaluationType_NewEnumerator0_FixedRandomSeed_false_OverrideSeed_false_RandomnessMode_NewEnumerator0_Func_(Constant41, CalculateRandomBool_EvaluationType_NewEnumerator0_FixedRandomSeed_false_OverrideSeed_false_RandomnessMode_NewEnumerator0_Func_Output_RandomBool1, Context);
float Constant42 = -1;
float Constant43 = 1;
float float_IfResult1;
if(CalculateRandomBool_EvaluationType_NewEnumerator0_FixedRandomSeed_false_OverrideSeed_false_RandomnessMode_NewEnumerator0_Func_Output_RandomBool1)
{
float_IfResult1 = Constant42;
}
else
{
float_IfResult1 = Constant43;
}
float2 Output11;
Output11.x = float_IfResult;
Output11.y = float_IfResult1;
Context.MapSpawn.Particles.UVScale = Output11;
int Constant44 = -1;
int Constant45 = (0);
int Constant46 = 0;
int Constant47 = (0);
int Constant48 = (0);
float CalculateRandomRangeFloat_ScriptUsage4_EvaluationType_NewEnumerator0_FixedRandomSeed_false_OverrideSeed_false_RandomnessMode_NewEnumerator0_Func_Output_RandomFloat1;
bool CalculateRandomRangeFloat_ScriptUsage4_EvaluationType_NewEnumerator0_FixedRandomSeed_false_OverrideSeed_false_RandomnessMode_NewEnumerator0_Func_Output_IsDeterministic1;
CalculateRandomRangeFloat_ScriptUsage4_EvaluationType_NewEnumerator0_FixedRandomSeed_false_OverrideSeed_false_RandomnessMode_NewEnumerator0_Func_(Constants_Emitter_InitializeParticle_SpriteRotationAngleMin, Constants_Emitter_InitializeParticle_SpriteRotationAngleMax, Constant44, Constant45, Constant46, Constant47, Constant48, CalculateRandomRangeFloat_ScriptUsage4_EvaluationType_NewEnumerator0_FixedRandomSeed_false_OverrideSeed_false_RandomnessMode_NewEnumerator0_Func_Output_RandomFloat1, CalculateRandomRangeFloat_ScriptUsage4_EvaluationType_NewEnumerator0_FixedRandomSeed_false_OverrideSeed_false_RandomnessMode_NewEnumerator0_Func_Output_IsDeterministic1, Context);
Context.MapSpawn.Particles.SpriteRotation = CalculateRandomRangeFloat_ScriptUsage4_EvaluationType_NewEnumerator0_FixedRandomSeed_false_OverrideSeed_false_RandomnessMode_NewEnumerator0_Func_Output_RandomFloat1;
float3 InitializeParticle_SimulationPosition_Emitter_Func_Output_OutPosition;
InitializeParticle_SimulationPosition_Emitter_Func_(InitializeParticle_SimulationPosition_Emitter_Func_Output_OutPosition, Context);
float Constant52 = 0;
float3 Result7 = Constants_Emitter_InitializeParticle_PositionOffset * Constant52;
float3 Result8 = InitializeParticle_SimulationPosition_Emitter_Func_Output_OutPosition + Result7;
Context.MapSpawn.Particles.Position = Result8;
Context.MapSpawn.Local.InitializeParticle.InitRIbbonDistance = Context.MapSpawn.Particles.RibbonUVDistance;
}
void GetRandomInfo_Emitter_Determinism_false_Func_(int In_Seed, int In_Engine_System_TickCount, bool In_OverrideSeed, int In_Particles_UniqueID, int In_Emitter_RandomSeed, bool In_FixedOverrideSeed, int In_RandomnessMode, out NiagaraRandInfo Out_RandomInfo, out bool Out_UseDeterministicRandoms, inout FSimulationContext Context)
{
bool Constant63 = false;
int Constant64 = 0;
bool Result9 = NiagaraAll(In_RandomnessMode == Constant64);
bool Result10 = Constant63 && Result9;
int Constant65 = 1;
bool Result11 = NiagaraAll(In_RandomnessMode == Constant65);
bool Result12 = Result10 || Result11;
int Seed_IfResult;
if(In_OverrideSeed)
{
Seed_IfResult = In_Seed;
}
else
{
Seed_IfResult = Context.MapSpawn.Emitter.RandomSeed;
}
int Constant66 = 0;
int Constant67 = 0;
int Seed1_IfResult;
int Seed2_IfResult;
int Seed3_IfResult;
if(In_FixedOverrideSeed)
{
Seed1_IfResult = Seed_IfResult;
Seed2_IfResult = Constant66;
Seed3_IfResult = Constant67;
}
else
{
Seed1_IfResult = Context.MapSpawn.Particles.UniqueID;
Seed2_IfResult = Context.MapSpawn.Engine.System.TickCount;
Seed3_IfResult = Seed_IfResult;
}
int Constant68 = -1;
int Constant69 = -1;
int Constant70 = -1;
int Seed1_IfResult1;
int Seed2_IfResult1;
int Seed3_IfResult1;
if(Result12)
{
Seed1_IfResult1 = Seed1_IfResult;
Seed2_IfResult1 = Seed2_IfResult;
Seed3_IfResult1 = Seed3_IfResult;
}
else
{
Seed1_IfResult1 = Constant68;
Seed2_IfResult1 = Constant69;
Seed3_IfResult1 = Constant70;
}
NiagaraRandInfo Output12;
Output12.Seed1 = Seed1_IfResult1;
Output12.Seed2 = Seed2_IfResult1;
Output12.Seed3 = Seed3_IfResult1;
Out_RandomInfo = Output12;
Out_UseDeterministicRandoms = Result12;
}
void RandomRangeInteger_Func_(int In_Min, int In_Max, int In_Seed, int In_RandomnessMode, bool In_OverrideSeed, out int Out_Result, inout FSimulationContext Context)
{
int Constant58 = (0);
bool Constant59 = false;
int Constant60 = 0;
int Constant61 = (0);
bool Constant62 = false;
NiagaraRandInfo GetRandomInfo_Emitter_Determinism_false_Func_Output_RandomInfo;
bool GetRandomInfo_Emitter_Determinism_false_Func_Output_UseDeterministicRandoms;
GetRandomInfo_Emitter_Determinism_false_Func_(In_Seed, Constant58, In_OverrideSeed, Constant60, Constant61, Constant62, In_RandomnessMode, GetRandomInfo_Emitter_Determinism_false_Func_Output_RandomInfo, GetRandomInfo_Emitter_Determinism_false_Func_Output_UseDeterministicRandoms, Context);
int Result13 = In_Max - In_Min;
int Constant71 = 1;
int Result14 = Result13 + Constant71;
int Seed1;
int Seed2;
int Seed3;
Seed1 = GetRandomInfo_Emitter_Determinism_false_Func_Output_RandomInfo.Seed1;
Seed2 = GetRandomInfo_Emitter_Determinism_false_Func_Output_RandomInfo.Seed2;
Seed3 = GetRandomInfo_Emitter_Determinism_false_Func_Output_RandomInfo.Seed3;
int Result15 = rand_int(Result14, Seed1, Seed2, Seed3);
int Result16 = rand_int(Result14);
int Random_IfResult;
if(GetRandomInfo_Emitter_Determinism_false_Func_Output_UseDeterministicRandoms)
{
Random_IfResult = Result15;
}
else
{
Random_IfResult = Result16;
}
int Result17 = In_Min + Random_IfResult;
Out_Result = Result17;
}
void SubUVAnimation_Emitter_Func_(inout FSimulationContext Context)
{
float NiagaraFloat;
NiagaraFloat = Constants_Emitter_SubUVAnimation_StartFrame;
float NiagaraFloat1;
NiagaraFloat1 = Constants_Emitter_SubUVAnimation_EndFrame;
Context.MapSpawn.Local.SubUVAnimation.StartFrame = NiagaraFloat;
Context.MapSpawn.Local.SubUVAnimation.EndFrame = NiagaraFloat1;
int Constant55 = -1;
int Constant56 = 0;
bool Constant57 = false;
int RandomRangeInteger_Func_Output_Result;
RandomRangeInteger_Func_(Constants_Emitter_SubUVAnimation_StartFrame, Constants_Emitter_SubUVAnimation_EndFrame, Constant55, Constant56, Constant57, RandomRangeInteger_Func_Output_Result, Context);
float NiagaraFloat2;
NiagaraFloat2 = RandomRangeInteger_Func_Output_Result;
Context.MapSpawn.Particles.SubImageIndex = NiagaraFloat2;
}
void CalculateRandomRange_ScriptUsage4_EvaluationType_NewEnumerator0_FixedRandomSeed_false_OverrideSeed_false_RandomnessMode_NewEnumerator0_Func_(float3 In_RangeMin, float3 In_RangeMax, int In_Seed, int In_Engine_System_TickCount, int In_Particles_UniqueID, int In_Emitter_RandomSeed, int In_Engine_Emitter_InstanceSeed, out float3 Out_RandomValue, out bool Out_IsDeterministic, inout FSimulationContext Context)
{
float3 Result27 = In_RangeMax - In_RangeMin;
float3 Result28 = rand(Result27);
float3 Result29 = In_RangeMin + Result28;
bool Constant93 = false;
Out_RandomValue = Result29;
Out_IsDeterministic = Constant93;
}
void CalculateRandomPointInSphere_EvaluationType_NewEnumerator0_FixedRandomSeed_false_OverrideSeed_false_RandomnessMode_NewEnumerator0_Func_(float In_InnerRadius, float In_OuterRadius, int In_Seed, out float3 Out_Ouput, inout FSimulationContext Context)
{
float Constant84 = 0;
float Constant85 = -1;
float Constant86 = 3;
float Result24 = pow(max(0, In_InnerRadius),Constant86);
float3 Output13;
Output13.x = Constant84;
Output13.y = Constant85;
Output13.z = Result24;
float Result25 = TWO_PI;
float Constant87 = 1;
float Constant88 = 3;
float Result26 = pow(max(0, In_OuterRadius),Constant88);
float3 Output14;
Output14.x = Result25;
Output14.y = Constant87;
Output14.z = Result26;
int Constant89 = (0);
int Constant90 = 0;
int Constant91 = (0);
int Constant92 = (0);
float3 CalculateRandomRange_ScriptUsage4_EvaluationType_NewEnumerator0_FixedRandomSeed_false_OverrideSeed_false_RandomnessMode_NewEnumerator0_Func_Output_RandomValue;
bool CalculateRandomRange_ScriptUsage4_EvaluationType_NewEnumerator0_FixedRandomSeed_false_OverrideSeed_false_RandomnessMode_NewEnumerator0_Func_Output_IsDeterministic;
CalculateRandomRange_ScriptUsage4_EvaluationType_NewEnumerator0_FixedRandomSeed_false_OverrideSeed_false_RandomnessMode_NewEnumerator0_Func_(Output13, Output14, In_Seed, Constant89, Constant90, Constant91, Constant92, CalculateRandomRange_ScriptUsage4_EvaluationType_NewEnumerator0_FixedRandomSeed_false_OverrideSeed_false_RandomnessMode_NewEnumerator0_Func_Output_RandomValue, CalculateRandomRange_ScriptUsage4_EvaluationType_NewEnumerator0_FixedRandomSeed_false_OverrideSeed_false_RandomnessMode_NewEnumerator0_Func_Output_IsDeterministic, Context);
float Phi;
float CosASC40ThetaASC41;
float RASC943;
Phi = CalculateRandomRange_ScriptUsage4_EvaluationType_NewEnumerator0_FixedRandomSeed_false_OverrideSeed_false_RandomnessMode_NewEnumerator0_Func_Output_RandomValue.x;
CosASC40ThetaASC41 = CalculateRandomRange_ScriptUsage4_EvaluationType_NewEnumerator0_FixedRandomSeed_false_OverrideSeed_false_RandomnessMode_NewEnumerator0_Func_Output_RandomValue.y;
RASC943 = CalculateRandomRange_ScriptUsage4_EvaluationType_NewEnumerator0_FixedRandomSeed_false_OverrideSeed_false_RandomnessMode_NewEnumerator0_Func_Output_RandomValue.z;
float Result30 = cos(Phi);
float Result31 = CosASC40ThetaASC41 * CosASC40ThetaASC41;
float Result32 = 1 - Result31;
float Result33 = sqrt(Result32);
float Result34 = Result30 * Result33;
float Result35 = sin(Phi);
float Result36 = Result35 * Result33;
float3 Output15;
Output15.x = Result34;
Output15.y = Result36;
Output15.z = CosASC40ThetaASC41;
float Constant94 = 0.333333;
float Result37 = pow(max(0, RASC943),Constant94);
float3 Result38 = Output15 * Result37;
Out_Ouput = Result38;
}
void CustomHlsl99D2D00244511A096EA5088DE8D89968_Func_(bool In_X, bool In_Y, bool In_Z, out float3 Out_Output)
{
Out_Output = float3(In_X, In_Y, In_Z);
}
void TransformBase_Func_(int In_SourceSpace, int In_DestinationSpace, float4x4 In_LocalToWorldTransform, float4x4 In_WorldToLocalTransform, bool In_bLocalSpace, out bool Out_bUseOriginal, out float4x4 Out_OutTransform, out bool Out_LocalToWorld, inout FSimulationContext Context)
{
int Constant98 = 0;
bool Result42 = NiagaraAll(In_SourceSpace == Constant98);
int Constant99 = 0;
bool Result43 = NiagaraAll(In_DestinationSpace == Constant99);
bool Result44 = Result42 && Result43;
int Constant100 = 1;
bool Result45 = NiagaraAll(In_SourceSpace == Constant100);
int Constant101 = 1;
bool Result46 = NiagaraAll(In_DestinationSpace == Constant101);
bool Result47 = Result45 && Result46;
bool Result48 = Result44 || Result47;
int Constant102 = 2;
bool Result49 = NiagaraAll(In_SourceSpace == Constant102);
int Constant103 = 2;
bool Result50 = NiagaraAll(In_DestinationSpace == Constant103);
bool Result51 = Result49 && Result50;
bool Result52 = Result48 || Result51;
bool Result53 = Result42 && Result50;
bool Result54 = Result49 && Result43;
bool Result55 = Result53 || Result54;
bool Result56 = In_bLocalSpace && Result55;
bool Result57 = Result52 || Result56;
bool Result58 = !In_bLocalSpace;
bool Result59 = Result42 && Result46;
bool Result60 = Result45 && Result43;
bool Result61 = Result59 || Result60;
bool Result62 = Result58 && Result61;
bool Result63 = Result57 || Result62;
bool Result64 = In_bLocalSpace && Result59;
bool Result65 = Result49 && Result46;
bool Result66 = Result64 || Result65;
bool Result67 = Result58 && Result54;
bool Result68 = Result66 || Result67;
float4x4 Matrix_IfResult1;
if(Result68)
{
Matrix_IfResult1 = In_LocalToWorldTransform;
}
else
{
Matrix_IfResult1 = In_WorldToLocalTransform;
}
Out_bUseOriginal = Result63;
Out_OutTransform = Matrix_IfResult1;
Out_LocalToWorld = Result68;
}
void SphereLocation_NF_TransformVector_Emitter_Func_(float3 In_InVector, int In_SourceSpace, int In_DestinationSpace, bool In_ApplyScale, out float3 Out_OutVector, inout FSimulationContext Context)
{
bool Constant97 = false;
float4x4 Matrix_IfResult;
float4x4 Matrix001_IfResult;
if(In_ApplyScale)
{
Matrix_IfResult = Context.MapSpawn.Engine.Owner.SystemLocalToWorld;
Matrix001_IfResult = Context.MapSpawn.Engine.Owner.SystemWorldToLocal;
}
else
{
Matrix_IfResult = Context.MapSpawn.Engine.Owner.SystemLocalToWorldNoScale;
Matrix001_IfResult = Context.MapSpawn.Engine.Owner.SystemWorldToLocalNoScale;
}
bool TransformBase_Func_Output_bUseOriginal;
float4x4 TransformBase_Func_Output_OutTransform;
bool TransformBase_Func_Output_LocalToWorld;
TransformBase_Func_(In_SourceSpace, In_DestinationSpace, Matrix_IfResult, Matrix001_IfResult, Constant97, TransformBase_Func_Output_bUseOriginal, TransformBase_Func_Output_OutTransform, TransformBase_Func_Output_LocalToWorld, Context);
float3 Result69 = mul(float4(In_InVector,0.0),TransformBase_Func_Output_OutTransform).xyz;
float3 Vector_IfResult;
if(TransformBase_Func_Output_bUseOriginal)
{
Vector_IfResult = In_InVector;
}
else
{
Vector_IfResult = Result69;
}
Out_OutVector = Vector_IfResult;
}
void SphereLocation_TransformVector001_Emitter_Func_(float3 In_InVector, int In_SourceSpace, int In_DestinationSpace, bool In_ApplyScale, out float3 Out_OutVector, inout FSimulationContext Context)
{
bool Constant108 = false;
float4x4 Matrix_IfResult2;
float4x4 Matrix001_IfResult1;
if(In_ApplyScale)
{
Matrix_IfResult2 = Context.MapSpawn.Engine.Owner.SystemLocalToWorld;
Matrix001_IfResult1 = Context.MapSpawn.Engine.Owner.SystemWorldToLocal;
}
else
{
Matrix_IfResult2 = Context.MapSpawn.Engine.Owner.SystemLocalToWorldNoScale;
Matrix001_IfResult1 = Context.MapSpawn.Engine.Owner.SystemWorldToLocalNoScale;
}
bool TransformBase_Func_Output_bUseOriginal1;
float4x4 TransformBase_Func_Output_OutTransform1;
bool TransformBase_Func_Output_LocalToWorld1;
TransformBase_Func_(In_SourceSpace, In_DestinationSpace, Matrix_IfResult2, Matrix001_IfResult1, Constant108, TransformBase_Func_Output_bUseOriginal1, TransformBase_Func_Output_OutTransform1, TransformBase_Func_Output_LocalToWorld1, Context);
float3 Result76 = mul(float4(In_InVector,0.0),TransformBase_Func_Output_OutTransform1).xyz;
float3 Vector_IfResult1;
if(TransformBase_Func_Output_bUseOriginal1)
{
Vector_IfResult1 = In_InVector;
}
else
{
Vector_IfResult1 = Result76;
}
Out_OutVector = Vector_IfResult1;
}
void SphereLocation_Emitter_Func_(inout FSimulationContext Context)
{
float Constant81 = 1;
float Result18 = Constants_Emitter_SphereLocation_SurfaceOnlyBandThickness / Context.MapSpawn.SphereLocation.SphereRadius;
float float_IfResult2;
if(Context.MapSpawn.SphereLocation.NormalizeThickness)
{
float_IfResult2 = Constants_Emitter_SphereLocation_SurfaceOnlyBandThickness;
}
else
{
float_IfResult2 = Result18;
}
float Result19 = Constant81 - float_IfResult2;
float Constant82 = 0.5;
float Result20 = float_IfResult2 * Constant82 * Context.MapSpawn.SphereLocation.SurfaceExpansionMode;
float Result21 = Result19 + Result20;
float Constant83 = 0;
float Result22 = max(Result21, Constant83);
float Result23 = Result21 + float_IfResult2;
float3 CalculateRandomPointInSphere_EvaluationType_NewEnumerator0_FixedRandomSeed_false_OverrideSeed_false_RandomnessMode_NewEnumerator0_Func_Output_Ouput;
CalculateRandomPointInSphere_EvaluationType_NewEnumerator0_FixedRandomSeed_false_OverrideSeed_false_RandomnessMode_NewEnumerator0_Func_(Result22, Result23, Constants_Emitter_SphereLocation_RandomSeed, CalculateRandomPointInSphere_EvaluationType_NewEnumerator0_FixedRandomSeed_false_OverrideSeed_false_RandomnessMode_NewEnumerator0_Func_Output_Ouput, Context);
Context.MapSpawn.Local.SphereLocation.SphereVector = CalculateRandomPointInSphere_EvaluationType_NewEnumerator0_FixedRandomSeed_false_OverrideSeed_false_RandomnessMode_NewEnumerator0_Func_Output_Ouput;
float3 Result39 = abs(Context.MapSpawn.Local.SphereLocation.SphereVector);
float3 CustomHlsl99D2D00244511A096EA5088DE8D89968_Func_Output_Output;
CustomHlsl99D2D00244511A096EA5088DE8D89968_Func_(Context.MapSpawn.SphereLocation.HemisphereX, Context.MapSpawn.SphereLocation.HemisphereY, Context.MapSpawn.SphereLocation.HemisphereZ, CustomHlsl99D2D00244511A096EA5088DE8D89968_Func_Output_Output);
float3 Result40 = lerp(Context.MapSpawn.Local.SphereLocation.SphereVector,Result39,CustomHlsl99D2D00244511A096EA5088DE8D89968_Func_Output_Output);
Context.MapSpawn.Local.SphereLocation.SphereVector = Result40;
float3 Result41 = Context.MapSpawn.SphereLocation.SphereRadius * Context.MapSpawn.Local.SphereLocation.SphereVector;
Context.MapSpawn.Local.SphereLocation.SphereVector = Result41;
Context.MapSpawn.Local.SphereLocation.SphereVector = Context.MapSpawn.Local.SphereLocation.SphereVector;
int Constant95 = 0;
bool Constant96 = true;
float3 SphereLocation_NF_TransformVector_Emitter_Func_Output_OutVector;
SphereLocation_NF_TransformVector_Emitter_Func_(Context.MapSpawn.Local.SphereLocation.SphereVector, Context.MapSpawn.SphereLocation.SphereCoordinateSpace, Constant95, Constant96, SphereLocation_NF_TransformVector_Emitter_Func_Output_OutVector, Context);
float3 Result70 = Context.MapSpawn.SphereLocation.SphereOrigin + SphereLocation_NF_TransformVector_Emitter_Func_Output_OutVector;
float Constant104 = 1;
float3 Result71 = Constants_Emitter_SphereLocation_NonUniformScale * Context.MapSpawn.Engine.Owner.Scale;
float3 Result72 = abs(Result71);
float3 Constant105 = float3(0.0001,0.0001,0.0001);
float3 Result73 = max(Result72, Constant105);
float3 Result74 = Constant104 / Result73;
float3 Result75 = Context.MapSpawn.Local.SphereLocation.SphereVector * Result74;
int Constant106 = 0;
bool Constant107 = true;
float3 SphereLocation_TransformVector001_Emitter_Func_Output_OutVector;
SphereLocation_TransformVector001_Emitter_Func_(Result75, Context.MapSpawn.SphereLocation.SphereCoordinateSpace, Constant106, Constant107, SphereLocation_TransformVector001_Emitter_Func_Output_OutVector, Context);
float3 Result77 = normalize(SphereLocation_TransformVector001_Emitter_Func_Output_OutVector);
Context.MapSpawn.OUTPUT_VAR.SphereLocation.Position = Result70;
Context.MapSpawn.OUTPUT_VAR.SphereLocation.SphereVector = SphereLocation_NF_TransformVector_Emitter_Func_Output_OutVector;
Context.MapSpawn.OUTPUT_VAR.SphereLocation.SphereNormal = Result77;
Context.MapSpawn.Particles.Position = Context.MapSpawn.OUTPUT_VAR.SphereLocation.Position;
}
void ParticleState_Emitter_Func_(inout FSimulationContext Context)
{
bool Result78 = NiagaraAll(Context.MapUpdate.Particles.Age <= Context.MapUpdate.Engine.DeltaTime);
Context.MapUpdate.OUTPUT_VAR.ParticleState.FirstFrame = Result78;
Context.MapUpdate.Transient.FirstFrame = Result78;
float Result79 = Context.MapUpdate.Particles.Age + Context.MapUpdate.ParticleState.DeltaTime;
float Constant110 = 1e-05;
float Result80 = max(Context.MapUpdate.ParticleState.Lifetime, Constant110);
float Constant111 = 0.0001;
float Result81 = Result80 - Constant111;
bool Result82 = NiagaraAll(Result79 < Result81);
bool Constant112 = false;
bool bool_IfResult;
if(Result82)
{
bool_IfResult = Context.MapUpdate.DataInstance.Alive;
}
else
{
bool_IfResult = Constant112;
}
float Result83 = Result79 / Result80;
Context.MapUpdate.DataInstance.Alive = bool_IfResult;
Context.MapUpdate.Particles.Age = Result79;
Context.MapUpdate.Particles.NormalizedAge = Result83;
bool Constant113 = false;
bool Constant114 = true;
}
void FloatFromCurve001_Emitter_Func_(out float Out_Value, inout FSimulationContext Context)
{
float SampleCurve_Emitter_FloatFromCurve001_FloatCurveOutput_Value;
SampleCurve_Emitter_FloatFromCurve001_FloatCurve(Context.MapUpdate.FloatFromCurve001.CurveIndex, SampleCurve_Emitter_FloatFromCurve001_FloatCurveOutput_Value);
float Result84 = SampleCurve_Emitter_FloatFromCurve001_FloatCurveOutput_Value * Context.MapUpdate.FloatFromCurve001.ScaleCurve;
Out_Value = Result84;
}
void PointAttractionForce_SimulationPosition_Emitter_Func_(out float3 Out_OutPosition, inout FSimulationContext Context)
{
bool Constant116 = false;
float3 Constant117 = float3(0,0,0);
float3 Constant118 = float3(0.0, 0.0, 0.0);
float3 Vector_SelectResult1 = Constant118;
if(Constant116 == 1)
{
Vector_SelectResult1 = Constant117;
}
if(Constant116 == 0)
{
Vector_SelectResult1 = Context.MapUpdate.Engine.Owner.Position;
}
Out_OutPosition = Vector_SelectResult1;
}
void DirectionAndLengthSafe_Func_(float3 In_V, float3 In_Fallback, float In_Threshold, float In_FallbackLength, out float3 Out_Direction, out float Out_Length, out bool Out_BelowThreshold, inout FSimulationContext Context)
{
float Result88 = length(In_V);
bool Result89 = NiagaraAll(Result88 < In_Threshold);
float Result90 = length(In_Fallback);
float3 Vector_IfResult2;
float float_IfResult3;
if(Result89)
{
Vector_IfResult2 = In_Fallback;
float_IfResult3 = In_FallbackLength;
}
else
{
Vector_IfResult2 = In_V;
float_IfResult3 = Result88;
}
float3 Result91 = Vector_IfResult2 / float_IfResult3;
float3 Vector_IfResult3;
float float_IfResult4;
if(Result89)
{
Vector_IfResult3 = In_Fallback;
float_IfResult4 = Result90;
}
else
{
Vector_IfResult3 = Result91;
float_IfResult4 = float_IfResult3;
}
Out_Direction = Vector_IfResult3;
Out_Length = float_IfResult4;
Out_BelowThreshold = Result89;
}
void PointAttractionForce_Emitter_Func_(inout FSimulationContext Context)
{
float3 Result85 = Context.MapUpdate.Transient.PhysicsForce * Context.MapUpdate.Engine.DeltaTime + Context.MapUpdate.Particles.Velocity;
float3 Result86 = Result85 * Context.MapUpdate.Engine.DeltaTime + Context.MapUpdate.PointAttractionForce.PositionToAttract;
float3 Result87 = Context.MapUpdate.PointAttractionForce.AttractorPosition - Result86;
float3 Constant123 = float3(0,0,1);
float Constant124 = 1e-05;
float Constant125 = 1e-06;
float3 DirectionAndLengthSafe_Func_Output_Direction;
float DirectionAndLengthSafe_Func_Output_Length;
bool DirectionAndLengthSafe_Func_Output_BelowThreshold;
DirectionAndLengthSafe_Func_(Result87, Constant123, Constant124, Constant125, DirectionAndLengthSafe_Func_Output_Direction, DirectionAndLengthSafe_Func_Output_Length, DirectionAndLengthSafe_Func_Output_BelowThreshold, Context);
Context.MapUpdate.Local.PointAttractionForce.PointOriginVec = DirectionAndLengthSafe_Func_Output_Direction;
Context.MapUpdate.Local.PointAttractionForce.PointOriginVecLength = DirectionAndLengthSafe_Func_Output_Length;
Context.MapUpdate.Local.PointAttractionForce.AttractorOrigin = Context.MapUpdate.PointAttractionForce.AttractorPosition;
Context.MapUpdate.Local.PointAttractionForce.AttractedPosition = Result86;
bool Result92 = NiagaraAll(Context.MapUpdate.Local.PointAttractionForce.PointOriginVecLength > Constants_Emitter_PointAttractionForce_AttractionRadius);
float Constant126 = 0;
float Result93 = pow(max(0, Context.MapUpdate.Local.PointAttractionForce.PointOriginVecLength),Constants_Emitter_PointAttractionForce_FalloffExponent);
float Falloff_IfResult;
if(Context.MapUpdate.PointAttractionForce.UseFalloff)
{
Falloff_IfResult = Result93;
}
else
{
Falloff_IfResult = Context.MapUpdate.Local.PointAttractionForce.PointOriginVecLength;
}
float Result94 = Context.MapUpdate.PointAttractionForce.AttractionStrength * Falloff_IfResult;
float float_IfResult5;
if(Result92)
{
float_IfResult5 = Constant126;
}
else
{
float_IfResult5 = Result94;
}
float3 Result95 = Context.MapUpdate.Local.PointAttractionForce.PointOriginVec * float_IfResult5;
float3 Result96 = Context.MapUpdate.Transient.PhysicsForce + Result95;
Context.MapUpdate.Transient.PhysicsForce = Result96;
Context.MapUpdate.Local.PointAttractionForce.IsWithinAttractor = Result92;
Context.MapUpdate.Local.PointAttractionForce.AttractionForce = Result95;
bool Constant127 = true;
bool Result97 = Context.MapUpdate.DataInstance.Alive && Constant127;
Context.MapUpdate.DataInstance.Alive = Result97;
}
void SolveForcesAndVelocity_Emitter_Func_(inout FSimulationContext Context)
{
Context.MapUpdate.Local.SolveForcesAndVelocity.DeltaTime = Context.MapUpdate.SolveForcesAndVelocity.DeltaTime;
Context.MapUpdate.Local.SolveForcesAndVelocity.PhysicsForce = Context.MapUpdate.SolveForcesAndVelocity.Force;
Context.MapUpdate.OUTPUT_VAR.SolveForcesAndVelocity.IncomingPhysicsForce = Context.MapUpdate.SolveForcesAndVelocity.Force;
Context.MapUpdate.OUTPUT_VAR.SolveForcesAndVelocity.Velocity = Context.MapUpdate.SolveForcesAndVelocity.Velocity;
Context.MapUpdate.Local.SolveForcesAndVelocity.Mass = Context.MapUpdate.SolveForcesAndVelocity.Mass;
Context.MapUpdate.OUTPUT_VAR.SolveForcesAndVelocity.Position = Context.MapUpdate.SolveForcesAndVelocity.Position;
Context.MapUpdate.Particles.Presolve.Velocity = Context.MapUpdate.OUTPUT_VAR.SolveForcesAndVelocity.Velocity;
Context.MapUpdate.Particles.Presolve.Position = Context.MapUpdate.OUTPUT_VAR.SolveForcesAndVelocity.Position;
Context.MapUpdate.Particles.Presolve.PhysicsForce = Context.MapUpdate.OUTPUT_VAR.SolveForcesAndVelocity.IncomingPhysicsForce;
float Constant136 = 0.0001;
float Result98 = max(Context.MapUpdate.Local.SolveForcesAndVelocity.Mass, Constant136);
float Result99 = Reciprocal(Result98);
float3 Result100 = Result99 * Context.MapUpdate.Local.SolveForcesAndVelocity.PhysicsForce;
Context.MapUpdate.Local.SolveForcesAndVelocity.PhysicsForce = Result100;
float3 Result101 = Context.MapUpdate.Local.SolveForcesAndVelocity.PhysicsForce * Context.MapUpdate.Local.SolveForcesAndVelocity.DeltaTime + Context.MapUpdate.OUTPUT_VAR.SolveForcesAndVelocity.Velocity;
float Constant137 = 0;
float Result102 = max(Context.MapUpdate.Transient.PhysicsDrag, Constant137);
float Result103 = Context.MapUpdate.Local.SolveForcesAndVelocity.DeltaTime * Result102;
float Constant138 = 1;
float Result104 = Result103 + Constant138;
float3 Result105 = Result101 / Result104;
Context.MapUpdate.OUTPUT_VAR.SolveForcesAndVelocity.Velocity = Result105;
Context.MapUpdate.OUTPUT_VAR.SolveForcesAndVelocity.IncomingPhysicsDrag = Context.MapUpdate.Transient.PhysicsDrag;
Context.MapUpdate.OUTPUT_VAR.SolveForcesAndVelocity.Velocity = Context.MapUpdate.OUTPUT_VAR.SolveForcesAndVelocity.Velocity;
Context.MapUpdate.OUTPUT_VAR.SolveForcesAndVelocity.Velocity = Context.MapUpdate.OUTPUT_VAR.SolveForcesAndVelocity.Velocity;
float3 Result106 = Context.MapUpdate.OUTPUT_VAR.SolveForcesAndVelocity.Velocity * Context.MapUpdate.Local.SolveForcesAndVelocity.DeltaTime + Context.MapUpdate.OUTPUT_VAR.SolveForcesAndVelocity.Position;
Context.MapUpdate.OUTPUT_VAR.SolveForcesAndVelocity.Position = Result106;
float3 Position_IfResult;
float3 Velocity_IfResult;
if(Context.MapUpdate.SolveForcesAndVelocity.WritetoIntrinsicProperties)
{
Position_IfResult = Context.MapUpdate.OUTPUT_VAR.SolveForcesAndVelocity.Position;
Velocity_IfResult = Context.MapUpdate.OUTPUT_VAR.SolveForcesAndVelocity.Velocity;
}
else
{
Position_IfResult = Context.MapUpdate.Particles.Position;
Velocity_IfResult = Context.MapUpdate.Particles.Velocity;
}
Context.MapUpdate.Particles.Position = Position_IfResult;
Context.MapUpdate.Particles.Velocity = Velocity_IfResult;
float3 Constant139 = float3(0,0,0);
float Constant140 = 0;
float3 ForceVector_IfResult;
float Drag_IfResult;
if(Context.MapUpdate.SolveForcesAndVelocity.WritetoIntrinsicProperties)
{
ForceVector_IfResult = Constant139;
Drag_IfResult = Constant140;
}
else
{
ForceVector_IfResult = Context.MapUpdate.Transient.PhysicsForce;
Drag_IfResult = Context.MapUpdate.Transient.PhysicsDrag;
}
Context.MapUpdate.Transient.PhysicsForce = ForceVector_IfResult;
Context.MapUpdate.Transient.PhysicsDrag = Drag_IfResult;
float3 Result107 = Context.MapUpdate.Particles.Position - Context.MapUpdate.Particles.Previous.Position;
float3 Result108 = Result107 * Context.MapUpdate.Engine.InverseDeltaTime;
float Result109 = length(Result108);
float Constant141 = 100;
float Result110 = Result109 / Constant141;
float Constant142 = 1e+08;
float Result111 = Modulo(Context.MapUpdate.Particles.DistanceTraveled, Constant142);
float Result112 = Result110 + Result111;
Context.MapUpdate.Particles.DistanceTraveled = Result112;
}
void FloatFromCurve002_Emitter_Func_(out float Out_Value, inout FSimulationContext Context)
{
float SampleCurve_Emitter_FloatFromCurve002_FloatCurveOutput_Value;
SampleCurve_Emitter_FloatFromCurve002_FloatCurve(Context.MapUpdate.FloatFromCurve002.CurveIndex, SampleCurve_Emitter_FloatFromCurve002_FloatCurveOutput_Value);
float Result113 = SampleCurve_Emitter_FloatFromCurve002_FloatCurveOutput_Value * Constants_Emitter_FloatFromCurve002_ScaleCurve;
Out_Value = Result113;
}
void DynamicMaterialParameters_Emitter_Func_(inout FSimulationContext Context)
{
float X;
float Y;
float Z;
float W;
X = Context.MapUpdate.Particles.DynamicMaterialParameter.x;
Y = Context.MapUpdate.Particles.DynamicMaterialParameter.y;
Z = Context.MapUpdate.Particles.DynamicMaterialParameter.z;
W = Context.MapUpdate.Particles.DynamicMaterialParameter.w;
float float_IfResult6;
if(Context.MapUpdate.DynamicMaterialParameters.Param0WriteEnabled)
{
float_IfResult6 = Context.MapUpdate.DynamicMaterialParameters.Index0Param1;
}
else
{
float_IfResult6 = X;
}
float float_IfResult7;
if(Context.MapUpdate.DynamicMaterialParameters.Param1WriteEnabled)
{
float_IfResult7 = Constants_Emitter_DynamicMaterialParameters_Index0Param2;
}
else
{
float_IfResult7 = Y;
}
float float_IfResult8;
if(Context.MapUpdate.DynamicMaterialParameters.Param2WriteEnabled)
{
float_IfResult8 = Constants_Emitter_DynamicMaterialParameters_Index0Param3;
}
else
{
float_IfResult8 = Z;
}
float float_IfResult9;
if(Context.MapUpdate.DynamicMaterialParameters.Param3WriteEnabled)
{
float_IfResult9 = Constants_Emitter_DynamicMaterialParameters_Index0Param4;
}
else
{
float_IfResult9 = W;
}
float4 Output16;
Output16.x = float_IfResult6;
Output16.y = float_IfResult7;
Output16.z = float_IfResult8;
Output16.w = float_IfResult9;
Context.MapUpdate.Particles.DynamicMaterialParameter = Output16;
}
float GetSpawnInterpolation()
{
return HackSpawnInterp;
}
void InterpolateParameters(inout FSimulationContext Context)
{
int InterpSpawn_Index = ExecIndex();
float InterpSpawn_SpawnTime = Emitter_InterpSpawnStartDt + (Emitter_SpawnInterval * InterpSpawn_Index);
float InterpSpawn_UpdateTime = Engine_DeltaTime - InterpSpawn_SpawnTime;
float InterpSpawn_InvSpawnTime = 1.0 / InterpSpawn_SpawnTime;
float InterpSpawn_InvUpdateTime = 1.0 / InterpSpawn_UpdateTime;
float SpawnInterp = InterpSpawn_SpawnTime * Engine_InverseDeltaTime ;
HackSpawnInterp = SpawnInterp;
Context.MapSpawn.Interpolation.InterpSpawn_Index = InterpSpawn_Index;
Context.MapSpawn.Interpolation.InterpSpawn_SpawnTime = InterpSpawn_SpawnTime;
Context.MapSpawn.Interpolation.InterpSpawn_UpdateTime = InterpSpawn_UpdateTime;
Context.MapSpawn.Interpolation.InterpSpawn_InvSpawnTime = InterpSpawn_InvSpawnTime;
Context.MapSpawn.Interpolation.InterpSpawn_InvUpdateTime = InterpSpawn_InvUpdateTime;
Context.MapSpawn.Interpolation.SpawnInterp = SpawnInterp;
Context.MapSpawn.Interpolation.Emitter_SpawnInterval = Emitter_SpawnInterval;
Context.MapSpawn.Interpolation.Emitter_InterpSpawnStartDt = Emitter_InterpSpawnStartDt;
Context.MapSpawn.Interpolation.Emitter_SpawnGroup = Emitter_SpawnGroup;
Context.MapSpawn.Engine.Time = lerp(PREV_Engine_Time, Engine_Time, SpawnInterp);
Context.MapSpawn.Engine.RealTime = lerp(PREV_Engine_RealTime, Engine_RealTime, SpawnInterp);
Context.MapSpawn.Engine.Owner.TimeSinceRendered = lerp(PREV_Engine_Owner_TimeSinceRendered, Engine_Owner_TimeSinceRendered, SpawnInterp);
Context.MapSpawn.Engine.Owner.LODDistance = lerp(PREV_Engine_Owner_LODDistance, Engine_Owner_LODDistance, SpawnInterp);
Context.MapSpawn.Engine.Owner.LODDistanceFraction = lerp(PREV_Engine_Owner_LODDistanceFraction, Engine_Owner_LODDistanceFraction, SpawnInterp);
Context.MapSpawn.Engine.System.Age = lerp(PREV_Engine_System_Age, Engine_System_Age, SpawnInterp);
Context.MapSpawn.Engine.Owner.Rotation = lerp(PREV_Engine_Owner_Rotation, Engine_Owner_Rotation, SpawnInterp);
Context.MapSpawn.Engine.Owner.Position = lerp(PREV_Engine_Owner_Position.xyz, Engine_Owner_Position.xyz, SpawnInterp);
Context.MapSpawn.Engine.Owner.Velocity = lerp(PREV_Engine_Owner_Velocity.xyz, Engine_Owner_Velocity.xyz, SpawnInterp);
Context.MapSpawn.Engine.Owner.SystemXAxis = lerp(PREV_Engine_Owner_SystemXAxis.xyz, Engine_Owner_SystemXAxis.xyz, SpawnInterp);
Context.MapSpawn.Engine.Owner.SystemYAxis = lerp(PREV_Engine_Owner_SystemYAxis.xyz, Engine_Owner_SystemYAxis.xyz, SpawnInterp);
Context.MapSpawn.Engine.Owner.SystemZAxis = lerp(PREV_Engine_Owner_SystemZAxis.xyz, Engine_Owner_SystemZAxis.xyz, SpawnInterp);
Context.MapSpawn.Engine.Owner.Scale = lerp(PREV_Engine_Owner_Scale.xyz, Engine_Owner_Scale.xyz, SpawnInterp);
Context.MapSpawn.Emitter.Age = lerp(PREV_Emitter_Age, Emitter_Age, SpawnInterp);
Context.MapSpawn.User.HazeSize = lerp(PREV_User_HazeSize, User_HazeSize, SpawnInterp);
Context.MapSpawn.User.HazeLifetime = lerp(PREV_User_HazeLifetime, User_HazeLifetime, SpawnInterp);
Context.MapSpawn.Emitter.DistanceTraveled = lerp(PREV_Emitter_DistanceTraveled, Emitter_DistanceTraveled, SpawnInterp);
Context.MapSpawn.User.HazeRadius = lerp(PREV_User_HazeRadius, User_HazeRadius, SpawnInterp);
Context.MapSpawn.User.HazeAttraction = lerp(PREV_User_HazeAttraction, User_HazeAttraction, SpawnInterp);
Context.MapUpdate.Engine.DeltaTime = InterpSpawn_UpdateTime;
Context.MapUpdate.Engine.InverseDeltaTime = InterpSpawn_InvUpdateTime;
}
#if (((SimulationStageIndex >= 0) && (SimulationStageIndex < 1))) // MapSpawn
void HandlePreviousValuesForSpawn(inout FSimulationContext Context)
{
Context.MapSpawn.Particles.Previous.Position = Context.MapSpawn.Particles.Position;
Context.MapSpawn.Particles.Previous.SpriteRotation = Context.MapSpawn.Particles.SpriteRotation;
Context.MapSpawn.Particles.Previous.SpriteSize = Context.MapSpawn.Particles.SpriteSize;
Context.MapSpawn.Particles.Previous.Velocity = Context.MapSpawn.Particles.Velocity;
}
#endif
void ReadDataSets(inout FSimulationContext Context)
{
}
void WriteDataSets(inout FSimulationContext Context)
{
}
void SimulateMapSpawn(inout FSimulationContext Context)
{
//Begin Interpolated Spawn Script!
//Begin Initialize Parameter Map Defaults
float Constant = (0.0);
Context.MapSpawn.Particles.MaterialRandom = Constant;
float Constant1 = (0.0);
Context.MapSpawn.Particles.Lifetime = Constant1;
float Constant2 = 1;
Context.MapSpawn.Particles.Mass = Constant2;
float2 Constant3 = float2(0.0, 0.0);
Context.MapSpawn.Particles.SpriteSize = Constant3;
float2 Constant4 = float2(0.0, 0.0);
Context.MapSpawn.Particles.UVScale = Constant4;
float Constant5 = (0.0);
Context.MapSpawn.Particles.SpriteRotation = Constant5;
float3 Constant6 = float3(0.0, 0.0, 0.0);
Context.MapSpawn.Particles.Position = Constant6;
float Constant7 = (0.0);
Context.MapSpawn.Particles.SubImageIndex = Constant7;
float Constant8 = 0;
Context.MapSpawn.Particles.Age = Constant8;
float Constant9 = (0.0);
Context.MapSpawn.Particles.NormalizedAge = Constant9;
float3 Constant10 = float3(0,0,0);
Context.MapSpawn.Particles.Velocity = Constant10;
float3 Constant11 = float3(0.0, 0.0, 0.0);
Context.MapSpawn.Particles.Presolve.Velocity = Constant11;
float3 Constant12 = float3(0.0, 0.0, 0.0);
Context.MapSpawn.Particles.Presolve.Position = Constant12;
float3 Constant13 = float3(0.0, 0.0, 0.0);
Context.MapSpawn.Particles.Presolve.PhysicsForce = Constant13;
float3 Constant14 = float3(0,0,0);
Context.MapSpawn.Particles.Previous.Velocity = Constant14;
float3 Constant15 = float3(0,0,0);
Context.MapSpawn.Particles.Previous.Position = Constant15;
float Constant16 = 0;
Context.MapSpawn.Particles.DistanceTraveled = Constant16;
float4 Constant17 = float4(0,0,0,0);
Context.MapSpawn.Particles.DynamicMaterialParameter = Constant17;
//End Initialize Parameter Map Defaults
Context.MapSpawn.InitializeParticle.UniformSpriteSize = Context.MapSpawn.User.HazeSize;
Context.MapSpawn.InitializeParticle.Lifetime = Context.MapSpawn.User.HazeLifetime;
float Constant18 = 0;
float Constant19 = 1;
int Constant20 = -1;
int Constant21 = (0);
int Constant22 = 0;
int Constant23 = (0);
int Constant24 = (0);
float CalculateRandomRangeFloat_ScriptUsage4_EvaluationType_NewEnumerator0_FixedRandomSeed_false_OverrideSeed_false_RandomnessMode_NewEnumerator0_Func_Output_RandomFloat;
bool CalculateRandomRangeFloat_ScriptUsage4_EvaluationType_NewEnumerator0_FixedRandomSeed_false_OverrideSeed_false_RandomnessMode_NewEnumerator0_Func_Output_IsDeterministic;
CalculateRandomRangeFloat_ScriptUsage4_EvaluationType_NewEnumerator0_FixedRandomSeed_false_OverrideSeed_false_RandomnessMode_NewEnumerator0_Func_(Constant18, Constant19, Constant20, Constant21, Constant22, Constant23, Constant24, CalculateRandomRangeFloat_ScriptUsage4_EvaluationType_NewEnumerator0_FixedRandomSeed_false_OverrideSeed_false_RandomnessMode_NewEnumerator0_Func_Output_RandomFloat, CalculateRandomRangeFloat_ScriptUsage4_EvaluationType_NewEnumerator0_FixedRandomSeed_false_OverrideSeed_false_RandomnessMode_NewEnumerator0_Func_Output_IsDeterministic, Context);
Context.MapSpawn.InitializeParticle.MaterialRandom = CalculateRandomRangeFloat_ScriptUsage4_EvaluationType_NewEnumerator0_FixedRandomSeed_false_OverrideSeed_false_RandomnessMode_NewEnumerator0_Func_Output_RandomFloat;
bool Constant26 = false;
int Constant27 = 0;
Context.MapSpawn.InitializeParticle.PositionOffsetCoordinateSpace = Constant27;
Context.MapSpawn.Particles.RibbonUVDistance = Context.MapSpawn.Emitter.DistanceTraveled;
EnterStatScope(1 /**InitializeParticle_Emitter_Func_*/);
InitializeParticle_Emitter_Func_(Context);
ExitStatScope(/**InitializeParticle_Emitter_Func_*/);
float Constant53 = (0.0);
Context.MapSpawn.Local.SubUVAnimation.StartFrame = Constant53;
float Constant54 = (0.0);
Context.MapSpawn.Local.SubUVAnimation.EndFrame = Constant54;
EnterStatScope(2 /**SubUVAnimation_Emitter_Func_*/);
SubUVAnimation_Emitter_Func_(Context);
ExitStatScope(/**SubUVAnimation_Emitter_Func_*/);
int Constant72 = 0;
Context.MapSpawn.SphereLocation.SurfaceExpansionMode = Constant72;
Context.MapSpawn.SphereLocation.SphereRadius = Context.MapSpawn.User.HazeRadius;
bool Constant73 = true;
Context.MapSpawn.SphereLocation.NormalizeThickness = Constant73;
float3 Constant74 = float3(0.0, 0.0, 0.0);
Context.MapSpawn.Local.SphereLocation.SphereVector = Constant74;
bool Constant75 = false;
Context.MapSpawn.SphereLocation.HemisphereX = Constant75;
bool Constant76 = false;
Context.MapSpawn.SphereLocation.HemisphereY = Constant76;
bool Constant77 = false;
Context.MapSpawn.SphereLocation.HemisphereZ = Constant77;
Context.MapSpawn.SphereLocation.SphereOrigin = Context.MapSpawn.Particles.Position;
int Constant78 = 2;
Context.MapSpawn.SphereLocation.OffsetCoordinateSpace = Constant78;
int Constant79 = 2;
Context.MapSpawn.SphereLocation.SphereCoordinateSpace = Constant79;
float3 Constant80 = float3(0.0, 0.0, 0.0);
Context.MapSpawn.OUTPUT_VAR.SphereLocation.Position = Constant80;
EnterStatScope(3 /**SphereLocation_Emitter_Func_*/);
SphereLocation_Emitter_Func_(Context);
ExitStatScope(/**SphereLocation_Emitter_Func_*/);
//End Spawn Script!
//Handle resetting previous values at the end of spawn so that they match outputs! (Needed for motion blur/etc)
HandlePreviousValuesForSpawn(Context);
// Begin HandleMissingDefaultValues
// End HandleMissingDefaultValues
}
void SimulateMapUpdate(inout FSimulationContext Context)
{
//Begin Update Script!
RandomCounterDeterministic = 0;
bool Constant109 = true;
Context.MapUpdate.DataInstance.Alive = Constant109;
Context.MapUpdate.ParticleState.DeltaTime = Context.MapUpdate.Engine.DeltaTime;
Context.MapUpdate.ParticleState.Lifetime = Context.MapUpdate.Particles.Lifetime;
EnterStatScope(4 /**ParticleState_Emitter_Func_*/);
ParticleState_Emitter_Func_(Context);
ExitStatScope(/**ParticleState_Emitter_Func_*/);
Context.MapUpdate.FloatFromCurve001.ScaleCurve = Context.MapUpdate.User.HazeAttraction;
Context.MapUpdate.FloatFromCurve001.CurveIndex = Context.MapUpdate.Particles.NormalizedAge;
float FloatFromCurve001_Emitter_Func_Output_Value;
FloatFromCurve001_Emitter_Func_(FloatFromCurve001_Emitter_Func_Output_Value, Context);
Context.MapUpdate.PointAttractionForce.AttractionStrength = FloatFromCurve001_Emitter_Func_Output_Value;
bool Constant115 = false;
float3 PointAttractionForce_SimulationPosition_Emitter_Func_Output_OutPosition;
PointAttractionForce_SimulationPosition_Emitter_Func_(PointAttractionForce_SimulationPosition_Emitter_Func_Output_OutPosition, Context);
Context.MapUpdate.PointAttractionForce.AttractorPosition = PointAttractionForce_SimulationPosition_Emitter_Func_Output_OutPosition;
float3 Constant119 = float3(0,0,0);
Context.MapUpdate.Transient.PhysicsForce = Constant119;
Context.MapUpdate.PointAttractionForce.PositionToAttract = Context.MapUpdate.Particles.Position;
float3 Constant120 = float3(0.0, 0.0, 0.0);
Context.MapUpdate.Local.PointAttractionForce.PointOriginVec = Constant120;
float Constant121 = (0.0);
Context.MapUpdate.Local.PointAttractionForce.PointOriginVecLength = Constant121;
bool Constant122 = true;
Context.MapUpdate.PointAttractionForce.UseFalloff = Constant122;
EnterStatScope(5 /**PointAttractionForce_Emitter_Func_*/);
PointAttractionForce_Emitter_Func_(Context);
ExitStatScope(/**PointAttractionForce_Emitter_Func_*/);
Context.MapUpdate.Transient.PhysicsDeltaTime = Context.MapUpdate.Engine.DeltaTime;
Context.MapUpdate.SolveForcesAndVelocity.DeltaTime = Context.MapUpdate.Transient.PhysicsDeltaTime;
float Constant128 = (0.0);
Context.MapUpdate.Local.SolveForcesAndVelocity.DeltaTime = Constant128;
Context.MapUpdate.SolveForcesAndVelocity.Force = Context.MapUpdate.Transient.PhysicsForce;
Context.MapUpdate.SolveForcesAndVelocity.Velocity = Context.MapUpdate.Particles.Velocity;
Context.MapUpdate.SolveForcesAndVelocity.Mass = Context.MapUpdate.Particles.Mass;
Context.MapUpdate.SolveForcesAndVelocity.Position = Context.MapUpdate.Particles.Position;
float3 Constant129 = float3(0.0, 0.0, 0.0);
Context.MapUpdate.Local.SolveForcesAndVelocity.PhysicsForce = Constant129;
float3 Constant130 = float3(0.0, 0.0, 0.0);
Context.MapUpdate.OUTPUT_VAR.SolveForcesAndVelocity.IncomingPhysicsForce = Constant130;
float3 Constant131 = float3(0.0, 0.0, 0.0);
Context.MapUpdate.OUTPUT_VAR.SolveForcesAndVelocity.Velocity = Constant131;
float Constant132 = (0.0);
Context.MapUpdate.Local.SolveForcesAndVelocity.Mass = Constant132;
float3 Constant133 = float3(0.0, 0.0, 0.0);
Context.MapUpdate.OUTPUT_VAR.SolveForcesAndVelocity.Position = Constant133;
float Constant134 = 0;
Context.MapUpdate.Transient.PhysicsDrag = Constant134;
Context.MapUpdate.SolveForcesAndVelocity.PreviousVelocity = Context.MapUpdate.Particles.Previous.Velocity;
bool Constant135 = true;
Context.MapUpdate.SolveForcesAndVelocity.WritetoIntrinsicProperties = Constant135;
EnterStatScope(6 /**SolveForcesAndVelocity_Emitter_Func_*/);
SolveForcesAndVelocity_Emitter_Func_(Context);
ExitStatScope(/**SolveForcesAndVelocity_Emitter_Func_*/);
Context.MapUpdate.FloatFromCurve002.CurveIndex = Context.MapUpdate.Particles.NormalizedAge;
float FloatFromCurve002_Emitter_Func_Output_Value;
FloatFromCurve002_Emitter_Func_(FloatFromCurve002_Emitter_Func_Output_Value, Context);
Context.MapUpdate.DynamicMaterialParameters.Index0Param1 = FloatFromCurve002_Emitter_Func_Output_Value;
bool Constant143 = true;
Context.MapUpdate.DynamicMaterialParameters.Param0WriteEnabled = Constant143;
bool Constant144 = true;
Context.MapUpdate.DynamicMaterialParameters.Param1WriteEnabled = Constant144;
bool Constant145 = true;
Context.MapUpdate.DynamicMaterialParameters.Param2WriteEnabled = Constant145;
bool Constant146 = true;
Context.MapUpdate.DynamicMaterialParameters.Param3WriteEnabled = Constant146;
EnterStatScope(7 /**DynamicMaterialParameters_Emitter_Func_*/);
DynamicMaterialParameters_Emitter_Func_(Context);
ExitStatScope(/**DynamicMaterialParameters_Emitter_Func_*/);
//End Update Script!
}
void SimulateMain()
{
EnterStatScope(8 /**SpawnScript_Main*/);
FSimulationContext Context = (FSimulationContext)0;
Context.MapSpawn.Particles.Age = 0.0f;
Context.MapSpawn.Particles.DistanceTraveled = 0.0f;
Context.MapSpawn.Particles.DynamicMaterialParameter.x = 0.0f;
Context.MapSpawn.Particles.DynamicMaterialParameter.y = 0.0f;
Context.MapSpawn.Particles.DynamicMaterialParameter.z = 0.0f;
Context.MapSpawn.Particles.DynamicMaterialParameter.w = 0.0f;
Context.MapSpawn.Particles.ID.Index = 0;
Context.MapSpawn.Particles.ID.AcquireTag = 0;
Context.MapSpawn.Particles.Lifetime = 0.0f;
Context.MapSpawn.Particles.Mass = 0.0f;
Context.MapSpawn.Particles.MaterialRandom = 0.0f;
Context.MapSpawn.Particles.NormalizedAge = 0.0f;
Context.MapSpawn.Particles.Position.x = 0.0f;
Context.MapSpawn.Particles.Position.y = 0.0f;
Context.MapSpawn.Particles.Position.z = 0.0f;
Context.MapSpawn.Particles.Presolve.PhysicsForce.x = 0.0f;
Context.MapSpawn.Particles.Presolve.PhysicsForce.y = 0.0f;
Context.MapSpawn.Particles.Presolve.PhysicsForce.z = 0.0f;
Context.MapSpawn.Particles.Presolve.Position.x = 0.0f;
Context.MapSpawn.Particles.Presolve.Position.y = 0.0f;
Context.MapSpawn.Particles.Presolve.Position.z = 0.0f;
Context.MapSpawn.Particles.Presolve.Velocity.x = 0.0f;
Context.MapSpawn.Particles.Presolve.Velocity.y = 0.0f;
Context.MapSpawn.Particles.Presolve.Velocity.z = 0.0f;
Context.MapSpawn.Particles.Previous.Position.x = 0.0f;
Context.MapSpawn.Particles.Previous.Position.y = 0.0f;
Context.MapSpawn.Particles.Previous.Position.z = 0.0f;
Context.MapSpawn.Particles.Previous.SpriteRotation = 0.0f;
Context.MapSpawn.Particles.Previous.SpriteSize.x = 0.0f;
Context.MapSpawn.Particles.Previous.SpriteSize.y = 0.0f;
Context.MapSpawn.Particles.Previous.Velocity.x = 0.0f;
Context.MapSpawn.Particles.Previous.Velocity.y = 0.0f;
Context.MapSpawn.Particles.Previous.Velocity.z = 0.0f;
Context.MapSpawn.Particles.RibbonUVDistance = 0.0f;
Context.MapSpawn.Particles.SpriteRotation = 0.0f;
Context.MapSpawn.Particles.SpriteSize.x = 0.0f;
Context.MapSpawn.Particles.SpriteSize.y = 0.0f;
Context.MapSpawn.Particles.SubImageIndex = 0.0f;
Context.MapSpawn.Particles.UniqueID = 0;
Context.MapSpawn.Particles.UVScale.x = 0.0f;
Context.MapSpawn.Particles.UVScale.y = 0.0f;
Context.MapSpawn.Particles.Velocity.x = 0.0f;
Context.MapSpawn.Particles.Velocity.y = 0.0f;
Context.MapSpawn.Particles.Velocity.z = 0.0f;
int TempIDIndex;
int TempIDTag;
AcquireID(0, TempIDIndex, TempIDTag);
Context.MapSpawn.Particles.ID.Index = TempIDIndex;
Context.MapSpawn.Particles.ID.AcquireTag = TempIDTag;
Context.MapSpawn.Particles.UniqueID = Engine_Emitter_TotalSpawnedParticles + ExecIndex();
Context.MapSpawn.User.HazeSize = User_HazeSize;
Context.MapSpawn.User.HazeLifetime = User_HazeLifetime;
Context.MapSpawn.Engine.Owner.Position = Engine_Owner_Position.xyz;
Context.MapSpawn.Emitter.DistanceTraveled = Emitter_DistanceTraveled;
Context.MapSpawn.Emitter.RandomSeed = Emitter_RandomSeed;
Context.MapSpawn.Engine.System.TickCount = Engine_System_TickCount;
Context.MapSpawn.User.HazeRadius = User_HazeRadius;
Context.MapSpawn.Engine.Owner.SystemLocalToWorld = Engine_Owner_SystemLocalToWorld;
Context.MapSpawn.Engine.Owner.SystemWorldToLocal = Engine_Owner_SystemWorldToLocal;
Context.MapSpawn.Engine.Owner.SystemLocalToWorldNoScale = Engine_Owner_SystemLocalToWorldNoScale;
Context.MapSpawn.Engine.Owner.SystemWorldToLocalNoScale = Engine_Owner_SystemWorldToLocalNoScale;
Context.MapSpawn.Engine.Owner.Scale = Engine_Owner_Scale.xyz;
Context.MapUpdate.Engine.DeltaTime = Engine_DeltaTime;
Context.MapUpdate.User.HazeAttraction = User_HazeAttraction;
Context.MapUpdate.Engine.Owner.Position = Engine_Owner_Position.xyz;
Context.MapUpdate.Engine.InverseDeltaTime = Engine_InverseDeltaTime;
Context.MapUpdate.Engine.Time = Engine_Time;
Context.MapUpdate.Engine.ExecutionCount = Engine_ExecutionCount;
Context.MapUpdate.Emitter.SpawnRate = Emitter_SpawnRate;
Context.MapUpdate.Emitter.SpawnInterval = Emitter_SpawnInterval;
Context.MapUpdate.Emitter.InterpSpawnStartDt = Emitter_InterpSpawnStartDt;
Context.MapUpdate.Emitter.SpawnGroup = Emitter_SpawnGroup;
Context.MapUpdate.Engine.Emitter.TotalSpawnedParticles = Engine_Emitter_TotalSpawnedParticles;
Context.MapUpdate.Emitter.RandomSeed = Emitter_RandomSeed;
Context.MapUpdate.Engine.Emitter.InstanceSeed = Engine_Emitter_InstanceSeed;
ReadDataSets(Context);
InterpolateParameters(Context);
EnterStatScope(9 /**SpawnScript_MapSpawnMain*/);
SimulateMapSpawn(Context);
ExitStatScope(/**SpawnScript_MapSpawnMain*/);
//Begin Transfer of Attributes!
Context.MapUpdate.Particles = Context.MapSpawn.Particles;
Context.MapUpdate.Particles.Previous.Velocity = Context.MapSpawn.Particles.Velocity;
Context.MapUpdate.Particles.Previous.Position = Context.MapSpawn.Particles.Position;
//End Transfer of Attributes!
EnterStatScope(10 /**SpawnScript_MapUpdateMain*/);
SimulateMapUpdate(Context);
ExitStatScope(/**SpawnScript_MapUpdateMain*/);
WriteDataSets(Context);
{
bool bValid = Context.MapUpdate.DataInstance.Alive;
int TmpWriteIndex = OutputIndex(0, true, bValid);
UpdateID(0, Context.MapUpdate.Particles.ID.Index, TmpWriteIndex);
OutputDataFloat(0, 0, TmpWriteIndex, Context.MapUpdate.Particles.Age);
OutputDataFloat(0, 1, TmpWriteIndex, Context.MapUpdate.Particles.DistanceTraveled);
OutputDataFloat(0, 2, TmpWriteIndex, Context.MapUpdate.Particles.DynamicMaterialParameter.x);
OutputDataFloat(0, 3, TmpWriteIndex, Context.MapUpdate.Particles.DynamicMaterialParameter.y);
OutputDataFloat(0, 4, TmpWriteIndex, Context.MapUpdate.Particles.DynamicMaterialParameter.z);
OutputDataFloat(0, 5, TmpWriteIndex, Context.MapUpdate.Particles.DynamicMaterialParameter.w);
OutputDataInt(0, 0, TmpWriteIndex, Context.MapUpdate.Particles.ID.Index);
OutputDataInt(0, 1, TmpWriteIndex, Context.MapUpdate.Particles.ID.AcquireTag);
OutputDataFloat(0, 6, TmpWriteIndex, Context.MapUpdate.Particles.Lifetime);
OutputDataFloat(0, 7, TmpWriteIndex, Context.MapUpdate.Particles.Mass);
OutputDataFloat(0, 8, TmpWriteIndex, Context.MapUpdate.Particles.MaterialRandom);
OutputDataFloat(0, 9, TmpWriteIndex, Context.MapUpdate.Particles.NormalizedAge);
OutputDataFloat(0, 10, TmpWriteIndex, Context.MapUpdate.Particles.Position.x);
OutputDataFloat(0, 11, TmpWriteIndex, Context.MapUpdate.Particles.Position.y);
OutputDataFloat(0, 12, TmpWriteIndex, Context.MapUpdate.Particles.Position.z);
OutputDataFloat(0, 13, TmpWriteIndex, Context.MapUpdate.Particles.Presolve.PhysicsForce.x);
OutputDataFloat(0, 14, TmpWriteIndex, Context.MapUpdate.Particles.Presolve.PhysicsForce.y);
OutputDataFloat(0, 15, TmpWriteIndex, Context.MapUpdate.Particles.Presolve.PhysicsForce.z);
OutputDataFloat(0, 16, TmpWriteIndex, Context.MapUpdate.Particles.Presolve.Position.x);
OutputDataFloat(0, 17, TmpWriteIndex, Context.MapUpdate.Particles.Presolve.Position.y);
OutputDataFloat(0, 18, TmpWriteIndex, Context.MapUpdate.Particles.Presolve.Position.z);
OutputDataFloat(0, 19, TmpWriteIndex, Context.MapUpdate.Particles.Presolve.Velocity.x);
OutputDataFloat(0, 20, TmpWriteIndex, Context.MapUpdate.Particles.Presolve.Velocity.y);
OutputDataFloat(0, 21, TmpWriteIndex, Context.MapUpdate.Particles.Presolve.Velocity.z);
OutputDataFloat(0, 22, TmpWriteIndex, Context.MapUpdate.Particles.Previous.Position.x);
OutputDataFloat(0, 23, TmpWriteIndex, Context.MapUpdate.Particles.Previous.Position.y);
OutputDataFloat(0, 24, TmpWriteIndex, Context.MapUpdate.Particles.Previous.Position.z);
OutputDataFloat(0, 25, TmpWriteIndex, Context.MapUpdate.Particles.Previous.SpriteRotation);
OutputDataFloat(0, 26, TmpWriteIndex, Context.MapUpdate.Particles.Previous.SpriteSize.x);
OutputDataFloat(0, 27, TmpWriteIndex, Context.MapUpdate.Particles.Previous.SpriteSize.y);
OutputDataFloat(0, 28, TmpWriteIndex, Context.MapUpdate.Particles.Previous.Velocity.x);
OutputDataFloat(0, 29, TmpWriteIndex, Context.MapUpdate.Particles.Previous.Velocity.y);
OutputDataFloat(0, 30, TmpWriteIndex, Context.MapUpdate.Particles.Previous.Velocity.z);
OutputDataFloat(0, 31, TmpWriteIndex, Context.MapUpdate.Particles.RibbonUVDistance);
OutputDataFloat(0, 32, TmpWriteIndex, Context.MapUpdate.Particles.SpriteRotation);
OutputDataFloat(0, 33, TmpWriteIndex, Context.MapUpdate.Particles.SpriteSize.x);
OutputDataFloat(0, 34, TmpWriteIndex, Context.MapUpdate.Particles.SpriteSize.y);
OutputDataFloat(0, 35, TmpWriteIndex, Context.MapUpdate.Particles.SubImageIndex);
OutputDataInt(0, 2, TmpWriteIndex, Context.MapUpdate.Particles.UniqueID);
OutputDataFloat(0, 36, TmpWriteIndex, Context.MapUpdate.Particles.UVScale.x);
OutputDataFloat(0, 37, TmpWriteIndex, Context.MapUpdate.Particles.UVScale.y);
OutputDataFloat(0, 38, TmpWriteIndex, Context.MapUpdate.Particles.Velocity.x);
OutputDataFloat(0, 39, TmpWriteIndex, Context.MapUpdate.Particles.Velocity.y);
OutputDataFloat(0, 40, TmpWriteIndex, Context.MapUpdate.Particles.Velocity.z);
}
ExitStatScope(/**SpawnScript_Main*/);
}
-<00><00><00>0,<00>c0c<00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00> ]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00> ]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00> ]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>T,acTc,<00><00><00><00><00><00><00>'<00><><EFBFBD><EFBFBD><EFBFBD>c@<00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>*<00><00>+<00><00><00><00><00><00><00><00><00>'<00><><EFBFBD><EFBFBD><EFBFBD>c@<00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>*<00><00>+<00><00><00><00><00><00><00><00>c<07>6&<01>J<EFBFBD>:<3A>f<EFBFBD>S<1E>,Mc<00>c<00><00>c<00><00>O'a'<00>c<07>6&<01>J<EFBFBD>:<3A>f<EFBFBD>S>@<00><00>v <00><00>'<00>Yv <00>J@#,<00>-,5c-c<00>5@<00>v <00><00><00><00><00>6@<00>v <00><00>v <00>0<00><00><00><00><00><00><00><00>v <00>)v <00>^v <00>,5cc<00>8Q<00>b.c<00><00>dccn_7<5F>D!<><7F>N<EFBFBD>-G<>
;<00><00><00><c$,0bRequiresPersistentIDsGPUComputeSim%,5c%c<00>N@9@G@2cA<00><00>,PL5 &<26><><EFBFBD>ܶ<EFBFBD>(ҠUP<55> O<>(,}cH(cH<00><00>,P<00>K<EFBFBD><4B>nV<6E><1F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>E<EFBFBD><EFBFBD>V<EFBFBD><56><00>,P0<><30><EFBFBD><EFBFBD><17><><EFBFBD><EFBFBD><04><><14><><EFBFBD>k-<2D><><00>,Pw<>3v3[<5B>v<EFBFBD><1/<2F><>6>tH<><00>,Pw<>3v3[<5B>v<EFBFBD><1/<2F><>6>tH<><00>,Pw<>3v3[<5B>v<EFBFBD><1/<2F><>6>tH<><00>,Pw<>3v3[<5B>v<EFBFBD><1/<2F><>6>tH<><00>,P<00>S<EFBFBD>{<7B><>:N}<7D><>/<2F><><EFBFBD><EFBFBD>1X<31><00>,Pw<>3v3[<5B>v<EFBFBD><1/<2F><>6>tH<><00>,Pw<>3v3[<5B>v<EFBFBD><1/<2F><>6>tH<><00>,Pw<>3v3[<5B>v<EFBFBD><1/<2F><>6>tH<><00>,P<00><><EFBFBD>J ;<3B>&<26>$<24><><EFBFBD><17>ܦ(<28><00>,Pw<>3v3[<5B>v<EFBFBD><1/<2F><>6>tH<><00>,Pw<>3v3[<5B>v<EFBFBD><1/<2F><>6>tH<><00>,Pw<>3v3[<5B>v<EFBFBD><1/<2F><>6>tH<><00>,P<00>S<EFBFBD>{<7B><>:N}<7D><>/<2F><><EFBFBD><EFBFBD>1X<31><00>,P<00><>Nc,}ח<><D797>*<2A><><EFBFBD>h<EFBFBD><68><EFBFBD>ON<4F><00>,P<00>Vc<56>e<EFBFBD>)B<00>:%<25>Ϸf{<7B>B<EFBFBD><00>,P<00><>Nc,}ח<><D797>*<2A><><EFBFBD>h<EFBFBD><68><EFBFBD>ON<4F><00>,P<00>Vc<56>e<EFBFBD>)B<00>:%<25>Ϸf{<7B>B<EFBFBD><00>,Pw<>3v3[<5B>v<EFBFBD><1/<2F><>6>tH<><00>,Pw<>3v3[<5B>v<EFBFBD><1/<2F><>6>tH<><00>,P<00>S<EFBFBD>{<7B><>:N}<7D><>/<2F><><EFBFBD><EFBFBD>1X<31><00>,PD<>i-'Kس<4B>˕I{"*@W<><57><00>,Psr<73>i
b<EFBFBD>m<EFBFBD>\c&8T<38><54>9<EFBFBD><39><00>,P<00>mT<6D><54><EFBFBD>k<EFBFBD>SDޗ<44><DE97>B<EFBFBD><42>F? <0A><00>,P<00>Vc<56>e<EFBFBD>)B<00>:%<25>Ϸf{<7B>B<EFBFBD><00>,P<62><DF82><EFBFBD>Ѳ<EFBFBD><D1B2><EFBFBD>]<5D>^<5E><><EFBFBD>a<1C><00>,P<00><><EFBFBD>bPĞE<14>Y<EFBFBD><59>i<EFBFBD><69><EFBFBD><EFBFBD>$<24><00>,P<00><>R<EFBFBD><52>_<EFBFBD>6|b/<2F>?<1B><><10><><00>,P/kjn^<5E>b0t)Qqg[-<2D>~<7E><><EFBFBD><00>,P<00>7<><DB87><EFBFBD>53a<33>MD<>^gE<67><00>,P<00>S<EFBFBD>{<7B><>:N}<7D><>/<2F><><EFBFBD><EFBFBD>1X<31><00>,P<00>7<><DB87><EFBFBD>53a<33>MD<>^gE<67><00>,P<00>S<EFBFBD>{<7B><>:N}<7D><>/<2F><><EFBFBD><EFBFBD>1X<31><00>,P<00>7<><DB87><EFBFBD>53a<33>MD<>^gE<67><00>,P<00>S<EFBFBD>{<7B><>:N}<7D><>/<2F><><EFBFBD><EFBFBD>1X<31><00>,P<00>7<><DB87><EFBFBD>53a<33>MD<>^gE<67><00>,P<00>S<EFBFBD>{<7B><>:N}<7D><>/<2F><><EFBFBD><EFBFBD>1X<31><00>,P<00><>:<3A>m<EFBFBD>Hk!<14>`<60><>A<EFBFBD>(<28><><00>,P ^#<19><>*Q<><51><EFBFBD>MmIb<49><62>7<EFBFBD><37><EFBFBD><00>,P<00><><EFBFBD>[Ӭ$֟<> <0A><>q<EFBFBD>w<EFBFBD>|<7C><00>,P<00><><EFBFBD>[Ӭ$֟<> <0A><>q<EFBFBD>w<EFBFBD>|<7C><00>,P@<1D>$<24><>u<EFBFBD>.k<><51>S<1A>bt<62><00>,P<00>mT<6D><54><EFBFBD>k<EFBFBD>SDޗ<44><DE97>B<EFBFBD><42>F? <0A><00>,PD<>i-'Kس<4B>˕I{"*@W<><57><00>,Psr<73>i
b<EFBFBD>m<EFBFBD>\c&8T<38><54>9<EFBFBD><39><00>,PD<>i-'Kس<4B>˕I{"*@W<><57><00>,Psr<73>i
b<EFBFBD>m<EFBFBD>\c&8T<38><54>9<EFBFBD><39><00>,PD<>i-'Kس<4B>˕I{"*@W<><57><00>,Psr<73>i
b<EFBFBD>m<EFBFBD>\c&8T<38><54>9<EFBFBD><39><00>,P[<08><><EFBFBD><EFBFBD>L<EFBFBD> <0B><>T<EFBFBD>%<12><00>,PZ<><5A>&<26>
`<60><><EFBFBD>2C<32>t<EFBFBD>j<EFBFBD><10><><00>,P<00>,X<19><>*<11><>^<5E><10>x<EFBFBD><78>=<3D><00>,P<00>mT<6D><54><EFBFBD>k<EFBFBD>SDޗ<44><DE97>B<EFBFBD><42>F? <0A><00>,PD<>i-'Kس<4B>˕I{"*@W<><57><00>,Psr<73>i
b<EFBFBD>m<EFBFBD>\c&8T<38><54>9<EFBFBD><39><00>,P<00><><EFBFBD>[Ӭ$֟<> <0A><>q<EFBFBD>w<EFBFBD>|<7C><00>,P<00><><EFBFBD>[Ӭ$֟<> <0A><>q<EFBFBD>w<EFBFBD>|<7C><00>,P<00>mT<6D><54><EFBFBD>k<EFBFBD>SDޗ<44><DE97>B<EFBFBD><42>F? <0A><00>,P<00><>%W<><57>9b<39>O<EFBFBD>8<EFBFBD><38><EFBFBD><05><><EFBFBD><EFBFBD><EFBFBD><00>,Psr<73>i
b<EFBFBD>m<EFBFBD>\c&8T<38><54>9<EFBFBD><39><00>,PD<>i-'Kس<4B>˕I{"*@W<><57><00>,Psr<73>i
b<EFBFBD>m<EFBFBD>\c&8T<38><54>9<EFBFBD><39><00>,P
j<>y[<5B>^<5E><06>_<EFBFBD><11><>^@?<3F><><00>,P<00>mT<6D><54><EFBFBD>k<EFBFBD>SDޗ<44><DE97>B<EFBFBD><42>F? <0A><00>,P<00><><EFBFBD>[Ӭ$֟<> <0A><>q<EFBFBD>w<EFBFBD>|<7C><00>,P<00><><EFBFBD>[Ӭ$֟<> <0A><>q<EFBFBD>w<EFBFBD>|<7C><00>,PZ<><5A>&<26>
`<60><><EFBFBD>2C<32>t<EFBFBD>j<EFBFBD><10><><00>,P<00><17><>@<40>vAU]<5D>L/P<>dW<64><00>,Pw 9<><39><EFBFBD>a)<29><18><>9`Fgf<17><00>,P<00>*<2A><>%LR<4C><52><EFBFBD>?<3F>L<EFBFBD>1%<25><><EFBFBD><00>,P<07>FD<46><44><11><>i<EFBFBD>SY<53><59><EFBFBD>U<EFBFBD><55>=c<00><00><00><00><00>$b7c%b<00><00>,5c<00>c<00>F<00>3<00>'c<00><00>E,<00>c Ec<00><00>g]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>h]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>i]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>o]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00> w]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>x]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>y]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00> z]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>${]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>(|]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>,}]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>8~]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><<00>,DP@<00>?zDfff?<00>?<FzD<7A>bTPNiagaraScript /Niagara/DefaultAssets/DefaultEmitter.DefaultEmitter:UpdateScript<00>Vc<00><00>dccn_7<5F>D!<><7F>N<EFBFBD>-G<>
;<00><00><00>$,0bRequiresPersistentIDsGPUComputeSim%,uc%c@<00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00> ]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>G@2cA<00><00>,PL5 &<26><><EFBFBD>ܶ<EFBFBD>(ҠUP<55> O<>(,}cH(cH<00><00>,P<00>K<EFBFBD><4B>nV<6E><1F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>E<EFBFBD><EFBFBD>V<EFBFBD><56><00>,P0<><30><EFBFBD><EFBFBD><17><><EFBFBD><EFBFBD><04><><14><><EFBFBD>k-<2D><><00>,Pw<>3v3[<5B>v<EFBFBD><1/<2F><>6>tH<><00>,Pw<>3v3[<5B>v<EFBFBD><1/<2F><>6>tH<><00>,Pw<>3v3[<5B>v<EFBFBD><1/<2F><>6>tH<><00>,Pw<>3v3[<5B>v<EFBFBD><1/<2F><>6>tH<><00>,P<00>S<EFBFBD>{<7B><>:N}<7D><>/<2F><><EFBFBD><EFBFBD>1X<31><00>,Pw<>3v3[<5B>v<EFBFBD><1/<2F><>6>tH<><00>,Pw<>3v3[<5B>v<EFBFBD><1/<2F><>6>tH<><00>,Pw<>3v3[<5B>v<EFBFBD><1/<2F><>6>tH<><00>,P<00><><EFBFBD>J ;<3B>&<26>$<24><><EFBFBD><17>ܦ(<28><00>,Pw<>3v3[<5B>v<EFBFBD><1/<2F><>6>tH<><00>,Pw<>3v3[<5B>v<EFBFBD><1/<2F><>6>tH<><00>,Pw<>3v3[<5B>v<EFBFBD><1/<2F><>6>tH<><00>,P<00>S<EFBFBD>{<7B><>:N}<7D><>/<2F><><EFBFBD><EFBFBD>1X<31><00>,P<00><>Nc,}ח<><D797>*<2A><><EFBFBD>h<EFBFBD><68><EFBFBD>ON<4F><00>,P<00>Vc<56>e<EFBFBD>)B<00>:%<25>Ϸf{<7B>B<EFBFBD><00>,P<00><>Nc,}ח<><D797>*<2A><><EFBFBD>h<EFBFBD><68><EFBFBD>ON<4F><00>,P<00>Vc<56>e<EFBFBD>)B<00>:%<25>Ϸf{<7B>B<EFBFBD><00>,Pw<>3v3[<5B>v<EFBFBD><1/<2F><>6>tH<><00>,Pw<>3v3[<5B>v<EFBFBD><1/<2F><>6>tH<><00>,P<00>S<EFBFBD>{<7B><>:N}<7D><>/<2F><><EFBFBD><EFBFBD>1X<31><00>,PD<>i-'Kس<4B>˕I{"*@W<><57><00>,Psr<73>i
b<EFBFBD>m<EFBFBD>\c&8T<38><54>9<EFBFBD><39><00>,P<00>mT<6D><54><EFBFBD>k<EFBFBD>SDޗ<44><DE97>B<EFBFBD><42>F? <0A><00>,P<00>Vc<56>e<EFBFBD>)B<00>:%<25>Ϸf{<7B>B<EFBFBD><00>,P<62><DF82><EFBFBD>Ѳ<EFBFBD><D1B2><EFBFBD>]<5D>^<5E><><EFBFBD>a<1C><00>,P<00><><EFBFBD>bPĞE<14>Y<EFBFBD><59>i<EFBFBD><69><EFBFBD><EFBFBD>$<24><00>,P<00><>R<EFBFBD><52>_<EFBFBD>6|b/<2F>?<1B><><10><><00>,P/kjn^<5E>b0t)Qqg[-<2D>~<7E><><EFBFBD><00>,P<00>7<><DB87><EFBFBD>53a<33>MD<>^gE<67><00>,P<00>S<EFBFBD>{<7B><>:N}<7D><>/<2F><><EFBFBD><EFBFBD>1X<31><00>,P<00>7<><DB87><EFBFBD>53a<33>MD<>^gE<67><00>,P<00>S<EFBFBD>{<7B><>:N}<7D><>/<2F><><EFBFBD><EFBFBD>1X<31><00>,P<00>7<><DB87><EFBFBD>53a<33>MD<>^gE<67><00>,P<00>S<EFBFBD>{<7B><>:N}<7D><>/<2F><><EFBFBD><EFBFBD>1X<31><00>,P<00>7<><DB87><EFBFBD>53a<33>MD<>^gE<67><00>,P<00>S<EFBFBD>{<7B><>:N}<7D><>/<2F><><EFBFBD><EFBFBD>1X<31><00>,P<00><>:<3A>m<EFBFBD>Hk!<14>`<60><>A<EFBFBD>(<28><><00>,P ^#<19><>*Q<><51><EFBFBD>MmIb<49><62>7<EFBFBD><37><EFBFBD><00>,P<00><><EFBFBD>[Ӭ$֟<> <0A><>q<EFBFBD>w<EFBFBD>|<7C><00>,P<00><><EFBFBD>[Ӭ$֟<> <0A><>q<EFBFBD>w<EFBFBD>|<7C><00>,P@<1D>$<24><>u<EFBFBD>.k<><51>S<1A>bt<62><00>,P<00>mT<6D><54><EFBFBD>k<EFBFBD>SDޗ<44><DE97>B<EFBFBD><42>F? <0A><00>,PD<>i-'Kس<4B>˕I{"*@W<><57><00>,Psr<73>i
b<EFBFBD>m<EFBFBD>\c&8T<38><54>9<EFBFBD><39><00>,PD<>i-'Kس<4B>˕I{"*@W<><57><00>,Psr<73>i
b<EFBFBD>m<EFBFBD>\c&8T<38><54>9<EFBFBD><39><00>,PD<>i-'Kس<4B>˕I{"*@W<><57><00>,Psr<73>i
b<EFBFBD>m<EFBFBD>\c&8T<38><54>9<EFBFBD><39><00>,P[<08><><EFBFBD><EFBFBD>L<EFBFBD> <0B><>T<EFBFBD>%<12><00>,PZ<><5A>&<26>
`<60><><EFBFBD>2C<32>t<EFBFBD>j<EFBFBD><10><><00>,P<00>,X<19><>*<11><>^<5E><10>x<EFBFBD><78>=<3D><00>,P<00>mT<6D><54><EFBFBD>k<EFBFBD>SDޗ<44><DE97>B<EFBFBD><42>F? <0A><00>,PD<>i-'Kس<4B>˕I{"*@W<><57><00>,Psr<73>i
b<EFBFBD>m<EFBFBD>\c&8T<38><54>9<EFBFBD><39><00>,P<00><><EFBFBD>[Ӭ$֟<> <0A><>q<EFBFBD>w<EFBFBD>|<7C><00>,P<00><><EFBFBD>[Ӭ$֟<> <0A><>q<EFBFBD>w<EFBFBD>|<7C><00>,P<00>mT<6D><54><EFBFBD>k<EFBFBD>SDޗ<44><DE97>B<EFBFBD><42>F? <0A><00>,P<00><>%W<><57>9b<39>O<EFBFBD>8<EFBFBD><38><EFBFBD><05><><EFBFBD><EFBFBD><EFBFBD><00>,Psr<73>i
b<EFBFBD>m<EFBFBD>\c&8T<38><54>9<EFBFBD><39><00>,PD<>i-'Kس<4B>˕I{"*@W<><57><00>,Psr<73>i
b<EFBFBD>m<EFBFBD>\c&8T<38><54>9<EFBFBD><39><00>,P
j<>y[<5B>^<5E><06>_<EFBFBD><11><>^@?<3F><><00>,P<00>mT<6D><54><EFBFBD>k<EFBFBD>SDޗ<44><DE97>B<EFBFBD><42>F? <0A><00>,P<00><><EFBFBD>[Ӭ$֟<> <0A><>q<EFBFBD>w<EFBFBD>|<7C><00>,P<00><><EFBFBD>[Ӭ$֟<> <0A><>q<EFBFBD>w<EFBFBD>|<7C><00>,PZ<><5A>&<26>
`<60><><EFBFBD>2C<32>t<EFBFBD>j<EFBFBD><10><><00>,P<00><17><>@<40>vAU]<5D>L/P<>dW<64><00>,Pw 9<><39><EFBFBD>a)<29><18><>9`Fgf<17><00>,P<00>*<2A><>%LR<4C><52><EFBFBD>?<3F>L<EFBFBD>1%<25><><EFBFBD><00>,P<07>FD<46><44><11><>i<EFBFBD>SY<53><59><EFBFBD>U<EFBFBD><55><00>Uc<00><><00><00>c<00><00><00>,<00>c <00>cx<00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>x]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00> w]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>By]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>?z]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>@~]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>zD}]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><Fo]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>?g]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>h]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>i]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>e,<00>cecL<00><00>cP<00><]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>ab<00><00>cP<00>4]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00><><EFBFBD><EFBFBD>ab<00>/,9c/c<00>+]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>2]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>U]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>Y]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00> ]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00> ]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>!]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>"]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00> .]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>[]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>]]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>d]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>,% c<00>c<00>
<00><00><00><00><00>'<00><><EFBFBD><EFBFBD><EFBFBD>c@<00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>),Dc)c<00><00><00>1%,<00>c%c<00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>,<00>c<00>cL<00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00><00><00>E@F@?@6@<00>v <00><00>K@L@O@H@;@<00>'<00>'<00><><EFBFBD><EFBFBD><EFBFBD>'<00><><EFBFBD><EFBFBD>Q<00><00><00>v <00>#Qcv<00>Qcv<00>*<00><00>+<00><00>=@<00><00><00><00><00>'<00><><EFBFBD><EFBFBD><EFBFBD>c@<00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>),Dc)c<00><00><00>1%,<00>c%c<00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>,<00>c<00>cL<00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00><00><00>E@F@?@6@<00>v <00><00>K@L@O@H@;@<00>'<00>'<00><><EFBFBD><EFBFBD><EFBFBD>'<00><><EFBFBD><EFBFBD>Q<00><00><00>v <00>#Qcv<00>Qcv<00>*<00><00>+<00><00>=@<00>`,;c`c<00><00><00> <00><00><00><00> <00><00><00> <00><00><00>D <00>C<00><00><00> <00><00><00><00><00> <00>N<00><00><00> <00>P<00>/b<00>v<00>v// Shader generated by Niagara HLSL Translator
// Compile Tags:
// Variable: "bIsInfinitelyLived(False)" StringValue: ""
// Variable: "bCanDieWhenEmitterDeactivates(True)" StringValue: ""
struct NiagaraID
{
int Index;
int AcquireTag;
};
cbuffer FNiagaraGlobalParameters
{
float Engine_DeltaTime;
float Engine_InverseDeltaTime;
float Engine_Time;
float Engine_RealTime;
int Engine_QualityLevel;
int Engine_PaddingInt32_0;
int Engine_PaddingInt32_1;
int Engine_PaddingInt32_2;
}
cbuffer FNiagaraSystemParameters
{
float Engine_Owner_TimeSinceRendered;
float Engine_Owner_LODDistance;
float Engine_Owner_LODDistanceFraction;
float Engine_System_Age;
int Engine_Owner_ExecutionState;
int Engine_System_TickCount;
int Engine_System_NumEmitters;
int Engine_System_NumEmittersAlive;
int Engine_System_SignificanceIndex;
int Engine_System_PaddingInt32_0;
int Engine_System_PaddingInt32_1;
int Engine_System_PaddingInt32_2;
}
cbuffer FNiagaraOwnerParameters
{
float4x4 Engine_Owner_SystemLocalToWorld;
float4x4 Engine_Owner_SystemWorldToLocal;
float4x4 Engine_Owner_SystemLocalToWorldTransposed;
float4x4 Engine_Owner_SystemWorldToLocalTransposed;
float4x4 Engine_Owner_SystemLocalToWorldNoScale;
float4x4 Engine_Owner_SystemWorldToLocalNoScale;
float4 Engine_Owner_Rotation;
float4 Engine_Owner_Position;
float4 Engine_Owner_Velocity;
float4 Engine_Owner_SystemXAxis;
float4 Engine_Owner_SystemYAxis;
float4 Engine_Owner_SystemZAxis;
float4 Engine_Owner_Scale;
}
cbuffer FNiagaraEmitterParameters
{
int Engine_Emitter_NumParticles;
int Engine_Emitter_TotalSpawnedParticles;
float Engine_Emitter_SpawnCountScale;
float Emitter_Age;
int Emitter_RandomSeed;
int Engine_Emitter_InstanceSeed;
int Engine_Emitter_PaddingInt32_0;
int Engine_Emitter_PaddingInt32_1;
}
cbuffer FNiagaraExternalParameters
{
float User_HazeAttraction;
float3 Constants_Emitter_PointAttractionForce_AttractorPositionOffset;
float Constants_Emitter_PointAttractionForce_AttractionRadius;
float Constants_Emitter_PointAttractionForce_FalloffExponent;
float Constants_Emitter_PointAttractionForce_KillRadius;
float Constants_Emitter_SolveForcesAndVelocity_SpeedLimit;
float Constants_Emitter_SolveForcesAndVelocity_AccelerationLimit;
float Constants_Emitter_FloatFromCurve002_ScaleCurve;
float Constants_Emitter_DynamicMaterialParameters_Index0Param2;
float Constants_Emitter_DynamicMaterialParameters_Index0Param3;
float Constants_Emitter_DynamicMaterialParameters_Index0Param4;
}
struct FParamMap0_User
{
float HazeAttraction;
};
struct FParamMap0_Transient
{
bool FirstFrame;
float PhysicsDeltaTime;
float PhysicsDrag;
float3 PhysicsForce;
};
struct FParamMap0_SolveForcesAndVelocity
{
float DeltaTime;
float3 Force;
float Mass;
float3 Position;
float3 PreviousVelocity;
float3 Velocity;
bool WritetoIntrinsicProperties;
};
struct FParamMap0_PointAttractionForce
{
float AttractionStrength;
float3 AttractorPosition;
float3 PositionToAttract;
bool UseFalloff;
};
struct FParamMap0_ParticleState
{
float DeltaTime;
float Lifetime;
};
struct FParamMap0_Particles_Previous
{
float3 Position;
float SpriteRotation;
float2 SpriteSize;
float3 Velocity;
};
struct FParamMap0_Particles_Presolve
{
float3 PhysicsForce;
float3 Position;
float3 Velocity;
};
struct FParamMap0_Particles
{
float Age;
float DistanceTraveled;
float4 DynamicMaterialParameter;
NiagaraID ID;
float Lifetime;
float Mass;
float MaterialRandom;
float NormalizedAge;
float3 Position;
FParamMap0_Particles_Presolve Presolve;
FParamMap0_Particles_Previous Previous;
float RibbonUVDistance;
float SpriteRotation;
float2 SpriteSize;
float SubImageIndex;
int UniqueID;
float2 UVScale;
float3 Velocity;
};
struct FParamMap0_OUTPUT_VAR_SolveForcesAndVelocity
{
float IncomingPhysicsDrag;
float3 IncomingPhysicsForce;
float3 Position;
float3 Velocity;
};
struct FParamMap0_OUTPUT_VAR_ParticleState
{
bool FirstFrame;
};
struct FParamMap0_OUTPUT_VAR
{
FParamMap0_OUTPUT_VAR_ParticleState ParticleState;
FParamMap0_OUTPUT_VAR_SolveForcesAndVelocity SolveForcesAndVelocity;
};
struct FParamMap0_Local_SolveForcesAndVelocity
{
float DeltaTime;
float Mass;
float3 PhysicsForce;
};
struct FParamMap0_Local_PointAttractionForce
{
float3 AttractedPosition;
float3 AttractionForce;
float3 AttractorOrigin;
bool IsWithinAttractor;
float3 PointOriginVec;
float PointOriginVecLength;
};
struct FParamMap0_Local
{
FParamMap0_Local_PointAttractionForce PointAttractionForce;
FParamMap0_Local_SolveForcesAndVelocity SolveForcesAndVelocity;
};
struct FParamMap0_FloatFromCurve002
{
float CurveIndex;
};
struct FParamMap0_FloatFromCurve001
{
float CurveIndex;
float ScaleCurve;
};
struct FParamMap0_Engine_System
{
float Age;
int NumEmitters;
int NumEmittersAlive;
int PaddingInt32_0;
int PaddingInt32_1;
int PaddingInt32_2;
int SignificanceIndex;
int TickCount;
};
struct FParamMap0_Engine_Owner
{
int ExecutionState;
float LODDistance;
float LODDistanceFraction;
float3 Position;
float4 Rotation;
float3 Scale;
float4x4 SystemLocalToWorld;
float4x4 SystemLocalToWorldNoScale;
float4x4 SystemLocalToWorldTransposed;
float4x4 SystemWorldToLocal;
float4x4 SystemWorldToLocalNoScale;
float4x4 SystemWorldToLocalTransposed;
float3 SystemXAxis;
float3 SystemYAxis;
float3 SystemZAxis;
float TimeSinceRendered;
float3 Velocity;
};
struct FParamMap0_Engine_Emitter
{
int InstanceSeed;
int NumParticles;
int PaddingInt32_0;
int PaddingInt32_1;
float SpawnCountScale;
int TotalSpawnedParticles;
};
struct FParamMap0_Engine
{
float DeltaTime;
FParamMap0_Engine_Emitter Emitter;
float InverseDeltaTime;
FParamMap0_Engine_Owner Owner;
int PaddingInt32_0;
int PaddingInt32_1;
int PaddingInt32_2;
int QualityLevel;
float RealTime;
FParamMap0_Engine_System System;
float Time;
};
struct FParamMap0_Emitter
{
float Age;
int RandomSeed;
};
struct FParamMap0_DynamicMaterialParameters
{
float Index0Param1;
bool Param0WriteEnabled;
bool Param1WriteEnabled;
bool Param2WriteEnabled;
bool Param3WriteEnabled;
};
struct FParamMap0_DataInstance
{
bool Alive;
};
struct FParamMap0
{
FParamMap0_DataInstance DataInstance;
FParamMap0_DynamicMaterialParameters DynamicMaterialParameters;
FParamMap0_Emitter Emitter;
FParamMap0_Engine Engine;
FParamMap0_FloatFromCurve001 FloatFromCurve001;
FParamMap0_FloatFromCurve002 FloatFromCurve002;
FParamMap0_Local Local;
FParamMap0_OUTPUT_VAR OUTPUT_VAR;
FParamMap0_Particles Particles;
FParamMap0_ParticleState ParticleState;
FParamMap0_PointAttractionForce PointAttractionForce;
FParamMap0_SolveForcesAndVelocity SolveForcesAndVelocity;
FParamMap0_Transient Transient;
FParamMap0_User User;
};
struct FSimulationContext
{
FParamMap0 Map;
};
static float HackSpawnInterp = 1.0;
void ParticleState_Emitter_Func_(inout FSimulationContext Context);
void SampleCurve_Emitter_FloatFromCurve001_FloatCurve(float In_X, out float Out_Value);
void FloatFromCurve001_Emitter_Func_(out float Out_Value, inout FSimulationContext Context);
void PointAttractionForce_SimulationPosition_Emitter_Func_(out float3 Out_OutPosition, inout FSimulationContext Context);
void DirectionAndLengthSafe_Func_(float3 In_V, float3 In_Fallback, float In_Threshold, float In_FallbackLength, out float3 Out_Direction, out float Out_Length, out bool Out_BelowThreshold, inout FSimulationContext Context);
void PointAttractionForce_Emitter_Func_(inout FSimulationContext Context);
void SolveForcesAndVelocity_Emitter_Func_(inout FSimulationContext Context);
void SampleCurve_Emitter_FloatFromCurve002_FloatCurve(float In_X, out float Out_Value);
void FloatFromCurve002_Emitter_Func_(out float Out_Value, inout FSimulationContext Context);
void DynamicMaterialParameters_Emitter_Func_(inout FSimulationContext Context);
float GetSpawnInterpolation();
void ParticleState_Emitter_Func_(inout FSimulationContext Context)
{
bool Result = NiagaraAll(Context.Map.Particles.Age <= Context.Map.Engine.DeltaTime);
Context.Map.OUTPUT_VAR.ParticleState.FirstFrame = Result;
Context.Map.Transient.FirstFrame = Result;
float Result1 = Context.Map.Particles.Age + Context.Map.ParticleState.DeltaTime;
float Constant1 = 1e-05;
float Result2 = max(Context.Map.ParticleState.Lifetime, Constant1);
float Constant2 = 0.0001;
float Result3 = Result2 - Constant2;
bool Result4 = NiagaraAll(Result1 < Result3);
bool Constant3 = false;
bool bool_IfResult;
if(Result4)
{
bool_IfResult = Context.Map.DataInstance.Alive;
}
else
{
bool_IfResult = Constant3;
}
float Result5 = Result1 / Result2;
Context.Map.DataInstance.Alive = bool_IfResult;
Context.Map.Particles.Age = Result1;
Context.Map.Particles.NormalizedAge = Result5;
bool Constant4 = false;
bool Constant5 = true;
}
void FloatFromCurve001_Emitter_Func_(out float Out_Value, inout FSimulationContext Context)
{
float SampleCurve_Emitter_FloatFromCurve001_FloatCurveOutput_Value;
SampleCurve_Emitter_FloatFromCurve001_FloatCurve(Context.Map.FloatFromCurve001.CurveIndex, SampleCurve_Emitter_FloatFromCurve001_FloatCurveOutput_Value);
float Result6 = SampleCurve_Emitter_FloatFromCurve001_FloatCurveOutput_Value * Context.Map.FloatFromCurve001.ScaleCurve;
Out_Value = Result6;
}
void PointAttractionForce_SimulationPosition_Emitter_Func_(out float3 Out_OutPosition, inout FSimulationContext Context)
{
bool Constant7 = false;
float3 Constant8 = float3(0,0,0);
float3 Constant9 = float3(0.0, 0.0, 0.0);
float3 Vector_SelectResult = Constant9;
if(Constant7 == 1)
{
Vector_SelectResult = Constant8;
}
if(Constant7 == 0)
{
Vector_SelectResult = Context.Map.Engine.Owner.Position;
}
Out_OutPosition = Vector_SelectResult;
}
void DirectionAndLengthSafe_Func_(float3 In_V, float3 In_Fallback, float In_Threshold, float In_FallbackLength, out float3 Out_Direction, out float Out_Length, out bool Out_BelowThreshold, inout FSimulationContext Context)
{
float Result10 = length(In_V);
bool Result11 = NiagaraAll(Result10 < In_Threshold);
float Result12 = length(In_Fallback);
float3 Vector_IfResult;
float float_IfResult;
if(Result11)
{
Vector_IfResult = In_Fallback;
float_IfResult = In_FallbackLength;
}
else
{
Vector_IfResult = In_V;
float_IfResult = Result10;
}
float3 Result13 = Vector_IfResult / float_IfResult;
float3 Vector_IfResult1;
float float_IfResult1;
if(Result11)
{
Vector_IfResult1 = In_Fallback;
float_IfResult1 = Result12;
}
else
{
Vector_IfResult1 = Result13;
float_IfResult1 = float_IfResult;
}
Out_Direction = Vector_IfResult1;
Out_Length = float_IfResult1;
Out_BelowThreshold = Result11;
}
void PointAttractionForce_Emitter_Func_(inout FSimulationContext Context)
{
float3 Result7 = Context.Map.Transient.PhysicsForce * Context.Map.Engine.DeltaTime + Context.Map.Particles.Velocity;
float3 Result8 = Result7 * Context.Map.Engine.DeltaTime + Context.Map.PointAttractionForce.PositionToAttract;
float3 Result9 = Context.Map.PointAttractionForce.AttractorPosition - Result8;
float3 Constant14 = float3(0,0,1);
float Constant15 = 1e-05;
float Constant16 = 1e-06;
float3 DirectionAndLengthSafe_Func_Output_Direction;
float DirectionAndLengthSafe_Func_Output_Length;
bool DirectionAndLengthSafe_Func_Output_BelowThreshold;
DirectionAndLengthSafe_Func_(Result9, Constant14, Constant15, Constant16, DirectionAndLengthSafe_Func_Output_Direction, DirectionAndLengthSafe_Func_Output_Length, DirectionAndLengthSafe_Func_Output_BelowThreshold, Context);
Context.Map.Local.PointAttractionForce.PointOriginVec = DirectionAndLengthSafe_Func_Output_Direction;
Context.Map.Local.PointAttractionForce.PointOriginVecLength = DirectionAndLengthSafe_Func_Output_Length;
Context.Map.Local.PointAttractionForce.AttractorOrigin = Context.Map.PointAttractionForce.AttractorPosition;
Context.Map.Local.PointAttractionForce.AttractedPosition = Result8;
bool Result14 = NiagaraAll(Context.Map.Local.PointAttractionForce.PointOriginVecLength > Constants_Emitter_PointAttractionForce_AttractionRadius);
float Constant17 = 0;
float Result15 = pow(max(0, Context.Map.Local.PointAttractionForce.PointOriginVecLength),Constants_Emitter_PointAttractionForce_FalloffExponent);
float Falloff_IfResult;
if(Context.Map.PointAttractionForce.UseFalloff)
{
Falloff_IfResult = Result15;
}
else
{
Falloff_IfResult = Context.Map.Local.PointAttractionForce.PointOriginVecLength;
}
float Result16 = Context.Map.PointAttractionForce.AttractionStrength * Falloff_IfResult;
float float_IfResult2;
if(Result14)
{
float_IfResult2 = Constant17;
}
else
{
float_IfResult2 = Result16;
}
float3 Result17 = Context.Map.Local.PointAttractionForce.PointOriginVec * float_IfResult2;
float3 Result18 = Context.Map.Transient.PhysicsForce + Result17;
Context.Map.Transient.PhysicsForce = Result18;
Context.Map.Local.PointAttractionForce.IsWithinAttractor = Result14;
Context.Map.Local.PointAttractionForce.AttractionForce = Result17;
bool Constant18 = true;
bool Result19 = Context.Map.DataInstance.Alive && Constant18;
Context.Map.DataInstance.Alive = Result19;
}
void SolveForcesAndVelocity_Emitter_Func_(inout FSimulationContext Context)
{
Context.Map.Local.SolveForcesAndVelocity.DeltaTime = Context.Map.SolveForcesAndVelocity.DeltaTime;
Context.Map.Local.SolveForcesAndVelocity.PhysicsForce = Context.Map.SolveForcesAndVelocity.Force;
Context.Map.OUTPUT_VAR.SolveForcesAndVelocity.IncomingPhysicsForce = Context.Map.SolveForcesAndVelocity.Force;
Context.Map.OUTPUT_VAR.SolveForcesAndVelocity.Velocity = Context.Map.SolveForcesAndVelocity.Velocity;
Context.Map.Local.SolveForcesAndVelocity.Mass = Context.Map.SolveForcesAndVelocity.Mass;
Context.Map.OUTPUT_VAR.SolveForcesAndVelocity.Position = Context.Map.SolveForcesAndVelocity.Position;
Context.Map.Particles.Presolve.Velocity = Context.Map.OUTPUT_VAR.SolveForcesAndVelocity.Velocity;
Context.Map.Particles.Presolve.Position = Context.Map.OUTPUT_VAR.SolveForcesAndVelocity.Position;
Context.Map.Particles.Presolve.PhysicsForce = Context.Map.OUTPUT_VAR.SolveForcesAndVelocity.IncomingPhysicsForce;
float Constant27 = 0.0001;
float Result20 = max(Context.Map.Local.SolveForcesAndVelocity.Mass, Constant27);
float Result21 = Reciprocal(Result20);
float3 Result22 = Result21 * Context.Map.Local.SolveForcesAndVelocity.PhysicsForce;
Context.Map.Local.SolveForcesAndVelocity.PhysicsForce = Result22;
float3 Result23 = Context.Map.Local.SolveForcesAndVelocity.PhysicsForce * Context.Map.Local.SolveForcesAndVelocity.DeltaTime + Context.Map.OUTPUT_VAR.SolveForcesAndVelocity.Velocity;
float Constant28 = 0;
float Result24 = max(Context.Map.Transient.PhysicsDrag, Constant28);
float Result25 = Context.Map.Local.SolveForcesAndVelocity.DeltaTime * Result24;
float Constant29 = 1;
float Result26 = Result25 + Constant29;
float3 Result27 = Result23 / Result26;
Context.Map.OUTPUT_VAR.SolveForcesAndVelocity.Velocity = Result27;
Context.Map.OUTPUT_VAR.SolveForcesAndVelocity.IncomingPhysicsDrag = Context.Map.Transient.PhysicsDrag;
Context.Map.OUTPUT_VAR.SolveForcesAndVelocity.Velocity = Context.Map.OUTPUT_VAR.SolveForcesAndVelocity.Velocity;
Context.Map.OUTPUT_VAR.SolveForcesAndVelocity.Velocity = Context.Map.OUTPUT_VAR.SolveForcesAndVelocity.Velocity;
float3 Result28 = Context.Map.OUTPUT_VAR.SolveForcesAndVelocity.Velocity * Context.Map.Local.SolveForcesAndVelocity.DeltaTime + Context.Map.OUTPUT_VAR.SolveForcesAndVelocity.Position;
Context.Map.OUTPUT_VAR.SolveForcesAndVelocity.Position = Result28;
float3 Position_IfResult;
float3 Velocity_IfResult;
if(Context.Map.SolveForcesAndVelocity.WritetoIntrinsicProperties)
{
Position_IfResult = Context.Map.OUTPUT_VAR.SolveForcesAndVelocity.Position;
Velocity_IfResult = Context.Map.OUTPUT_VAR.SolveForcesAndVelocity.Velocity;
}
else
{
Position_IfResult = Context.Map.Particles.Position;
Velocity_IfResult = Context.Map.Particles.Velocity;
}
Context.Map.Particles.Position = Position_IfResult;
Context.Map.Particles.Velocity = Velocity_IfResult;
float3 Constant30 = float3(0,0,0);
float Constant31 = 0;
float3 ForceVector_IfResult;
float Drag_IfResult;
if(Context.Map.SolveForcesAndVelocity.WritetoIntrinsicProperties)
{
ForceVector_IfResult = Constant30;
Drag_IfResult = Constant31;
}
else
{
ForceVector_IfResult = Context.Map.Transient.PhysicsForce;
Drag_IfResult = Context.Map.Transient.PhysicsDrag;
}
Context.Map.Transient.PhysicsForce = ForceVector_IfResult;
Context.Map.Transient.PhysicsDrag = Drag_IfResult;
float3 Result29 = Context.Map.Particles.Position - Context.Map.Particles.Previous.Position;
float3 Result30 = Result29 * Context.Map.Engine.InverseDeltaTime;
float Result31 = length(Result30);
float Constant32 = 100;
float Result32 = Result31 / Constant32;
float Constant33 = 1e+08;
float Result33 = Modulo(Context.Map.Particles.DistanceTraveled, Constant33);
float Result34 = Result32 + Result33;
Context.Map.Particles.DistanceTraveled = Result34;
}
void FloatFromCurve002_Emitter_Func_(out float Out_Value, inout FSimulationContext Context)
{
float SampleCurve_Emitter_FloatFromCurve002_FloatCurveOutput_Value;
SampleCurve_Emitter_FloatFromCurve002_FloatCurve(Context.Map.FloatFromCurve002.CurveIndex, SampleCurve_Emitter_FloatFromCurve002_FloatCurveOutput_Value);
float Result35 = SampleCurve_Emitter_FloatFromCurve002_FloatCurveOutput_Value * Constants_Emitter_FloatFromCurve002_ScaleCurve;
Out_Value = Result35;
}
void DynamicMaterialParameters_Emitter_Func_(inout FSimulationContext Context)
{
float X;
float Y;
float Z;
float W;
X = Context.Map.Particles.DynamicMaterialParameter.x;
Y = Context.Map.Particles.DynamicMaterialParameter.y;
Z = Context.Map.Particles.DynamicMaterialParameter.z;
W = Context.Map.Particles.DynamicMaterialParameter.w;
float float_IfResult3;
if(Context.Map.DynamicMaterialParameters.Param0WriteEnabled)
{
float_IfResult3 = Context.Map.DynamicMaterialParameters.Index0Param1;
}
else
{
float_IfResult3 = X;
}
float float_IfResult4;
if(Context.Map.DynamicMaterialParameters.Param1WriteEnabled)
{
float_IfResult4 = Constants_Emitter_DynamicMaterialParameters_Index0Param2;
}
else
{
float_IfResult4 = Y;
}
float float_IfResult5;
if(Context.Map.DynamicMaterialParameters.Param2WriteEnabled)
{
float_IfResult5 = Constants_Emitter_DynamicMaterialParameters_Index0Param3;
}
else
{
float_IfResult5 = Z;
}
float float_IfResult6;
if(Context.Map.DynamicMaterialParameters.Param3WriteEnabled)
{
float_IfResult6 = Constants_Emitter_DynamicMaterialParameters_Index0Param4;
}
else
{
float_IfResult6 = W;
}
float4 Output1;
Output1.x = float_IfResult3;
Output1.y = float_IfResult4;
Output1.z = float_IfResult5;
Output1.w = float_IfResult6;
Context.Map.Particles.DynamicMaterialParameter = Output1;
}
float GetSpawnInterpolation()
{
return 1.0f;}
#if (((SimulationStageIndex >= 0) && (SimulationStageIndex < 1))) // MapSpawn
void HandlePreviousValuesForSpawn(inout FSimulationContext Context)
{
}
#endif
void ReadDataSets(inout FSimulationContext Context)
{
}
void WriteDataSets(inout FSimulationContext Context)
{
}
void Simulate(inout FSimulationContext Context)
{
EnterStatScope(0 /**UpdateScript*/);
//Begin Initialize Parameter Map Defaults
//End Initialize Parameter Map Defaults
bool Constant = true;
Context.Map.DataInstance.Alive = Constant;
Context.Map.ParticleState.DeltaTime = Context.Map.Engine.DeltaTime;
Context.Map.ParticleState.Lifetime = Context.Map.Particles.Lifetime;
EnterStatScope(1 /**ParticleState_Emitter_Func_*/);
ParticleState_Emitter_Func_(Context);
ExitStatScope(/**ParticleState_Emitter_Func_*/);
Context.Map.FloatFromCurve001.ScaleCurve = Context.Map.User.HazeAttraction;
Context.Map.FloatFromCurve001.CurveIndex = Context.Map.Particles.NormalizedAge;
float FloatFromCurve001_Emitter_Func_Output_Value;
FloatFromCurve001_Emitter_Func_(FloatFromCurve001_Emitter_Func_Output_Value, Context);
Context.Map.PointAttractionForce.AttractionStrength = FloatFromCurve001_Emitter_Func_Output_Value;
bool Constant6 = false;
float3 PointAttractionForce_SimulationPosition_Emitter_Func_Output_OutPosition;
PointAttractionForce_SimulationPosition_Emitter_Func_(PointAttractionForce_SimulationPosition_Emitter_Func_Output_OutPosition, Context);
Context.Map.PointAttractionForce.AttractorPosition = PointAttractionForce_SimulationPosition_Emitter_Func_Output_OutPosition;
float3 Constant10 = float3(0,0,0);
Context.Map.Transient.PhysicsForce = Constant10;
Context.Map.PointAttractionForce.PositionToAttract = Context.Map.Particles.Position;
float3 Constant11 = float3(0.0, 0.0, 0.0);
Context.Map.Local.PointAttractionForce.PointOriginVec = Constant11;
float Constant12 = (0.0);
Context.Map.Local.PointAttractionForce.PointOriginVecLength = Constant12;
bool Constant13 = true;
Context.Map.PointAttractionForce.UseFalloff = Constant13;
EnterStatScope(2 /**PointAttractionForce_Emitter_Func_*/);
PointAttractionForce_Emitter_Func_(Context);
ExitStatScope(/**PointAttractionForce_Emitter_Func_*/);
Context.Map.Transient.PhysicsDeltaTime = Context.Map.Engine.DeltaTime;
Context.Map.SolveForcesAndVelocity.DeltaTime = Context.Map.Transient.PhysicsDeltaTime;
float Constant19 = (0.0);
Context.Map.Local.SolveForcesAndVelocity.DeltaTime = Constant19;
Context.Map.SolveForcesAndVelocity.Force = Context.Map.Transient.PhysicsForce;
Context.Map.SolveForcesAndVelocity.Velocity = Context.Map.Particles.Velocity;
Context.Map.SolveForcesAndVelocity.Mass = Context.Map.Particles.Mass;
Context.Map.SolveForcesAndVelocity.Position = Context.Map.Particles.Position;
float3 Constant20 = float3(0.0, 0.0, 0.0);
Context.Map.Local.SolveForcesAndVelocity.PhysicsForce = Constant20;
float3 Constant21 = float3(0.0, 0.0, 0.0);
Context.Map.OUTPUT_VAR.SolveForcesAndVelocity.IncomingPhysicsForce = Constant21;
float3 Constant22 = float3(0.0, 0.0, 0.0);
Context.Map.OUTPUT_VAR.SolveForcesAndVelocity.Velocity = Constant22;
float Constant23 = (0.0);
Context.Map.Local.SolveForcesAndVelocity.Mass = Constant23;
float3 Constant24 = float3(0.0, 0.0, 0.0);
Context.Map.OUTPUT_VAR.SolveForcesAndVelocity.Position = Constant24;
float Constant25 = 0;
Context.Map.Transient.PhysicsDrag = Constant25;
Context.Map.SolveForcesAndVelocity.PreviousVelocity = Context.Map.Particles.Previous.Velocity;
bool Constant26 = true;
Context.Map.SolveForcesAndVelocity.WritetoIntrinsicProperties = Constant26;
EnterStatScope(3 /**SolveForcesAndVelocity_Emitter_Func_*/);
SolveForcesAndVelocity_Emitter_Func_(Context);
ExitStatScope(/**SolveForcesAndVelocity_Emitter_Func_*/);
Context.Map.FloatFromCurve002.CurveIndex = Context.Map.Particles.NormalizedAge;
float FloatFromCurve002_Emitter_Func_Output_Value;
FloatFromCurve002_Emitter_Func_(FloatFromCurve002_Emitter_Func_Output_Value, Context);
Context.Map.DynamicMaterialParameters.Index0Param1 = FloatFromCurve002_Emitter_Func_Output_Value;
bool Constant34 = true;
Context.Map.DynamicMaterialParameters.Param0WriteEnabled = Constant34;
bool Constant35 = true;
Context.Map.DynamicMaterialParameters.Param1WriteEnabled = Constant35;
bool Constant36 = true;
Context.Map.DynamicMaterialParameters.Param2WriteEnabled = Constant36;
bool Constant37 = true;
Context.Map.DynamicMaterialParameters.Param3WriteEnabled = Constant37;
EnterStatScope(4 /**DynamicMaterialParameters_Emitter_Func_*/);
DynamicMaterialParameters_Emitter_Func_(Context);
ExitStatScope(/**DynamicMaterialParameters_Emitter_Func_*/);
ExitStatScope(/**UpdateScript*/);
}
void SimulateMain()
{
EnterStatScope(5 /**UpdateScript_Main*/);
FSimulationContext Context = (FSimulationContext)0;
Context.Map.Particles.Age = InputDataFloat(0, 0);
Context.Map.Particles.DistanceTraveled = InputDataFloat(0, 1);
Context.Map.Particles.DynamicMaterialParameter.x = InputDataFloat(0, 2);
Context.Map.Particles.DynamicMaterialParameter.y = InputDataFloat(0, 3);
Context.Map.Particles.DynamicMaterialParameter.z = InputDataFloat(0, 4);
Context.Map.Particles.DynamicMaterialParameter.w = InputDataFloat(0, 5);
Context.Map.Particles.ID.Index = InputDataInt(0, 0);
Context.Map.Particles.ID.AcquireTag = InputDataInt(0, 1);
Context.Map.Particles.Lifetime = InputDataFloat(0, 6);
Context.Map.Particles.Mass = InputDataFloat(0, 7);
Context.Map.Particles.MaterialRandom = InputDataFloat(0, 8);
Context.Map.Particles.NormalizedAge = InputDataFloat(0, 9);
Context.Map.Particles.Position.x = InputDataFloat(0, 10);
Context.Map.Particles.Position.y = InputDataFloat(0, 11);
Context.Map.Particles.Position.z = InputDataFloat(0, 12);
Context.Map.Particles.Presolve.PhysicsForce.x = InputDataFloat(0, 13);
Context.Map.Particles.Presolve.PhysicsForce.y = InputDataFloat(0, 14);
Context.Map.Particles.Presolve.PhysicsForce.z = InputDataFloat(0, 15);
Context.Map.Particles.Presolve.Position.x = InputDataFloat(0, 16);
Context.Map.Particles.Presolve.Position.y = InputDataFloat(0, 17);
Context.Map.Particles.Presolve.Position.z = InputDataFloat(0, 18);
Context.Map.Particles.Presolve.Velocity.x = InputDataFloat(0, 19);
Context.Map.Particles.Presolve.Velocity.y = InputDataFloat(0, 20);
Context.Map.Particles.Presolve.Velocity.z = InputDataFloat(0, 21);
Context.Map.Particles.RibbonUVDistance = InputDataFloat(0, 31);
Context.Map.Particles.SpriteRotation = InputDataFloat(0, 32);
Context.Map.Particles.SpriteSize.x = InputDataFloat(0, 33);
Context.Map.Particles.SpriteSize.y = InputDataFloat(0, 34);
Context.Map.Particles.SubImageIndex = InputDataFloat(0, 35);
Context.Map.Particles.UniqueID = InputDataInt(0, 2);
Context.Map.Particles.UVScale.x = InputDataFloat(0, 36);
Context.Map.Particles.UVScale.y = InputDataFloat(0, 37);
Context.Map.Particles.Velocity.x = InputDataFloat(0, 38);
Context.Map.Particles.Velocity.y = InputDataFloat(0, 39);
Context.Map.Particles.Velocity.z = InputDataFloat(0, 40);
Context.Map.Particles.Previous.Position = Context.Map.Particles.Position;
Context.Map.Particles.Previous.SpriteRotation = Context.Map.Particles.SpriteRotation;
Context.Map.Particles.Previous.SpriteSize = Context.Map.Particles.SpriteSize;
Context.Map.Particles.Previous.Velocity = Context.Map.Particles.Velocity;
Context.Map.Engine.DeltaTime = Engine_DeltaTime;
Context.Map.User.HazeAttraction = User_HazeAttraction;
Context.Map.Engine.Owner.Position = Engine_Owner_Position.xyz;
Context.Map.Engine.InverseDeltaTime = Engine_InverseDeltaTime;
Context.Map.Engine.Emitter.TotalSpawnedParticles = Engine_Emitter_TotalSpawnedParticles;
Context.Map.Emitter.RandomSeed = Emitter_RandomSeed;
Context.Map.Engine.Emitter.InstanceSeed = Engine_Emitter_InstanceSeed;
ReadDataSets(Context);
EnterStatScope(6 /**UpdateScript_MapMain*/);
Simulate(Context);
ExitStatScope(/**UpdateScript_MapMain*/);
WriteDataSets(Context);
{
bool bValid = Context.Map.DataInstance.Alive;
int TmpWriteIndex = OutputIndex(0, true, bValid);
UpdateID(0, Context.Map.Particles.ID.Index, TmpWriteIndex);
OutputDataFloat(0, 0, TmpWriteIndex, Context.Map.Particles.Age);
OutputDataFloat(0, 1, TmpWriteIndex, Context.Map.Particles.DistanceTraveled);
OutputDataFloat(0, 2, TmpWriteIndex, Context.Map.Particles.DynamicMaterialParameter.x);
OutputDataFloat(0, 3, TmpWriteIndex, Context.Map.Particles.DynamicMaterialParameter.y);
OutputDataFloat(0, 4, TmpWriteIndex, Context.Map.Particles.DynamicMaterialParameter.z);
OutputDataFloat(0, 5, TmpWriteIndex, Context.Map.Particles.DynamicMaterialParameter.w);
OutputDataInt(0, 0, TmpWriteIndex, Context.Map.Particles.ID.Index);
OutputDataInt(0, 1, TmpWriteIndex, Context.Map.Particles.ID.AcquireTag);
OutputDataFloat(0, 6, TmpWriteIndex, Context.Map.Particles.Lifetime);
OutputDataFloat(0, 7, TmpWriteIndex, Context.Map.Particles.Mass);
OutputDataFloat(0, 8, TmpWriteIndex, Context.Map.Particles.MaterialRandom);
OutputDataFloat(0, 9, TmpWriteIndex, Context.Map.Particles.NormalizedAge);
OutputDataFloat(0, 10, TmpWriteIndex, Context.Map.Particles.Position.x);
OutputDataFloat(0, 11, TmpWriteIndex, Context.Map.Particles.Position.y);
OutputDataFloat(0, 12, TmpWriteIndex, Context.Map.Particles.Position.z);
OutputDataFloat(0, 13, TmpWriteIndex, Context.Map.Particles.Presolve.PhysicsForce.x);
OutputDataFloat(0, 14, TmpWriteIndex, Context.Map.Particles.Presolve.PhysicsForce.y);
OutputDataFloat(0, 15, TmpWriteIndex, Context.Map.Particles.Presolve.PhysicsForce.z);
OutputDataFloat(0, 16, TmpWriteIndex, Context.Map.Particles.Presolve.Position.x);
OutputDataFloat(0, 17, TmpWriteIndex, Context.Map.Particles.Presolve.Position.y);
OutputDataFloat(0, 18, TmpWriteIndex, Context.Map.Particles.Presolve.Position.z);
OutputDataFloat(0, 19, TmpWriteIndex, Context.Map.Particles.Presolve.Velocity.x);
OutputDataFloat(0, 20, TmpWriteIndex, Context.Map.Particles.Presolve.Velocity.y);
OutputDataFloat(0, 21, TmpWriteIndex, Context.Map.Particles.Presolve.Velocity.z);
OutputDataFloat(0, 22, TmpWriteIndex, Context.Map.Particles.Previous.Position.x);
OutputDataFloat(0, 23, TmpWriteIndex, Context.Map.Particles.Previous.Position.y);
OutputDataFloat(0, 24, TmpWriteIndex, Context.Map.Particles.Previous.Position.z);
OutputDataFloat(0, 25, TmpWriteIndex, Context.Map.Particles.Previous.SpriteRotation);
OutputDataFloat(0, 26, TmpWriteIndex, Context.Map.Particles.Previous.SpriteSize.x);
OutputDataFloat(0, 27, TmpWriteIndex, Context.Map.Particles.Previous.SpriteSize.y);
OutputDataFloat(0, 28, TmpWriteIndex, Context.Map.Particles.Previous.Velocity.x);
OutputDataFloat(0, 29, TmpWriteIndex, Context.Map.Particles.Previous.Velocity.y);
OutputDataFloat(0, 30, TmpWriteIndex, Context.Map.Particles.Previous.Velocity.z);
OutputDataFloat(0, 31, TmpWriteIndex, Context.Map.Particles.RibbonUVDistance);
OutputDataFloat(0, 32, TmpWriteIndex, Context.Map.Particles.SpriteRotation);
OutputDataFloat(0, 33, TmpWriteIndex, Context.Map.Particles.SpriteSize.x);
OutputDataFloat(0, 34, TmpWriteIndex, Context.Map.Particles.SpriteSize.y);
OutputDataFloat(0, 35, TmpWriteIndex, Context.Map.Particles.SubImageIndex);
OutputDataInt(0, 2, TmpWriteIndex, Context.Map.Particles.UniqueID);
OutputDataFloat(0, 36, TmpWriteIndex, Context.Map.Particles.UVScale.x);
OutputDataFloat(0, 37, TmpWriteIndex, Context.Map.Particles.UVScale.y);
OutputDataFloat(0, 38, TmpWriteIndex, Context.Map.Particles.Velocity.x);
OutputDataFloat(0, 39, TmpWriteIndex, Context.Map.Particles.Velocity.y);
OutputDataFloat(0, 40, TmpWriteIndex, Context.Map.Particles.Velocity.z);
}
ExitStatScope(/**UpdateScript_Main*/);
}
-<00><00><00>0,<00>c 0c<00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>T,acTc,<00><00><00><00><00><00><00>'<00><><EFBFBD><EFBFBD><EFBFBD>c@<00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>*<00><00>+<00><00><00><00><00><00><00><00><00>'<00><><EFBFBD><EFBFBD><EFBFBD>c@<00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>*<00><00>+<00><00><00><00><00><00> <00><00>cX<00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00> `cI<00><00>c<00><>7<EFBFBD> RE<52>է<EFBFBD><12>X<EFBFBD><58><00>cb<00>Q,P <00><00><00><00><00>Zc<00>/o<><6F>hD<68>¨<EFBFBD>O<EFBFBD>`<60><><00>cP<00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>`cI<00><00>cM<55>UC<55><43>O`<1F>7:<3A><00>cZ<00>Q,P<00><00><00><00><00>Zc<00> !۷#1C<31><43><EFBFBD><EFBFBD><EFBFBD>M<12><><00>cP<00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>`cI<00><00>cZ<>'<08>@<40>NU<4E><55><0F><><00>cZ<00>Q,P<00><00><00><00><00>Zc=?I.<2E><><EFBFBD>F<EFBFBD>\<5C><>M<EFBFBD>˝<EFBFBD><00>cP<00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>`cI<00><00>c<19><16><>1 L<>=<3D><><EFBFBD>Ob<4F><00>cZ<00>Q,P<00><00><00><00><00>Zc{_?<3F> /rL<72>J<EFBFBD>+<2B><>Җ<EFBFBD><00>cP<00>j]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>`cI<00><00>ccdI<64><49>A<EFBFBD>c<EFBFBD><63>e<EFBFBD><65>{<7B><00>cZ<00>Q,P<00><00><00><00><00>Zc<00>H<EFBFBD>2x<32><78>I<EFBFBD>;<3B><<3C>ӳ<EFBFBD><D3B3><00>cP<00>?]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>`cI<00><00>cA<>@<40><19>I<EFBFBD><49>><3E>k1><08><00>c
<EFBFBD><EFBFBD><EFBFBD><00>cP<00>r]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>`cI<00><00>c1<><31>! <0A>4C<34><43><EFBFBD>S <20>Pd<50><00>cZ<00>Q,P<00><00><00><00><00>Zc<00> rB<72><42>&H<><48>2D1^<5E><00>cT<00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>?<00>?`c<00><00><00>vl!99445C044473D6B2D3995D87AEEC9E329Used to multiply the generated UVs for Sprite renderers.<00>c<00>j= <20><>@<40>{8<>u<16><><00>c^<00>Q, P<00><00><00><00><00>I@Zc߇Ԥ<DF87><D4A4>|A<>⛩)<29>B@<00><00>cP<00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>`cI<00><00>c x(<28>2<EFBFBD>YB<59><42>Dx<44>r<EFBFBD><72><EFBFBD><00>cZ<00>Q,P<00><00><00><00><00>Zc<00>k<EFBFBD> fM&G<>Z7>b<7F><62><EFBFBD><00>cP<00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>`cI<00><00>c<00><15> <0C>l'B<><14><><EFBFBD>ى<EFBFBD><00>cZ<00>Q,P<00><00><00><00><00>Zc<14>><3E><><EFBFBD><EFBFBD>E<EFBFBD>\)<29><>4<EFBFBD><34><EFBFBD><00>cP<00> ]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>`c<00><00><00>vg!DD9000804C89D94928CE1DB3F7CFE9A44The screen aligned roll of the particle in degrees.<00>c4ϗ*<2A>; @<40><15><><EFBFBD>2<EFBFBD>5<EFBFBD><00>cZ<00>Q,P<00><00><00><00><00>I@Zc<00><>j<EFBFBD><6A>o<EFBFBD>L<EFBFBD>*<06>"<22><>R<EFBFBD><00>cP<00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>`cI<00><00>c<00>(əQ<C999>@<40>C,_<>y<><79><00>cZ<00>Q,P<00><00><00><00><00>Zc<00><><>L<EFBFBD><4C><EFBFBD>e<EFBFBD>-B<><00>cP<00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>`cI<00><00>cz<><7A><EFBFBD><EFBFBD><H<><48>F<EFBFBD><46><EFBFBD><1E><><00>cZ<00>Q,P<00><00><00><00><00>Zc򿳽n<>D<EFBFBD><44><EFBFBD>?<3F> <02><><00>cP<00>i]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>`cI<00><00>cB~<7E>,|U6E<36>L<EFBFBD><<3C>|<7C><><EFBFBD><00>cZ<00>Q,P<00><00><00><00><00>Zc <0C> d<><64><EFBFBD>H<EFBFBD>EJ-` @<40>
<EFBFBD><00>cZ<00>Q,P<00><00><00><00><00>Zc
<EFBFBD><EFBFBD>ƣ@<40>u cW<63><57><EFBFBD><00>cP<00> ]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>`c<00><00><00>vy!A6EEC0624C1820790D5859A816C48DF0FA value from 0 to the number of entries in the table of SubUV images.<00>c<19>]<5D><>9<EFBFBD>N<EFBFBD>c^(%rp<><00>cZ<00>Q,P<00><00><00><00><00>I@Zc<00>{b<><62><EFBFBD>I<><49>#<23><><EFBFBD>
q<EFBFBD><00>cP<00>Q]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>`cI<00><00>c,fm<66><6D><EFBFBD><EFBFBD>K<EFBFBD>*J<><4A><EFBFBD>T<EFBFBD><54><00>cZ<00>Q,P<00><00><00><00><00>Zc<00>_<EFBFBD>=<3D><12>H<EFBFBD><48><EFBFBD>+<1E><><EFBFBD><00>cP<00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>`cI<00><00>c<00>!jӁ<02>J<EFBFBD>]<5D><><EFBFBD> <0B><><EFBFBD><00>cZ<00>Q,P<00><00><00><00><00>Zc:?<3F><>L,H<><48><EFBFBD><EFBFBD>iNܵ<4E><00>cL<00> ]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>`cI<00><00>c<00><>P<EFBFBD><50>ߑC<DF91><43><EFBFBD><12>=V<><56>Zc<00>3E(<28><>FA<46><41><EFBFBD>P6<50><36><EFBFBD><EFBFBD><00>cP<00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>`cI<00><00>c<00><><EFBFBD><EFBFBD><<3C><>@<40><><EFBFBD><EFBFBD>_<><5F><EFBFBD><00>cZ<00>Q,P<00><00><00><00><00>ZcO7cd<63>z,L<>u<EFBFBD>w<EFBFBD>k<EFBFBD>z<EFBFBD><00>c\<00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>?<00>?<00>?<00>?`c<00><00><00>vl!AF2939F3425D0B8BAF68D09516C8B1109The 4-float vector used to send custom data to renderer.<00>cڒ<>5<EFBFBD><35>%C<><43><EFBFBD>r8<72><38>"<22><00>cf<00>Q,P<00><00><00><00><00>I@ZcZ6<5A>]CDG<44> <0C><>$<24><>nB@<00><00>cP<00>|]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>`cI<00><00>c<00>4'R<>dF<><46><EFBFBD>:<3A>w<01><00>cZ<00>Q,P<00><00><00><00><00>ZcE <0B>/
<EFBFBD>F<>՞4<D59E>i<EFBFBD>j<EFBFBD><00>cP<00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>`c <00><00>v<00>!2B154E2F42B135FFBAB5AFAC92F9B995tUsed to drive the Particle Random node in the Material Editor. Without this set, any Particle Randoms will get 0.0.<00>cU<>=m<><6D>F<EFBFBD><46>-B<><42><EFBFBD><00>cZ<00>Q,P<00><00><00><00><00>I@Zcs%<25><04><>K<EFBFBD><4B>U<0E>H<EFBFBD>`<60><00>cP<00>}]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>`cI<00><00>c<00> <0C>}o0<6F>H<EFBFBD>9<EFBFBD>5<EFBFBD><1A><15><00>cZ<00>Q,P<00><00><00><00><00>Zc<00>ݡW<DDA1><57><EFBFBD>A<EFBFBD>t<EFBFBD>\H<><48>t<EFBFBD><00>cP<00>o]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>`cI<00><00>c9,<2C>aDfH<><48><EFBFBD><EFBFBD><EFBFBD><EFBFBD>i<EFBFBD><69><00>cZ<00>Q,P<00><00><00><00><00>Zc7<>a<EFBFBD><61><1A>D<EFBFBD>79<37>_<EFBFBD>7<EFBFBD><37><00>cP<00>~]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>`cI<00><00>c[2<><07><>YF<59>#<23>^<13><><EFBFBD><00>cZ<00>Q,P<00><00><00><00><00>Zc<00>:.bHF<48>E<EFBFBD><45><EFBFBD><01>;wT<77><00>cP<00>p]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>`cI<00><00>c:5<><35><EFBFBD><01>E<EFBFBD>p<EFBFBD><70><EFBFBD>+<2B><><EFBFBD><00>cZ<00>Q,P<00><00><00><00><00>Zc?<ҷy<D2B7>H<EFBFBD><48><EFBFBD>+<2B>y U<><00>cP<00>|]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>`cI<00><00>cً<><D98B>E<EFBFBD>@<40>>4
<12><08><00>cZ<00>Q,P<00><00><00><00><00>Zc<00>N$>0fL<66><4C>d?<3F><><EFBFBD>-<2D><00>cP<00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>`cI<00><00>c<00><>2<EFBFBD><19>/A<>޲|<7C>lV<6C><56><00>cZ<00>Q,P<00><00><00><00><00>Zc<00><0 ~,xN<78>u<0E>7<EFBFBD> <0C><><00>cP<00>q]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>`cI<00><00>c<00>")Ax<41><78>D<EFBFBD>mt<6D>:@<40><><EFBFBD><00>cZ<00>Q,P<00><00><00><00><00>Zc<00><><16>F4<46>G<EFBFBD><47>z#jN<01><00>cP<00>{]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>`cI<00><00>c<00><><EFBFBD>(S#<23>N<EFBFBD><4E> <09>`<08><><00>cZ<00>Q,P<00><00><00><00><00>ZcR?<3F><><EFBFBD><EFBFBD><EFBFBD>J<EFBFBD>a<0E><><EFBFBD>Ա<EFBFBD><00>cP<00>:]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>`cI<00><00>c&<26>H<13><><EFBFBD>J<EFBFBD>e<><65>W<EFBFBD>q<EFBFBD><00>cZ<00>Q,P<00><00><00><00><00>Zc<00><06><1C><>J<>AdJ<0E><>|<7C><00>cX<00>k]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00> `cI<00><00>c<00>y<><79><EFBFBD>KN<4B><4E><13><><EFBFBD>+o<><00>cb<00>Q,P <00><00><00><00><00>ZcT<0E><05><><EFBFBD>I<EFBFBD><49><EFBFBD><EFBFBD><EFBFBD>H=<3D><><00>cP<00>w]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>`cI<00><00>c<00>q<EFBFBD>PXe@<40><><EFBFBD><EFBFBD>@<40>R<EFBFBD><52><00>cZ<00>Q,P<00><00><00><00><00>Zc<00>G<EFBFBD><47><EFBFBD><EFBFBD>jK<6A><4B><EFBFBD>P\<5C><><12><00>cX<00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00> `cI<00><00>cU<><00>n<EFBFBD>G<><05>t<><74><EFBFBD><EFBFBD><00>cb<00>Q,P <00><00><00><00><00>Zc<00>K<>MҬB<D2AC>f<EFBFBD>(G<>oZ<6F><00>cP<00>v]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>`cI<00><00>c/<2F>̏[<5B>A<EFBFBD><41><EFBFBD><EFBFBD>*(kp<6B><00>cZ<00>Q,P<00><00><00><00><00>Zc<00>11A<31><00>L<EFBFBD>E <0A><> <0C>r<EFBFBD><00>cX<00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00>
<EFBFBD><00>cb<00>Q,P <00><00><00><00><00>Zcf^K<>u<EFBFBD>A<EFBFBD><41>`<60><>^<5E>j<EFBFBD><00>cP<00>@]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>`cI<00><00>cs<><73>:[G<>T <0B>QC§<43><00>cZ<00>Q,P<00><00><00><00><00>Zc<00><><EFBFBD>G<EFBFBD>@<40>I<EFBFBD><49><EFBFBD><1A><><EFBFBD><EFBFBD><00>cX<00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00> `cI<00><00>c:<3A><16><>}YL<59><4C>5"Dz<44><7A><EFBFBD><00>cb<00>Q,P <00><00><00><00><00>Zc<1F>c<>d<EFBFBD>K<EFBFBD><4B><00><01>s#<23><00>cX<00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00> `cI<00><00>cjtܦ<74>l<EFBFBD>M<EFBFBD><4D>:AG<41>Z<><00>cb<00>Q,P <00><00><00><00><00>Zc|\<1D>W<<3C>L<EFBFBD><4C><EFBFBD><12><><EFBFBD><00>cX<00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00> `cI<00><00>cr<><72>D <0A>O<EFBFBD>P<EFBFBD>/Fv4U<34><00>cb<00>Q,P <00><00><00><00><00>Zc}<7D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>H<EFBFBD> ;<3B>{<0E><><00>cX<00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00> `c<00><00><00>vQ!A0BFD936491FC0E8C483CEB1D3126471The position of the particle.<00>c<0E>ƌ<EFBFBD><C68C>M<>/<1E>H<EFBFBD><08><><00>cb<00>Q,P <00><00><00><00><00>I@Zc<00><08>
<EFBFBD><EFBFBD>B<EFBFBD>6<EFBFBD>f7z,<2C>B@<00><00>cP<00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>`cI<00><00>c<00><Y Z<><5A>F<EFBFBD>~cK2f<32><66><00>cZ<00>Q,P<00><00><00><00><00>Zcq<>q<EFBFBD>錵O<E98CB5>E<EFBFBD><<3C><><EFBFBD><EFBFBD><EFBFBD><00>cP<00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>`cI<00><00>c<00>k<><6B><EFBFBD>=J<>L<EFBFBD><4C><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><00>cZ<00>Q,P<00><00><00><00><00>Zc<00>bR}4<>C<><43><EFBFBD>v<EFBFBD>T<EFBFBD><10><00>cX<00> ]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00> `cI<00><00>cZ<0F>:<3A>G<EFBFBD>O<EFBFBD><4F> <0B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><00>cb<00>Q,P <00><00><00><00><00>Zc<00><>ױ<EFBFBD>G<EFBFBD>M<EFBFBD><4D>WN<57><4E>I<EFBFBD><00>cX<00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00> `cI<00><00>c<00>_R<5F>_<EFBFBD>O<><4F><EFBFBD>33s<33><73><EFBFBD><00>cb<00>Q,P <00><00><00><00><00>Zc,R<10><04><>I<EFBFBD>,k<>h9<18><00>cP<00>c]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>`cI<00><00>cC<><00>Mr<4D>N<EFBFBD><4E><12>s<EFBFBD><73><EFBFBD><EFBFBD><00>cZ<00>Q,P<00><00><00><00><00>Zc<00>Lk<4C>K<EFBFBD>QL<51><4C>_̃ǖ<CC83><C796><00>cX<00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00> `cI<00><00>c<00>٧<EFBFBD>mN<><15>1-'j<1D><00>cb<00>Q,P <00><00><00><00><00>Zc<10>K<0F>N<EFBFBD><4E>m<EFBFBD>K<EFBFBD><4B>N<EFBFBD><00>cP<00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>`cI<00><00>c<00>y<EFBFBD><79>U<EFBFBD> M<><4D><EFBFBD>h5<68>Ec<45><00>cZ<00>Q,P<00><00><00><00><00>Zc7K<37>]<5D><> J<><4A>*<2A>=<3D><><EFBFBD><EFBFBD><00>cP<00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>`cI<00><00>cϫ=<3D>Ae<41>L<EFBFBD>c<EFBFBD><63><EFBFBD><EFBFBD> <><00>cZ<00>Q,P<00><00><00><00><00>Zc<00>Ǽ<13><>xO<78>\a<><61> =<3D><><00>cP<00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>`cI<00><00>c<00>ܺ<EFBFBD><DCBA>:eA<65><1D><>DA<7F><41><00>c
H<><48><53><DF90><EFBFBD><EFBFBD><00>cZ<00>Q,P<00><00><00><00><00>Zc<00><><EFBFBD><EFBFBD><EFBFBD><1F>I<EFBFBD>*Q[O<><00>cP<00>s]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>`cI<00><00>c<00><> <20><>ՎG<D58E>޳<EFBFBD> <06><><EFBFBD><00>cZ<00>Q,P<00><00><00><00><00>Zcզ3<EF92A9>J<EFBFBD><4A>͐<EFBFBD><CD90>?M<><00>cP<00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>@`c<00><00><00>vZ!88FAD3CF4942E69C61C64D979120A8EE'The lifetime of a particle in seconds.<00>c?<3F><>{<7B><>oG<6F><47><EFBFBD><EFBFBD>!<21>tk<74><00>cZ<00>Q,P<00><00><00><00><00>I@Zc<00>:<3A> u<>@<40>zvG<76>|EB@<00><00>cP<00>z]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>`cI<00><00>c<1E>S<EFBFBD>^<5E>4E<34>x<EFBFBD><78>r2O<32><00>cZ<00>Q,P<00><00><00><00><00>Zcx<>Y=<3D><>#E<><45>U<EFBFBD>!`51<35><00>cP<00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>`cI<00><00>c<jo<6A><6F>0_N<5F><4E><EFBFBD><EFBFBD>Gu$<24><00>cZ<00>Q,P<00><00><00><00><00>ZcW<><57><EFBFBD>{K<>"<22><>F*<2A><00>c\<00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>`cI<00><00>cg<><67>E<EFBFBD>R:L<><1B><>6x <0A><><00>cf<00>Q,P<00><00><00><00><00>Zcy><3E><>g<EFBFBD><67>K<EFBFBD><4B>y!<21><><EFBFBD>p<EFBFBD><00>cP<00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>`cI<00><00>c<19> }<7D><>I<EFBFBD><49>2<EFBFBD>ր<EFBFBD><13><00>cZ<00>Q,P<00><00><00><00><00>Zc<07><18>b<EFBFBD><62>C<EFBFBD>0K)$<24>>z<><00>cP<00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00><><EFBFBD><EFBFBD>`cI<00><00>c<00>Y<EFBFBD>ם<EFBFBD>0L<30><4C>~
<EFBFBD><EFBFBD>E<EFBFBD><EFBFBD><00>cZ<00>Q,P<00><00><00><00><00>Zc(0<>.<2E>*<2A>J<EFBFBD>m<EFBFBD><6D>|<7C><>%<25><00>cP<00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>`cI<00><00>c[ <0A>4<EFBFBD>(hE<68><45><EFBFBD>~<7E>~<7E> <0A><00>cZ<00>Q,P<00><00><00><00><00>ZcΏ]<5D><1E>bI<62> 3<><33><EFBFBD><EFBFBD>=<3D><00>cP<00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>`cI<00><00>c?cKlN<><4E>_D;<3B>.9<EFBFBD><00>cZ<00>Q,P<00><00><00><00><00>Zca={Q<>^F<><07><>;<3B><>-<2D><00>cP<00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>`cI<00><00>c5<>#i<>>
O<EFBFBD>/6Ƶkl?<3F><00>cZ<00>Q,P<00><00><00><00><00>Zc:<3A><><10>ײH<D7B2>j<EFBFBD>S<>/p<><00>cP<00>R]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>`cI<00><00>c<0E>)<29>:<3A>B<><42>?_<><5F>b<<3C><00>cZ<00>Q,P<00><00><00><00><00>Zc<00><>[l&<26>A<><41><17><>2L<32><4C><00>cP<00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>`cI<00><00>c<00><><EFBFBD><EFBFBD> @<40><>+<2B>
.<2E><><EFBFBD><00>cZ<00>Q,P<00><00><00><00><00>Zc81<38><31><EFBFBD>7<EFBFBD>D<EFBFBD><44><EFBFBD><EFBFBD>%<03><10><00>cP<00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>`cI<00><00>c<07>\p|1D<>K<02>ߥ<EFBFBD><DFA5><EFBFBD><00>cZ<00>Q,P<00><00><00><00><00>Zc<1E><><EFBFBD>H<EFBFBD><48>F<EFBFBD>鬙;<3B>'<27><><00>cP<00>
]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>`c<00><00><00>vi!95E42096417D9BBE19135DA61216E6786Distance from start of ribbon that the particle lies.<00>c<00><><07><><EFBFBD>G<EFBFBD><47>`<60>V<1B><><EFBFBD><00>cZ<00>Q,P<00><00><00><00><00>I@Zc<00>/Rz<52><7A>WH<57>A<EFBFBD>yU[<5B><><00>cP<00>y]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>`cI<00><00>c <0B>;<12>K<EFBFBD>$yZ<>|m<><00>cZ<00>Q,P<00><00><00><00><00>Zc]<5D><><EFBFBD>a<EFBFBD>I<>5<><35>#<23><><00>cP<00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>`cI<00><00>cL'<1D>nJ<6E>'d<><14><><EFBFBD><EFBFBD><00>cZ<00>Q,P<00><00><00><00><00>Zc<00> \<0F><>JA<4A><41>5^ <0C>Do<44><00>cT<00> ]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>HBHB`c<00><00><00>vP!B11AFBEF4D4966FDC4B52286BF0224BFThe size of the sprite quad.<00>c<00>I<EFBFBD><49><EFBFBD>ƋG<C68B>[<0E><>t<19><00>c^<00>Q, P<00><00><00><00><00>I@ZcQ3@vL<76>7K<37>zךK<D79A><4B>AB@<00><00>cX<00>H]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00> `cI<00><00>cz<><7A><EFBFBD><EFBFBD><EFBFBD><EFBFBD>H<EFBFBD><48>F<EFBFBD>4V<34><56><EFBFBD><00>cb<00>Q,P <00><00><00><00><00>Zc&(<06>i<EFBFBD>[E<>!<21><><EFBFBD><EFBFBD><EFBFBD>y<EFBFBD><00>cP<00>l]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>`cI<00><00>c<00><><EFBFBD><EFBFBD> *L<>9<17><><EFBFBD>-<2D><><00>cZ<00>Q,P<00><00><00><00><00>Zc<00><08>hD<><44>K^<5E>4<EFBFBD><34><00>cP<00>m]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>`cI<00><00>c<00><>$<24><>܎@<40><>@#<23>I<EFBFBD><0F><00>cZ<00>Q,P<00><00><00><00><00>Zc<00>9<EFBFBD><39><EFBFBD><EFBFBD><EFBFBD>J<EFBFBD><4A>2<EFBFBD>Ӗգ<D396><00>cP<00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>`cI<00><00>c<00><1B><><16><>O<EFBFBD>[4_<34><5F><EFBFBD><EFBFBD><EFBFBD><00>cZ<00>Q,P<00><00><00><00><00>Zc<00>w<EFBFBD><77>(&
@<40><03>x<EFBFBD><78>Q<EFBFBD><00>cP<00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>`cI<00><00>c<00><><01><>}<7D>F<EFBFBD>8<EFBFBD>?<<02>c<EFBFBD><00>cZ<00>Q,P<00><00><00><00><00>Zc)p<><70><EFBFBD>A<><41><EFBFBD>A<>|<7C><><00>cP<00>t]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>`cI<00><00>c<00><>i<EFBFBD>Gn@M<>5<EFBFBD><35>e1W<31><00>cZ<00>Q,P<00><00><00><00><00>ZcKz7<><12>C<EFBFBD>_<EFBFBD><5F><EFBFBD>H<EFBFBD>U<EFBFBD><00>cX<00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00> `cI<00><00>csM<73><4D><EFBFBD><EFBFBD>!L<><4C><EFBFBD>A?<12><><EFBFBD><00>cb<00>Q,P <00><00><00><00><00>Zco<06>=<3D>E<><45>,w=<3D><>m<EFBFBD><00>cP<00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>`cI<00><00>c1H<31><48>{<0F>@<40>I <0B><00>U<EFBFBD><00>cZ<00>Q,P<00><00><00><00><00>Zc<00>{<7B>_<>&O<>;e/#΂L<CE82><00>cP<00>h]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>`cI<00><00>c<00>9<EFBFBD>/<2F>3<EFBFBD>F<EFBFBD>ޟv<DE9F><01><00>cZ<00>Q,P<00><00><00><00><00>Zc<00>b "V<>+I<><49><EFBFBD>텘4<ED8598><34><00>cP<00>u]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>`cI<00><00>c<00><>Đ֎M<D68E>ʩ<EFBFBD><CAA9>g<EFBFBD>0<EFBFBD><00>cZ<00>Q,P<00><00><00><00><00>Zc<00><04><>2 <0A>C<EFBFBD><43><EFBFBD>1w D<><00>cX<00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00> `cI<00><00>c%h*<2A>[<5B>B<EFBFBD><13><0F>m<EFBFBD><1F><00>cb<00>Q,P <00><00><00><00><00>Zc\li<6C>s<EFBFBD><73>K<EFBFBD><4B><EFBFBD><EFBFBD><EFBFBD>+me<6D><00>cP<00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>`cI<00><00>c<00> LB<4C>gF<67><46>Y[<5B>ke<07><00>cZ<00>Q,P<00><00><00><00><00>Zcߧ}'[<5B><>O<EFBFBD><1C>q<EFBFBD><71>]:<3A><00>cP<00>n]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>`cI<00><00>c<00>1<19><1F><>I<EFBFBD>m<04> <0B><01><00>cZ<00>Q
<EFBFBD>_B<EFBFBD>#Kg8J2<4A><00>cZ<00>Q,P<00><00><00><00><00>Zclpn<>5H<35><48><EFBFBD>GQ<>l<EFBFBD><00>cP<00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>`cI<00><00>c<00><>܉ <0B>{J<><4A><EFBFBD><EFBFBD>|<7C><><EFBFBD><EFBFBD><00>cZ<00>Q,P<00><00><00><00><00>Zc<62><CCA9>ڹI<DAB9>C<EFBFBD><43><EFBFBD>!<21>K<EFBFBD><00>cP<00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>`cI<00><00>c{<7B>C<>rMC<4D>G<EFBFBD><47>~݃~<7E><00>cZ<00>Q,P<00><00><00><00><00>Zc}<7D><>iCK<>D<EFBFBD> %H<><48><00>c<00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>@`cI<00><00>c<00><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>O<><4F><EFBFBD><EFBFBD>w<<3C><><EFBFBD><00>c<00><00>Q,DP@<00><00><00><00><00>Zc<00>q<EFBFBD>j<02>JE<4A><45>A/<2F><><EFBFBD><7F><00>c<00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>@`cI<00><00>c<00><>T<w2<77>O<EFBFBD><4F>F<EFBFBD>0,
V<EFBFBD><00>c<00><00>Q,DP@<00><00><00><00><00>Zc<00><>V <1A>L<EFBFBD><4C><> <09><00>c<00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>@`cI<00><00>cg<>q<EFBFBD>M<EFBFBD>&@<40><><EFBFBD><EFBFBD><EFBFBD><E7A497><00>c<00><00>Q,DP@<00><00><00><00><00>Zc<00><><02><><EFBFBD>J<EFBFBD><4A>3<><77><00>c<00><00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>@`cI<00><00>cJ<><4A><6C>N<EFBFBD><4E>a<EFBFBD>><3E>S<01><00>c<00><00>Q,DP@<00><00><00><00><00>Zc&<26>6<04><>H<EFBFBD>񫤐<EFBFBD><F1ABA490>l<EFBFBD><00>cX<00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00> `cI<00><00>c5x<35>4<EFBFBD><17>M<EFBFBD><4D>^<5E>w<EFBFBD>c<EFBFBD><63><00>cb<00>Q,P <00><00><00><00><00>Zc<00>k<EFBFBD><6B>B<EFBFBD><42>N<EFBFBD>H<0E>^S<><00>cX<00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00> `cI<00><00>cW<><57><EFBFBD>,><3E>L<EFBFBD>-]y<>Y$i<><00>cb<00>Q,P <00><00><00><00><00>ZcK&<26>f<EFBFBD><00>J<EFBFBD><EFBFBD><EFB597>U<EFBFBD><55><00>cX<00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00> `cI<00><00>c<00>7#<23><>N<><4E>YGi
?<3F><00>cb<00>Q,P <00><00><00><00><00>Zc\<5C><>`DLD<4C>K<EFBFBD><4B>s<17><><00>cX<00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00> `cI<00><00>c<00><>7<EFBFBD>HgxI<78>Y<EFBFBD>`V<>ι<EFBFBD><00>cb<00>Q,P <00><00><00><00><00>Zc"=Ő<>G<EFBFBD>D볷D+<2B><00>cP<00>H]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>`cI<00><00>c<0E>)<29><><EFBFBD>]N<><4E><EFBFBD><EFBFBD><EFBFBD><EFBFBD>#<01><00>cZ<00>Q,P<00><00><00><00><00>Zc<00>@S<> <20>H<EFBFBD>,wX<77>}"<00><00>cL<00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>`cI<00><00>c<00>ɋm<C98B><6D>"B<>MLXm<58>Zc<00><>><3E><>2<EFBFBD>L<EFBFBD><4C>nA<6E>}][<5B><00>cP<00>g]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>`cI<00><00>c<00><>J+tG<74>5<EFBFBD><35>1<>d<EFBFBD><00>cZ<00>Q,P<00><00><00><00><00>Zc<00><>BB<42>Q<EFBFBD>G<EFBFBD>$<24><>6<EFBFBD><36>o<EFBFBD><00>cP<00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>`cI<00><00>c <20>ʝ8<CA9D><38>G<EFBFBD>NE&<26>m<EFBFBD><6D><EFBFBD><00>cZ<00>Q,P<00><00><00><00><00>Zc<00><>ESF<53><46>N<EFBFBD>d'<27>_<EFBFBD>)<29><><00>cP<00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>`cI<00><00>c<00>G<EFBFBD>sV%<25>H<EFBFBD>:<3A>v<EFBFBD>c<12><><00>cZ<00>Q,P<00><00><00><00><00>Zc<00>[<5B><>e<EFBFBD><65>A<EFBFBD>k<EFBFBD><1D><><EFBFBD><EFBFBD><EFBFBD><00>cP<00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>`c<00><00><00>v<00>!AAF8B08F46862195289405B0BD5759BAiThe age in seconds divided by lifetime in seconds. Useful for animation as the value is between 0 and 1.<00>cq<>#<23>)<29><>B<EFBFBD>@<40><>r<EFBFBD><72><EFBFBD><EFBFBD><00>cZ<00>Q,P<00><00><00><00><00>I@Zc<00>L4<4C><34><0E>B<EFBFBD>j݆|t<><74><EFBFBD><00>cP<00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>`cI<00><00>c
<EFBFBD><1F>x<EFBFBD>O<EFBFBD>@<40><><EFBFBD>x<EFBFBD><15><00>cZ<00>Q,P<00><00><00><00><00>Zc\y<>@<40>n<EFBFBD><14>N*<2A><><00>cP<00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>`cI<00><00>c<04>Q<EFBFBD>A<>><3E>1<EFBFBD>g<EFBFBD><00>cZ<00>Q,P<00><00><00><00><00>Zc"<22><0F><>C<EFBFBD><<3C><11>/w0<77><00>cX<00>f]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00> `cI<00><00>c<00><><EFBFBD>A<05>vJ<76>7<EFBFBD><37><EFBFBD>ڝ<EFBFBD><DA9D><00>cb<00>Q,P <00><00><00><00><00>Zc)s!Չ
vH<EFBFBD><EFBFBD><EFBFBD>;<3B>*<2A><><EFBFBD><00>cX<00>e]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00> `cI<00><00>c<00>˴<EFBFBD><CBB4><EFBFBD>3G<33>C<><43>j<EFBFBD><6A><EFBFBD><00>cb<00>Q,P <00><00><00><00><00>Zc<02><>}!ջD<D5BB><44><38><D3B9>T<EFBFBD><00>cX<00>}]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00> `cI<00><00>cc RR<52>O<EFBFBD>%~'<27><>/<2F><00>cb<00>Q,P <00><00><00><00><00>Zc<00><>E<10>%*A<><41><EFBFBD><EFBFBD>8<EFBFBD><03><00>cP<00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00><00>?`ce<00><00>v!1F09338F4D35C76074A719BBC6110181<00>Mass is factored into the Solver Calculations (Solve Forces and Solve Rotational Forces) where forces are converted into a final velocity. The more massive a particle, the more force is required to move it. <00>c<04><><EFBFBD>ÉL<C389><4C>ՙ]K<>o<EFBFBD><00>cZ<00>Q,P<00><00><00><00><00>I@Zc6<>/h<03>J<EFBFBD><4A>D<EFBFBD><1D>;_B@<00><00>cX<00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00> `c<00><00><00>vY!41AF3FCB4EC2369F0BF21AB5FD536D62&The velocity in cm/s of the particle.<00>c<00><><EFBFBD>֕<EFBFBD><D695>E<EFBFBD>I%GJ5H<35><48><00>cb<00>Q,P <00><00><00><00><00>I@Zc4<><34>ȿеO<D0B5><08>FK<><4B><00>cP<00>r]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>`cI<00><00>c<00><>+y fH<66><48>p먉<70><EBA889><EFBFBD><00>cZ<00>Q,P<00><00><00><00><00>Zc(R<>>/<2F><>E<EFBFBD>n<EFBFBD>fKrU8<55><00>cP<00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>`cI<00><00>c/<2F><>l<EFBFBD><6C>C<EFBFBD><43><EFBFBD>H<>#<23><><00>cZ<00>Q,P<00><00><00><00><00>ZcK<><4B>t<EFBFBD>wK<>%<06><><EFBFBD>Cq<43><00>cX<00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00> `cI<00><00>cކ<><DE86><EFBFBD>+<2B>@<40><><EFBFBD><EFBFBD>8\<5C><<3C><00>cb<00>Q,P <00><00><00><00><00>Zc<00>g<EFBFBD><67><EFBFBD><EFBFBD>H<>rl <0A>#<23><><00>cP<00><00>]<00><00><><EFBFBD><EFBFBD><EFBFBD><00><00>`cI<00><00>c!<21>$<24>cOK<4F><4B><EFBFBD>%}<7D><>?<3F><00>c