Šablony pro částicové efekty
Z Armed Assault nápověda
Úvod
V tomto malom tutoriále je uvedených niekoľko príkladov ako si jednoducho a efektne vytvoriť (a samozrejme aj upraviť) niekoľko dymových efektov, oheň atď.
Najskôr si v editore vytvorte jednotku na ktorej mieste sa bude vytvárať daný efekt. V našom prípade to bude napríklad tzv. Logická jednotka.
Pomenujte ju ako logika1.
Nasledujúce dva riadky potom vždy dopíšte na začiatok každého skriptu pre vytvorenie daného efektu. Takto zadefinujete skriptu polohu logickej jednotky s názvom logika1, pričom za ňu bude v skripte predaná lokálna premenná _OBJ a tak sa na jej pozícii vytvorí daný efekt.
_OBJ = _this; _PS = "#particlesource" createVehicleLocal position _OBJ;
Tento postup zopakujte aj pri ostatných skriptoch ak si to efekt vyžaduje (obsahuje dva alebo viac skriptov). Ďalšiu časť efektu chceme predsa vytvoriť na tom istom mieste.
Samotný skript potom spustíte napríklad pomocou zápisu do inicializačného políčka nejakého spínača:
logika1 exec "smoke.sqs"
- smoke.sqs je názov skriptu s daným vytvoreným efektom
| ! |
Pozor ! |
Download
Malá ukážka efektov v misii (formát *.pbo)
Obsahuje: sneženie, oheň s dymom, padajúce kamene a hustý dym: Download
Horiace vozidlo
Tento efekt sa skladá z troch druhov efektov. Jeden slúži na vytvorenie ohňa a dva na rôzne druhy dymu.
Oheň:
_PS1 setParticleCircle [0, [0, 0, 0]]; _PS1 setParticleRandom [0.2, [1, 1, 0], [0.5, 0.5, 0], 1, 0.5, [0, 0, 0, 0], 0, 0]; _PS1 setParticleParams [["\Ca\Data\ParticleEffects\FireAndSmokeAnim\SmokeAnim.p3d", 8, 2, 6], "", "Billboard", 1, 1, [0, 0, 0], [0, 0, 0.5], 1, 1, 0.9, 0.3, [1.5], [[1, 0.7, 0.7, 0.5]], [1], 0, 0, "", "", _obj]; _PS1 setDropInterval 0.03;
1. druh dymu:
_PS2 setParticleCircle [0, [0, 0, 0]]; _PS2 setParticleRandom [0, [0, 0, 0], [0.33, 0.33, 0], 0, 0.25, [0.05, 0.05, 0.05, 0.05], 0, 0]; _PS2 setParticleParams [["\Ca\Data\ParticleEffects\FireAndSmokeAnim\SmokeAnim.p3d", 8, 0, 1], "", "Billboard", 1, 10, [0, 0, 0.5], [0, 0, 2.9], 1, 1.275, 1, 0.066, [4, 5, 10, 10], [[0.3, 0.3, 0.3, 0.33], [0.4, 0.4, 0.4, 0.33], [0.2, 0.2, 0, 0]], [0, 1], 1, 0, "", "", _obj]; _PS2 setDropInterval 0.5;
2. druh dymu:
_PS3 setParticleCircle [0, [0, 0, 0]]; _PS3 setParticleRandom [0, [0, 0, 0], [0.5, 0.5, 0], 0, 0.25, [0.05, 0.05, 0.05, 0.05], 0, 0]; _PS3 setParticleParams [["\Ca\Data\ParticleEffects\FireAndSmokeAnim\SmokeAnim.p3d", 8, 3, 1], "", "Billboard", 1, 15, [0, 0, 0.5], [0, 0, 2.9], 1, 1.275, 1, 0.066, [4, 5, 10, 10], [[0.1, 0.1, 0.1, 0.75], [0.4, 0.4, 0.4, 0.5], [1, 1, 1, 0.2]], [0], 1, 0, "", "", _obj]; _PS3 setDropInterval 0.25;
Oheň
Tento efekt sa skladá z dvoch druhov efektov. Obidva sú iné druhy ohňa.
1. druh ohňa:
_PS setParticleCircle [0, [0, 0, 0]]; _PS setParticleRandom [0.2, [ 1, 1, 0], [2, 2, 1], 0.2, 0.2, [0, 0, 0, 0], 0, 0]; _PS setDropInterval 0.05; _PS setParticleParams [["\ca\data\ParticleEffects\FireAndSmokeAnim\FireAnim", 8, 2, 7], "", "Billboard", 1, 1, [random 0.5, random 0.5, 0], [0, 0, 2], 1, 1, 0.9, 0.3, [4,6],[[1,1,1,0.7],[1,1,1,0.5],[1,1,1,0]], [0,1], 1, 1, "", "", _obj];
2. druh ohňa:
_PS1 setParticleCircle [0, [0, 0, 0]]; _PS1 setParticleRandom [0.5, [1, 1, 0.4], [0, 0, 4], 0, 0.5, [0, 0, 0, 0], 0, 0]; _PS1 setDropInterval 0.01; _PS1 setParticleParams [["\ca\data\ParticleEffects\FireAndSmokeAnim\FireAnim", 8, 2, 1], "", "Billboard", 1, 2, [0, random 0.5, random 1], [0, 0, 1], 10, 1, 0.9, 0.3, [1],[[1,1,1,0.5],[1,1,1,0.2],[1,1,1,0]], [0.5,0.5,0], 1, 1, "", "", _obj];
Mrak
_PS setParticleCircle [0, [0, 0, 0]]; _PS setParticleRandom [0, [0, 0, 0], [0, 0, 0], 0, 0, [0, 0, 0, 0], 0, 0]; _PS setParticleParams [["\Ca\Data\ParticleEffects\FireAndSmokeAnim\SmokeAnim.p3d", 8, 3, 1], "", "Billboard", 1, 3.0141, [0, 0, 2], [0, 0, 0], 1, 1.275, 1, 0, [6, 6], [[1, 1, 1, 1], [1, 1, 1, 1], [1, 1, 1, 1]], [1], 1, 0, "", "", _OBJ]; _PS setDropInterval 3.0;
Hustý olejový dym - malý
_ps setParticleCircle [0, [0, 0, 0]]; _ps setParticleRandom [0, [0.25, 0.25, 0], [0.2, 0.2, 0], 0, 0.25, [0, 0, 0, 0.1], 0, 0]; _ps setParticleParams [["\Ca\Data\ParticleEffects\FireAndSmokeAnim\SmokeAnim.p3d", 8, 1, 8], "", "Billboard", 1, 8, [0, 0, 0], [0, 0, 1.5], 0, 10, 7.9, 0.066, [1, 3, 6], [[0.1, 0.1, 0.1, 1], [0.25, 0.25, 0.25, 0.5], [0.5, 0.5, 0.5, 0]], [0.125], 1, 0, "", "", _OBJ]; _ps setDropInterval 0.05;
Hustý olejový dym - stredný
_ps setParticleCircle [0, [0, 0, 0]]; _ps setParticleRandom [0, [0.25, 0.25, 0], [0.2, 0.2, 0], 0, 0.25, [0, 0, 0, 0.1], 0, 0]; _ps setParticleParams [["\Ca\Data\ParticleEffects\FireAndSmokeAnim\SmokeAnim.p3d", 8, 1, 8], "", "Billboard", 1, 8, [0, 0, 0], [0, 0, 2.5], 0, 10, 7.9, 0.066, [2, 6, 12], [[0.1, 0.1, 0.1, 1], [0.25, 0.25, 0.25, 0.5], [0.5, 0.5, 0.5, 0]], [0.125], 1, 0, "", "", _OBJ]; _ps setDropInterval 0.1;
Hustý olejový dym - veľký
_ps setParticleCircle [0, [0, 0, 0]]; _ps setParticleRandom [0, [0.5, 0.5, 0], [0.2, 0.2, 0], 0, 0.25, [0, 0, 0, 0.1], 0, 0]; _ps setParticleParams [["\Ca\Data\ParticleEffects\FireAndSmokeAnim\SmokeAnim.p3d", 8, 1, 6], "", "Billboard", 1, 8, [0, 0, 0], [0, 0, 4.5], 0, 10, 7.9, 0.5, [4, 12, 20], [[0.1, 0.1, 0.1, 0.8], [0.25, 0.25, 0.25, 0.5], [0.5, 0.5, 0.5, 0]], [0.125], 1, 0, "", "", _OBJ]; _ps setDropInterval 0.1;
Riedky dym - malý
_ps setParticleCircle [0, [0, 0, 0]]; _ps setParticleRandom [0, [0.25, 0.25, 0], [0.2, 0.2, 0], 0, 0.25, [0, 0, 0, 0.1], 0, 0]; _ps setParticleParams [["\Ca\Data\ParticleEffects\FireAndSmokeAnim\SmokeAnim.p3d", 8, 3, 1], "", "Billboard", 1, 8, [0, 0, 0], [0, 0, 1.5], 0, 10, 7.9, 0.066, [1, 3, 6], [[0.5, 0.5, 0.5, 0.15], [0.75, 0.75, 0.75, 0.075], [1, 1, 1, 0]], [0.125], 1, 0, "", "", _OBJ]; _ps setDropInterval 0.05;
Riedky dym - stredný
_ps setParticleCircle [0, [0, 0, 0]]; _ps setParticleRandom [0, [0.25, 0.25, 0], [0.2, 0.2, 0], 0, 0.25, [0, 0, 0, 0.1], 0, 0]; _ps setParticleParams [["\Ca\Data\ParticleEffects\FireAndSmokeAnim\SmokeAnim.p3d", 8, 3, 1], "", "Billboard", 1, 8, [0, 0, 0], [0, 0, 2.5], 0, 10, 7.9, 0.066, [2, 6, 12], [[0.5, 0.5, 0.5, 0.3], [0.75, 0.75, 0.75, 0.15], [1, 1, 1, 0]], [0.125], 1, 0, "", "", _OBJ]; _ps setDropInterval 0.1;
Riedky dym - veľký
_ps setParticleCircle [0, [0, 0, 0]]; _ps setParticleRandom [0, [0.5, 0.5, 0], [0.2, 0.2, 0], 0, 0.25, [0, 0, 0, 0.1], 0, 0]; _ps setParticleParams [["\Ca\Data\ParticleEffects\FireAndSmokeAnim\SmokeAnim.p3d", 8, 3, 1], "", "Billboard", 1, 8, [0, 0, 0], [0, 0, 4.5], 0, 10, 7.9, 0.5, [4, 12, 20], [[0.5, 0.5, 0.5, 0.5], [0.75, 0.75, 0.75, 0.25], [1, 1, 1, 0]], [0.125], 1, 0, "", "", _OBJ]; _ps setDropInterval 0.1;
Prirodzený dym - malý
Tento efekt sa skladá z dvoch druhov efektov. Obidva sú rôzne druhy dymu.
1. druh dymu:
_ps1 setParticleCircle [0, [0, 0, 0]]; _ps1 setParticleRandom [0, [0.25, 0.25, 0], [0.2, 0.2, 0], 0, 0.25, [0, 0, 0, 0.1], 0, 0]; _ps1 setParticleParams [["\Ca\Data\ParticleEffects\FireAndSmokeAnim\SmokeAnim.p3d", 8, 1, 8], "", "Billboard", 1, 8, [0, 0, 0], [0, 0, 1.5], 0, 10, 7.9, 0.066, [1, 3, 6], [[0.2, 0.2, 0.2, 0.45], [0.35, 0.35, 0.35, 0.225], [0.5, 0.5, 0.5, 0]], [0.125], 1, 0, "", "", _OBJ]; _ps1 setDropInterval 0.1;
2. druh dymu:
_ps2 setParticleCircle [0, [0, 0, 0]]; _ps2 setParticleRandom [0, [0.25, 0.25, 0], [0.2, 0.2, 0], 0, 0.25, [0, 0, 0, 0.1], 0, 0]; _ps2 setParticleParams [["\Ca\Data\ParticleEffects\FireAndSmokeAnim\SmokeAnim.p3d", 8, 3, 1], "", "Billboard", 1, 8, [0, 0, 0], [0, 0, 1.5], 0, 10, 7.9, 0.066, [1, 3, 6], [[0.33, 0.33, 0.33, 0.8], [0.66, 0.66, 0.66, 0.4], [1, 1, 1, 0]], [0.125], 1, 0, "", "", _OBJ]; _ps2 setDropInterval 0.1;
Prirodzený dym - stredný
Tento efekt sa skladá z dvoch druhov efektov. Obidva sú rôzne druhy dymu.
1. druh dymu:
_ps1 setParticleCircle [0, [0, 0, 0]]; _ps1 setParticleRandom [0, [0.25, 0.25, 0], [0.2, 0.2, 0], 0, 0.25, [0, 0, 0, 0.1], 0, 0]; _ps1 setParticleParams [["\Ca\Data\ParticleEffects\FireAndSmokeAnim\SmokeAnim.p3d", 8, 1, 8], "", "Billboard", 1, 8, [0, 0, 0], [0, 0, 2.5], 0, 10, 7.9, 0.066, [2, 6, 12], [[0.2, 0.2, 0.2, 0.3], [0.35, 0.35, 0.35, 0.2], [0.5, 0.5, 0.5, 0]], [0.125], 1, 0, "", "", _OBJ]; _ps1 setDropInterval 0.2;
2. druh dymu:
_ps2 setParticleCircle [0, [0, 0, 0]]; _ps2 setParticleRandom [0, [0.25, 0.25, 0], [0.2, 0.2, 0], 0, 0.25, [0, 0, 0, 0.1], 0, 0]; _ps2 setParticleParams [["\Ca\Data\ParticleEffects\FireAndSmokeAnim\SmokeAnim.p3d", 8, 3, 1], "", "Billboard", 1, 8, [0, 0, 0], [0, 0, 2.5], 0, 10, 7.9, 0.066, [2, 6, 12], [[0.33, 0.33, 0.33, 0.8], [0.66, 0.66, 0.66, 0.4], [1, 1, 1, 0]], [0.125], 1, 0, "", "", _OBJ]; _ps2 setDropInterval 0.2;
Prirodzený dym - veľký
Tento efekt sa skladá z dvoch druhov efektov. Obidva sú rôzne druhy dymu.
1. druh dymu:
_ps1 setParticleCircle [0, [0, 0, 0]]; _ps1 setParticleRandom [0, [0.4, 0.4, 0], [0.4, 0.4, 0], 0, 0.25, [0, 0, 0, 0.1], 0, 0]; _ps1 setParticleParams [["\ca\data\particleeffects\fireandsmokeanim\smokeanim.p3d", 8, 1, 6], "", "billboard", 1, 8, [0, 0, 0], [0, 0, 4.5], 0, 10, 7.9, 0.5, [4, 12, 20], [[0.2, 0.2, 0.2, 0.3], [0.35, 0.35, 0.35, 0.2], [0.5, 0.5, 0.5, 0]], [0.125], 1, 0, "", "", _OBJ]; _ps1 setDropInterval 0.2;
2. druh dymu:
_ps2 setParticleCircle [0, [0, 0, 0]]; _ps2 setParticleRandom [0, [0.4, 0.4, 0], [0.4, 0.4, 0], 0, 0.25, [0, 0, 0, 0.1], 0, 0]; _ps2 setParticleParams [["\ca\data\particleeffects\fireandsmokeanim\smokeanim.p3d", 8, 3, 1], "", "billboard", 1, 8, [0, 0, 0], [0, 0, 4.5], 0, 10, 7.9, 0.5, [4, 12, 20], [[0.33, 0.33, 0.33, 0.8], [0.66, 0.66, 0.66, 0.4], [1, 1, 1, 0]], [0.125], 1, 0, "", "", _OBJ]; _ps2 setDropInterval 0.2;
Kamenný dážď
_PS setParticleCircle [0, [0, 0, 0]]; _PS setParticleRandom [0, [10, 10, 0], [0.25, 0.25, 0], 0, 1.5, [0, 0, 0, 0], 0, 0]; _PS setParticleParams [["\Ca\Data\ParticleEffects\Pstone\Pstone.p3d", 8, 3, 1], "", "SpaceObject", 1, 10, [0, 0, 30], [0, 0, -2], 1, 10, 1, 0.2, [2, 2], [[1, 1, 1 ,1], [1, 1, 1, 1], [1, 1, 1, 1]], [0, 1], 1, 0, "", "", _OBJ]; _PS setDropInterval 0.04;
Sneh
_PS setParticleCircle [0.0, [0, 0, 0]]; _PS setParticleRandom [0, [30, 30, 15], [0, 0, 0], 0, 0.5, [0, 0, 0, 0.1], 0, 0]; _PS setParticleParams ["\Ca\Data\cl_water", "", "Billboard", 1, 7, [0,0,0], [0,0,0], 1, 0.000001, 0, 1.4, [0.05,0.05], [ [1,1,1,1] ], [0,1], 1.2, 1.2, "", "", _OBJ]; _PS setDropInterval 0.001;

