fx = { { FxDescriptor_Template= { ----------- Emitter name name = "templateFx", ----------- Material ( Texture et MatShader ) material = { GFXMaterialSerializable = { shaderPath = "world/_common/MatShader/addAlpha.msh", textureSet = { GFXMaterialTexturePathSet = { -- diffuse = "world/loveyoulike/vfx/textures/repere.tga", diffuse = "world/_common/vfx/textures/repere.tga", }, }, }, }, gen = { ITF_ParticleGenerator_Template = { ----------- Animated texture parameter -- Is the texture animated ? 0 false, 1 true -- Becareful ! It seems it doesn't work ! -- If you don't want a texture animation, set animUvFreq to 0 . useanim = 1, -- Is the texture Randomized ? 0 no, 1 yes useuvrandom = 0, -- The index for the first index, start at 0 animstart = 0, -- The index for the last index you want animend = 24, -- The speed of the uvs animuvfreq = 50, -- warning ! If you want a proper animated texture which is been played one time along life, you have to use these parameters inside each phase : -- animstart and animend -- ???? -- computeAABB = 1, ----------- Parametres dans le cas d'une anim mesh vertex -- animname = "StitlFX_BrokeAnim5", -- amvPath = "world/_common/FX/Actors/Stilt/StitlFX_Broke.asc", params = { ParticleGeneratorParameters = { ----------- Parametres particules ----------PARGEN_MODE_FOLLOW = 0 ----------PARGEN_MODE_COMPLEX = 1 genMode = 1, -- UVmode = choose what kind of transform you want to apply to the texture -- 0 Default : pas de changement -- 1 FlipX : Flip U -- 2 FlipY : Flip V -- 3 FlipXY : Flip UV -- 4 FlipXtoDirX : Flip U si on se dirige vers -x -- 5 FlipYtoDirY : Flip V si on se dirige vers -y -- 6 FlipXYtoDirXY : 4+5 uvMode = 0, -- Shape type emission. Becareful ! a lot of parameters depend of the type of this parameters ! --PARGEN_GEN_POINTS = 0 --PARGEN_GEN_RECTANGLE = 1 --PARGEN_GEN_CIRCLE = 2 --PARGEN_GEN_BEZIER = 3 genGenType = 1 , -------------------------- Spline shape --------------------------------------- -- Where the emission start along the spline ? -- GenPosMin = 0, -- Where the emission end along the spline ? -- GenPosMax = 1, -- The value of offset along the spline, if negative value, particules goes in perpendicular way, if positive, along spline. -- GenSize = 0.5, -------------------------- Circular shape ------------------------------------- circleradius = 4, innercircleradius = 5, -- Split the circular into numberSplit division. for example if numberSplit = 10, there's a spawn each 360/10 degrees numberSplit = 10, -- SplitDelta, random range for the numberSplit splitdelta = 0, -- Scale the circular shape -- scaleShape = vector2dNew(6.0,2.0), -- Rotate the circular shape, becarefull ! Everything are evaluated into radians ! -- rotateShape = vector2dNew(0,1.57), -- If the Actor is flipped, what happened for the angleMin,is it mirrored ? -- canFlipAngleMin = 1, -- If the Actor is flipped, what happened for the angleMax,is it mirrored ? -- canFlipAngleMax = 1, -------------------------- Rectangle shape ------------------------------------- genBox = { AABB = { MIN = vector2dNew(-5,-5), MAX = vector2dNew(5,5), } }, ------------------------------------------------------------------------------------ -- The bounding box visibility for the particles boundingBox = { AABB = { MIN = vector2dNew(-10,-20.0), MAX = vector2dNew(10,20.0), } }, --------------------------- Emission parameter -- enable an offset timing for spawning particles in seconds --initLifeTime = 10, -- maxParticles spawned maxParticles = 8 , -- -1 : infinite -- 100 : 100 particles spawned for all the emission emitParticlesCount = -1, -- How many seconds betwenn each spawn freq = 0.1251, -- The magnitude of the velocity velNorm = 0.4, -- if velocityVar is 5 and velNorm is 1 , the magnitude of the velocity will be a random between 1 and 5 velocityVar = 1, -- VelAngle is the direction of the velocity, if 0, the direction is +x -- if 90, the direction is +y velAngle = 90, -- Is the velocityDirection randomized ? 0 no, 1 yes -- If you want to control the spread (the coneAngle around the direction), use genType circular (2), genangmin and genangmax randomizeDirection = 0, -- Minimum and maximum angle for the velocity direction using circular shape emission --genangmin = 18, --genangmax = 180, -- Gravity direction grav = vectorNew(0,0,0), -- Acceleration direction acc = vectorNew(0,0,0), -- If the Actor is flipped, what happend for the acceleration ? -- canFlipAccel = 0 -- Friction, simulating air resistance : At each evaluation, velocity = velocity * friction, -- so if you want to slow down a velocity, friction must be set to something down 1 (put not to strong range), to speed up friction = 1, -- The orientation of the sprite folow the direction. orientDir = 0, -- If the Actor is flipped, what happend for the orientDir ? --canFlipOrientDir = 1, -- TwistInit initAngle = 0, -- TwistDelta angleDelta = 360, -- SpeedTwist angularSpeed = 50, -- SpeedTwist delta angularSpeedDelta = 30, -- If the Actor is flipped, do the angleOffset been offseted ? canFlipAngleOffset = 1, -- If the Actor is flipped, do the initAngle been offseted ? canFlipInitAngle = 1, -- If the Actor is flipped, do the AngularSpeed been offseted ? canFlipAngularSpeed = 1, -- If the Actor is flipped, do the Pivot been offseted ? canFlipPivot = 0, -- Stretch sprites : -- no uniformScale, size depend of the phases -- If uniformscale, this parameters describes the features : -- 1 no strectch, sizeY = sizeX -- 0.5 sizeY = 0.5 * sizeX -- 2 sizeY = 2 * sizeX uniformscale = 1, -- warning if you want to change the pivot, your sprite will be inverted ! And I don't understand how it works.... pivot = vector2dNew(0,0), -- Do the world transformations been applied onto the actual system ? -- For ex. if the father is scaled, the fxs will be aswell. useMatrix = 1, -- Is the systeme inherit of the mouvement of the father ? useActorTranslation =1, nbPhase = 3, sizeTotal = 50, phases = { ------------------------------------------------------------------------------------------------------------------------------ { ParPhase = { phaseTime = 0.2, -- deltaphasetime = 0.2, colorMin = "0x00ff0000", colorMax = "0x00ffffff", sizeMin = vector2dNew(1,1) , sizeMax = vector2dNew(1,1) , animstart = 0, animend = 24, blendtonextphase = 1, } }, { ParPhase = { phaseTime = 1, -- deltaphasetime = 0.2, sizeMin = vector2dNew(1,1) , sizeMax = vector2dNew(1,1) , animstart = 0, animend = 24, blendtonextphase = 1, } }, { ParPhase = { phaseTime = 0.0, blendtonextphase = 0, colorMin = "0x00ffffff", colorMax = "0x00ffffff", sizeMin = vector2dNew(1,1) , sizeMax = vector2dNew(1,1) , animstart = 24, animend = 24, blendtonextphase = 0, } }, ------------------------------------------------------------------------------------------------------------------------ }, renderPrio = 0, defaultColor = "0xFFBBAAFF", }, }, }, }, }, }, } appendTable(component.FxBankComponent_Template.Fx,fx)