Deja il faut comprendre que les FXParticleSystem c'est des systemes de particules qui ne sont rien d'autre que des images 2d qui bougent dans tout les sens(dans ce cas, car on peut aussi faire des systemes de particules 3d, dans ce cas c'est des models 3d qui bougent dans tout les sens)
Et donc nous on cherche a définir la trajectoire des particules, 1 particule c'est 1 image
Celui de bfme2 est je doit dire ultra complexe et donc complet
je reprend que les lignes ou t'as mis des ???
Lifetime = 28 28 ; c pour le temps mais je comprend pa trop comment on le met les chiffre c en quel unité , mm de seconde ? pk 2 nombres ?ici c'est un chiffre en nombre de frames (images/affichage a l'écran) donc par exemple là chaque particules sera affiché exactement 28 fois a l'écran et comme le jeu tourne a environ 30fps (frames par secondes), ca veut dire que chaque particules va vivre moins d'une seconde puis elle disparaitra, on met 2 fois le meme chiffre pour dire que c'est exactement cette valeur la et pas autre chose. si on avait mis
Lifetime = 10 300 , les particules auraient eu un temps de vie comprit entre 10 et 300 frames qui est déterminé aléatoirement lorsqu'elle naissent, en gros dans ce cas, certains particules aurait duré quelques centième de secondes tandis que d'autres auraient duré environ 10 secondes (et d'autre aurait duré moyennement, etc... j'espere que t'as comprit
) , a chaque fois qu'un parametre attent 2 valeurs il faut lui mettre les 2 valeur extrèmes, si tu veut une valeur précise tu met 2 fois le meme nombre (choissit un nombre comprit entre 28 et 28 ... euhhh 28 ? )
SystemLifetime = 60 ; ???ca c'est le temps de vie du systeme. Quand le systeme meurt, il arrete d'emmètre des particules
SortLevel = 1 ; ???Ce parametre il vaut mieux le laisser a 1. comme presque tout ceux qu'on trouve dans l'ini
Size = 10 20 ; taille, mais comme lifetime jaimerai des precision et puis aussi pk ya deux nombersici la taille des particules sera comprise entre 10 et 20 quand elles apparaitront
BurstCount = 4 5 ; Pas trop compris mais ca doi avoir un rapport avec la multiplication des particules non?A chaque fois que des particules aparraissent il y aura entre 4 ou 5 particules car elles apparaissent en meme temps par vagues, le temps entre 2 "vagues" est donné par BurstDelay (toujours en nombre de frames) quand il n'y a pas ce parametre ca doit surement considérer comme si c'etait a chaque frames donc BurstDelay = 1 1 mais j'en suis pas sur
InitialDelay = 65 65 ; ???c'est le délai en frames avant l'arrivée de la premiere "vague" de particules quand le systeme apparait (ici environ 2 secondes normalement),en fait il ne se passera rien avant 65 frames
IsEmitAboveGroundOnly = Yes ; ???c'est pour savoir si les particules doivent apparaitre seulement au dessus du sol. C'est pas très important comme parametre sauf si l'effet doit sembler sortir ou etre très proche du sol dans ce cas , mieux vaut virer la ligne
Update = DefaultUpdate ; ???????????????Ca sert a connaitre le comportement des particules une fois apparues, considère ca comme un module des object sauf que la c'est pour des particules
SizeRate = 1 1 ; ???????ca c'est le multiplicateur de taille des particules au départ, donc ici c'est 1, et la taille multipliée par 1 ca fait toujours la meme taille donc cette ligne est un peu inutile ici car elle ne fait rien tout
si SizeRate est supérieur a 1 la particule va avoir tendance la grossir des de départ si il est inférieur a 1 elle va diminuer
SizeRateDamping = 0.99 0.99 ; ???????C'est le multiplicateur sur le multiplicateur de la taille des particules a chaques frames ( c'est bien le multiplicateur du multiclicateur) , ici c'est 0.99 donc la taille va rétrecir ( taille > 0.99*taille ). Dans tout les cas, il ne faut pas mettre de chiffres trop éloignés de 1 car la taille augmente ou rétrécit de facons exponentielle. par exemple si tu met 1.1 (ca semble peu mais tu va voir), au bout de 8 frames seulement la taille de la particule aura deja doublé depuis le départ car 1.1^8 = 2.1 et au bout d'une seconde sa taille serait multipliée par environ 1.1^30 ca fait presque multipliée par 20 et dans ce cas la particule est souvent proche de la taille de l'écran et est très pixelisée ce qui fait moche ( cela seulement dans le cas ou SizeRate = 1 1)
si sizeRate > 1 et SizeRateDamping >1 , la particule grossit de plus en plus vite
si sizeRate > 1 et SizeRateDamping <1 , la particule grossit de moins en moins vite
si sizeRate < 1 et SizeRateDamping >1 , la particule rétrécit de moins en moins vite
si sizeRate < 1 et SizeRateDamping <1 , la particule rétrécit de plus en plus vite
(j'ai pas vérifié mais normalment ca doit etre ca)
AngleZ = -3 3 ; ?????C'est la rotation des particules sur axe Z au départ
AngularRateZ = -0.05 0.05 ; ??????c'est le modificateur additionel de vitesse de rotation des particules je crois a chaque frames
AngularDamping = 1 1 ; ????????c'est le multiplicateur appliqué a AngularRateZ a chaque frame (et ca reprend le meme principe qu'avec sizeRate et sizeRateDamping)
AngularDampingXY = 1 1 ; ????????cette ligne ne sert a rien j'ai l'impression car un multiplicateur a 1 tu peut toujours y aller quand tu le multiplie par un autre chiffre ca fait toujours le meme chiffre, donc je sait pas a quoi ca sert, mais ca sert mais ca sert a rien dans ce cas la
End ;??????c'est le end de Update = DefaultUpdate
Physics = DefaultPhysics ; ??????????ca regroupe des parametres de déplacement des particules (encore une sorte de module ) jusqu'au end suivant
VelocityDamping = 0.93 0.95 ; ?????????C'est le modificateur de vitesse des particules , ici il est < 1 donc les particules devraient etre de plus en plus lentes
DriftVelocity = X:0 Y:0 Z:0.05 ; ???????ca donne un vecteur de déplacement pour les particules a chaque frame leur position sera ajouté a ce vecteur
ici sur l'axe Z donc les particules devraient monter car la valeur de Z est > 0 , et de plus en plus lentement car VelocityDamping < 1
EmissionVelocity = OrthoEmissionVelocity ; ??????? c la vitesse de propagation ???
X = 12 12 ;???Quand les particules apparaissent, elle ont cette vitesse sur l'axe X mais je suis pas sur de ca
EmissionVolume = LineEmissionVolume ;???????les particules apparaissent sur un segment
StartPoint = X:5 Y:-5 Z:0 ; ???
EndPoint = X:5 Y:-5 Z:0 ;???ce sont les 2 extrémités de ce segment sur lequel les particules apparaissent
Draw = DefaultDraw ; ????ca sert a rien pour des particules en 2d, c'est utile pour les particules en model 3d (d'où un draw)
Wind = DefaultWind ; ???
WindStrength = 0.1 ;???
WindAngleChangeMin = 0.149924 ;???
WindAngleChangeMax = 0.449946 ;???
WindPingPongStartAngleMax = 0.785398 ;???
WindPingPongEndAngleMin = 5.49779 ;????
WindPingPongEndAngleMax = 6.28319 ;???
TurbulenceAmplitude = 0.02 ;???
TurbulenceFrequency = 25 ;???End
tout ca c'est des parametres pour le vent qui sont souvent facultatifs