Difference between revisions of "Particle (SA)"
(16 intermediate revisions by 5 users not shown) | |||
Line 1: | Line 1: | ||
− | A '''particle''' is an animation of moving | + | A '''particle''' is an animation of moving [[texture]]s to simulate fuzzy effects. The new particle system in [[San Andreas]] is slightly different from [[GTA 3]] and [[Vice City]]. Almost all particle effects are stored in the <code>{{Dir|sa}}\models\effects.fxp</code> file. You can also attach particle systems to your models using the 3d Studio Max script by {{U|DexX}}, that works also for 2dfx {{GTAF|plain|261624|GTAForums topic}}. |
− | == | + | ==Mission Script== |
− | You can use the following | + | You can use the following [[opcode]]s to do stuff to your particles.<br> |
[[064B]] - Creates a particle at a location<br> | [[064B]] - Creates a particle at a location<br> | ||
[[064C]] - Makes the particle visible<br> | [[064C]] - Makes the particle visible<br> | ||
[[064E]] - Stops the particle<br> | [[064E]] - Stops the particle<br> | ||
− | [[064F]] - Releases the particle from memory<br> | + | [[064F]] - Releases the particle from memory and makes it visible.<br> |
[[0650]] - Deletes the particle with fade<br> | [[0650]] - Deletes the particle with fade<br> | ||
[[0669]] - Attaches a particle to an actor<br> | [[0669]] - Attaches a particle to an actor<br> | ||
Line 19: | Line 19: | ||
==List of Particles== | ==List of Particles== | ||
<center> | <center> | ||
− | + | <gallery caption="Particle effects" widths="150px" heights="150px" perrow="4"> | |
− | + | Image:Blood_heli.jpg|<b>blood_heli</b><br>Gush of blood | |
− | + | Image:Camflash.jpg|<b>camflash</b><br>Flash of a camera | |
− | + | Image:carwashspray.jpg|<b>carwashspray</b><br>Spray of a car wash | |
− | + | Image:cement.jpg|<b>cement</b><br>Stream of pouring cement (should be looped) | |
− | | blood_heli | + | Image:cloudfast.jpg|<b>cloudfast</b><br>Fast moving clouds (should be looped) |
− | + | Image:coke_puff.jpg|<b>coke_puff</b><br>Puff of coke spilling out | |
− | + | Image:coke_trail.jpg|<b>coke_trail</b><br>Trial of coke (should be looped) | |
− | + | Image:explosion_barrel.jpg|<b>explosion_barrel</b><br> | |
− | | camflash | + | Image:explosion_crate.jpg|<b>explosion_crate</b><br> |
− | + | Image:explosion_door.jpg|<b>explosion_door</b><br> | |
− | + | Image:explosion_fuel_car.jpg|<b>explosion_fuel_car</b><br> | |
− | + | Image:explosion_large.jpg|<b>explosion_large</b><br> | |
− | | carwashspray | + | </gallery> |
− | |||
− | |||
− | |||
− | | cement | ||
− | |||
− | |||
− | |||
− | | cloudfast | ||
− | |||
− | |||
− | |||
− | | coke_puff | ||
− | |||
− | | | ||
− | |||
</center> | </center> | ||
− | + | ==Sanny Builder example== | |
+ | That example creates an particle at player's location by pressing P. | ||
+ | <source lang="scm"> | ||
+ | {$CLEO .cs} | ||
− | + | 0000: NOP | |
− | + | ||
− | + | :NONAME_01 | |
− | + | 0001: wait 0 ms | |
− | + | if and | |
− | --> | + | 0256: player $PLAYER_CHAR defined |
+ | 0AB0: key_pressed 80 // P or p | ||
+ | 004D: jump_if_false @NONAME_01 | ||
+ | 04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR offset 0.0 5.0 1.0 //store player coords | ||
+ | 064B: 0@ = create_particle "explosion_large" at 1@ 2@ 3@ type 4 //create the particle | ||
+ | 064F: make_temp_particle_visible_and_remove_references 0@ //make the particle visible and remove references | ||
+ | wait 500 | ||
+ | 0002: jump @NONAME_01 </source> | ||
+ | |||
+ | ==Particles== | ||
+ | |||
+ | <source lang="scm"> | ||
+ | "blood_heli" bloody explosion | ||
+ | "boat_prop" a surf | ||
+ | "camflash" small flare | ||
+ | "carwashspray" steam, as on a carwash | ||
+ | "cement" cement | ||
+ | "cloudfast" fast clouds | ||
+ | "coke_puff" puff of a coke | ||
+ | "coke_trail" a pouring water | ||
+ | "cigarette_smoke" a smoke from a cigarette | ||
+ | "explosion_barrel" explosion and splinters of a box | ||
+ | "explosion_crate" explosion and splinters of the large box | ||
+ | "explosion_door" a smoke with sparks | ||
+ | "exhale" a small smoke | ||
+ | "explosion_fuel_car" explosion, as from the machine | ||
+ | "explosion_large" the large explosion | ||
+ | "explosion_medium" average explosion | ||
+ | "explosion_molotov" explosion, as from a movotov cocktail | ||
+ | "explosion_small" small explosion | ||
+ | "explosion_tiny" very small explosion | ||
+ | "extinguisher" foam of the fire extinguisher | ||
+ | "flame" small fire | ||
+ | "fire" fire | ||
+ | "fire_med" average fire | ||
+ | "fire_large" large fire | ||
+ | "flamethrower" fire of the flamethrower | ||
+ | "fire_bike" fire, as from a burning motorcycle | ||
+ | "fire_car" fire, as from the burning machine | ||
+ | "gunflash" as the bullet from a trunk takes off | ||
+ | "gunsmoke" a smoke from a gun | ||
+ | "insects" insects | ||
+ | "heli_dust" a dust, as from the helicopter | ||
+ | "jetpack" a jetpacks fire | ||
+ | "jetthrust" fire from the muffler of the machine, as during use of nitrogen | ||
+ | "nitro" nitro | ||
+ | "molotov_flame" fire from a Molotov Cocktail | ||
+ | "overheat_car" smoke from damaged car | ||
+ | "overheat_car_electric" wrecked electro-machine | ||
+ | "prt_boatsplash" foam | ||
+ | "prt_cardebris" splinters from a box | ||
+ | "prt_collisionsmoke" a dense white smoke | ||
+ | "prt_glass" a crashing glass | ||
+ | "prt_gunshell" shells | ||
+ | "prt_sand" sand, which was scattered | ||
+ | "prt_sand2" there is less sand, than in previous animation | ||
+ | "prt_smokeII_3_expand" - a grey smoke | ||
+ | "prt_smoke_huge" there is a lot of grey smoke | ||
+ | "prt_spark" of a spark | ||
+ | "prt_spark_2" the large sparks | ||
+ | "prt_splash" burst | ||
+ | "prt_wake" a wave | ||
+ | "prt_watersplash" sparks | ||
+ | "prt_wheeldirt" sparks from wheels of the car | ||
+ | "petrolcan" a jet | ||
+ | "puke" belch | ||
+ | "riot_smoke" there is a lot of smoke | ||
+ | "spraycan" spray | ||
+ | "smoke30lit" a smoke | ||
+ | "smoke30m" a rich smoke | ||
+ | "smoke50lit" more richer smoke | ||
+ | "shootlight" fireworks | ||
+ | "smoke_flare" fireworks | ||
+ | "tank_fire" a shot from the tank | ||
+ | "teargas" gas, as from gas grenade | ||
+ | "teargasAD" gas, as from small gas grenade | ||
+ | "tree_hit_fir" leaf falling | ||
+ | "tree_hit_palm" falling of pair large leafs | ||
+ | "vent" slowly dissipating a smoke | ||
+ | "vent2" practically too most | ||
+ | "water_hydrant" the large flow of water | ||
+ | "water_ripples" circles on water | ||
+ | "water_speed" the large sparks from water | ||
+ | "water_splash" small sparks from water | ||
+ | "water_splash_big" average sparks | ||
+ | "water_splsh_sml" sparks, only them it is not visible almost | ||
+ | "water_swim" small sparks at navigation | ||
+ | "waterfall_end" there is a lot of pair | ||
+ | "water_fnt_tme" the large flow of water | ||
+ | "water_fountain" water of a fountain | ||
+ | "wallbust" a disappearing heap pair | ||
+ | "WS_factorysmoke" smoke </source> | ||
+ | |||
+ | ==External link== | ||
+ | {{GTAF|304880}} – {{U|Jost_Vice}}'s tutorial on developing your own particle systems. | ||
+ | |||
+ | {{SA-navi}} | ||
+ | [[Category:Map Formats]][[Category:Mission Script]] |
Latest revision as of 10:12, 16 October 2016
A particle is an animation of moving textures to simulate fuzzy effects. The new particle system in San Andreas is slightly different from GTA 3 and Vice City. Almost all particle effects are stored in the .\models\effects.fxp
file. You can also attach particle systems to your models using the 3d Studio Max script by DexX, that works also for 2dfx GTAForums topic.
Mission Script
You can use the following opcodes to do stuff to your particles.
064B - Creates a particle at a location
064C - Makes the particle visible
064E - Stops the particle
064F - Releases the particle from memory and makes it visible.
0650 - Deletes the particle with fade
0669 - Attaches a particle to an actor
066A - Attaches a particle with rotation to an actor
066B - Attaches a particle to a vehicle
066C - Attaches a particle with rotation to a vehicle
066D - Attaches a particle to an object
066E - Attaches a particle with rotation to an object
0883 - Attaches a particle to an actor
0976 - Deletes a particle instantly
List of Particles
Sanny Builder example
That example creates an particle at player's location by pressing P.
{$CLEO .cs}
0000: NOP
:NONAME_01
0001: wait 0 ms
if and
0256: player $PLAYER_CHAR defined
0AB0: key_pressed 80 // P or p
004D: jump_if_false @NONAME_01
04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR offset 0.0 5.0 1.0 //store player coords
064B: 0@ = create_particle "explosion_large" at 1@ 2@ 3@ type 4 //create the particle
064F: make_temp_particle_visible_and_remove_references 0@ //make the particle visible and remove references
wait 500
0002: jump @NONAME_01
Particles
"blood_heli" bloody explosion
"boat_prop" a surf
"camflash" small flare
"carwashspray" steam, as on a carwash
"cement" cement
"cloudfast" fast clouds
"coke_puff" puff of a coke
"coke_trail" a pouring water
"cigarette_smoke" a smoke from a cigarette
"explosion_barrel" explosion and splinters of a box
"explosion_crate" explosion and splinters of the large box
"explosion_door" a smoke with sparks
"exhale" a small smoke
"explosion_fuel_car" explosion, as from the machine
"explosion_large" the large explosion
"explosion_medium" average explosion
"explosion_molotov" explosion, as from a movotov cocktail
"explosion_small" small explosion
"explosion_tiny" very small explosion
"extinguisher" foam of the fire extinguisher
"flame" small fire
"fire" fire
"fire_med" average fire
"fire_large" large fire
"flamethrower" fire of the flamethrower
"fire_bike" fire, as from a burning motorcycle
"fire_car" fire, as from the burning machine
"gunflash" as the bullet from a trunk takes off
"gunsmoke" a smoke from a gun
"insects" insects
"heli_dust" a dust, as from the helicopter
"jetpack" a jetpacks fire
"jetthrust" fire from the muffler of the machine, as during use of nitrogen
"nitro" nitro
"molotov_flame" fire from a Molotov Cocktail
"overheat_car" smoke from damaged car
"overheat_car_electric" wrecked electro-machine
"prt_boatsplash" foam
"prt_cardebris" splinters from a box
"prt_collisionsmoke" a dense white smoke
"prt_glass" a crashing glass
"prt_gunshell" shells
"prt_sand" sand, which was scattered
"prt_sand2" there is less sand, than in previous animation
"prt_smokeII_3_expand" - a grey smoke
"prt_smoke_huge" there is a lot of grey smoke
"prt_spark" of a spark
"prt_spark_2" the large sparks
"prt_splash" burst
"prt_wake" a wave
"prt_watersplash" sparks
"prt_wheeldirt" sparks from wheels of the car
"petrolcan" a jet
"puke" belch
"riot_smoke" there is a lot of smoke
"spraycan" spray
"smoke30lit" a smoke
"smoke30m" a rich smoke
"smoke50lit" more richer smoke
"shootlight" fireworks
"smoke_flare" fireworks
"tank_fire" a shot from the tank
"teargas" gas, as from gas grenade
"teargasAD" gas, as from small gas grenade
"tree_hit_fir" leaf falling
"tree_hit_palm" falling of pair large leafs
"vent" slowly dissipating a smoke
"vent2" practically too most
"water_hydrant" the large flow of water
"water_ripples" circles on water
"water_speed" the large sparks from water
"water_splash" small sparks from water
"water_splash_big" average sparks
"water_splsh_sml" sparks, only them it is not visible almost
"water_swim" small sparks at navigation
"waterfall_end" there is a lot of pair
"water_fnt_tme" the large flow of water
"water_fountain" water of a fountain
"wallbust" a disappearing heap pair
"WS_factorysmoke" smoke
External link
GTAForums topic – Jost_Vice's tutorial on developing your own particle systems.