physics_particle_set_flags(index, flags)
| Argument | La description |
|---|---|
| index | L'indice de la particule |
| flags | Les drapeaux à définir sur la particule. |
Retours: Real
Avec cette fonction, vous pouvez modifier les indicateurs de particules pour une particule individuelle. le index value est l'identifiant de la particule renvoyé par la fonction physics_particle_create, alors que les drapeaux sont la valeur de retour d'une combinaison des constantes suivantes:
| Constant | La description |
|---|---|
| phy_particle_flag_water | Les propriétés par défaut pour une particule de corps mou. |
| phy_particle_flag_zombie | Une particule de zombie est celle qui sera détruite en une seule étape avec tous les autres marqués de cette manière. |
| phy_particle_flag_wall | Cela définit la particule comme statique, la créant essentiellement comme un objet immobile dans la simulation physique, car ils resteront dans une position fixe, peu importe ce qui entre en collision avec eux. Vous devriez utiliser ce drapeau plutôt que de définir la densité à 0. |
| phy_particle_flag_spring | Les particules de printemps produisent l'effet d'être attachées l'une à l'autre, comme si elles étaient reliées par un ressort. Les particules créées avec ce drapeau sont "connectées" par paires, chaque particule étant connectée à celle qui était la plus proche au moment de la création. Une fois appariées, les particules ne changent pas de «partenaires», et plus une force externe les tire l'une de l'autre, plus grande est la puissance avec laquelle elles vont entrer en collision lorsque cette force externe est retirée. Notez que, quelle que soit la distance entre les particules appariées, la connexion entre elles ne s'alignera pas. |
| phy_particle_flag_elastic | Les particules élastiques se déforment et peuvent également rebondir lorsqu'elles entrent en collision avec d'autres corps rigides dans la simulation physique. |
| phy_particle_flag_viscous | Une particule visqueuse est celle qui présente "collant" ou "collant", comme l'huile. Les particules visqueuses s'agglomèrent et se collent davantage. |
| phy_particle_flag_powder | Les particules de poudre produisent un effet de diffusion tel que vous pourriez le voir avec du sable ou de la poussière. |
| phy_particle_flag_tensile | Les particules de traction sont utilisées pour produire l'effet de la tension de surface, ou la courbure tendue sur la surface d'un corps de liquide. Ils pourraient être utilisés, par exemple, pour créer la tension de surface que vous verriez sur une goutte d'eau. Une fois la tension rompue, les particules rebondissent comme si elles étaient élastiques, mais elles continuaient également à s'attirer l'une l'autre. En conséquence, les particules ont tendance à former des grappes lorsqu'elles rebondissent. |
| phy_particle_flag_colourmixing | Les particules qui mélangent les couleurs prennent une partie de la couleur des autres particules avec lesquelles elles entrent en collision. Notez que si une seule des deux particules en collision est une couleur de mélange, l'autre particule conserve sa couleur de pré-collision. |
Ces drapeaux utilisent le masquage de bits pour créer une valeur de sortie finale qui est ensuite vérifiée pour définir les différentes propriétés de base de la particule (la propriété de base étant toujours celle de phy_particle_flag_water ). Par exemple, si vous voulez simuler un liquide visqueux avec une tension de surface, utilisez le bitwise ou "|" masquer les bits appropriés comme indiqué dans l'exemple ci-dessous. De cette façon, vous pouvez définir différentes propriétés (autres que les propriétés globales) pour chaque particule créée, si vous le souhaitez.
var flags = phy_particle_flag_water |
phy_particle_flag_viscous | phy_particle_flag_tensile;
physics_particle_set_flags(p, flags);
Le code ci-dessus créera une variable pour stocker la valeur des drapeaux, puis l'utilisera pour définir les drapeaux sur une particule créée précédemment avec l'index stocké dans la variable "p".