Huom! Nämä wikisivut ovat osittain vielä työn alla, osa sisällöstä saattaa olla puutteellista. Ongelmakohtien viereen voit jättää kommentin, yliopiston käyttäjät myös pystyvät (ja saavat) muokata sivuja.
Jypelin käyttöohjeet » Miten peliin saa efektejä?
Jotta saisit efektit käyttöön peliisi, tulee sinulla olla seuraava using-rivi kooditiedostosi alussa:
using Jypeli.Effects;
1. Yleistä efekteistä
Jotta ymmärtäisit kuinka efektit toimivat ja kuinka niitä luodaan Jypelissä, tulee sinun tietää muutamia seikkoja efekteistä.
- Jokainen efekti joka pelissä luodaan, kuuluu johonkin efektijärjestelmään Yksi efekti koostuu aina niin sanotuista partikkeleista.
2. Räjähdys
Jokainen erilainen efekti käyttää sille tarkoitettua järjestelmää. Räjähdysefektillä tuon järjestelmän nimi on ExplosionSystem
. Jotta voisit luoda räjähdyksiä, sinun täytyy kirjoittaa seuraavat rivit koodiin
Edellä oleva koodi antaisi seuraavanlaisen räjähdyksen:
Huomaa erityisesti seuraava rivi.
rajahdys.AddEffect(x, y, pMaara);
Tämä rivi lisää halutun efektin peliin, tässä tapauksessa räjähdyksen. Parametreista:
- x ja y-parametrit kertovat efektin x ja y-koordinaatit, eli paikan. pMaara-parametri kertoo kuinka monta partikkelia luotava efekti käyttää. Yhdellä järjestelmällä voidaan tehdä monta räjähdystä, ja kaikilla räjähdyksillä yhdessä on käytössä järjestelmän pMax kappaletta partikkeleita käytössään. Esim. jos tehdään ExplosionSystem rajahdys jonka partikkeleiden maksimi on 50, ja lisätään 3 räjähdystä, jossa kussakin 20 partikkelia, niin partikkelit "loppuvat kesken", ja silloin partikkeleita aletaan tuhoamaan vanhemmasta päästä. (Eli ensin luodut partikkelit tuhotaan ensin.)
2.1 Räjähdyksen mukauttaminen
Räjähdyksellä on paljon ominaisuuksia, joilla voi muokata räjähdyksen ulkonäköä haluamakseen. Tässä niistä muutama.
Ominaisuus T | yyppi m | erkitys S | elitys |
---|---|---|---|
MinLifeTime d | ouble a | ika sekunteina Ef | ektin partikkelin lyhin mahdollinen elinaika. |
MaxLifeTime d | ouble a | ika sekunteina Ef | ektin partikkelin pisin mahdollinen elinaika. |
MinVelocity d | ouble Pi | enin nopeus, jo | ka efektin partikkelilla voi olla. |
MaxVelocity d | ouble Su | urin nopeus, jo | ka efektin partikkelilla voi olla. |
MinScale | double P | ienin skaalaus j | oka efektin partikkeleilla voi olla. (Luku 1 tarkoittaa että partikkelin koko on tekstuurin koko.) |
MaxScale | double S | uurin skaalaus j | oka efektin partikkeleilla voi olla. |
MinRotationSpeed | double P | ienin pyörimisnopeus j | oka efektin partikkelilla voi olla. |
MaxRotationSpeed | double S | uurin pyörimisnopeus j | oka efektin partikkelilla voi olla. |
2.2 Sopivien ominaisuusarvojen etsiminen
Räjähdyksen arvoja voit kokeilla yllä olevassa esimerkissä vaihtelemalla arvoja tai lisäämällä uusia parametreja.
2.3 Räjähdys toisella tavalla
3. Liekki
Liekkiefekti käyttää Flame
nimistä efektijärjestelmää. Liekin voisi esimerkiksi luoda seuraavalla tavalla:
Kuten räjähdyksessäkin, tämä rivi alustaa uuden liekkijärjestelmän, joka huolehtii liekin piirtämisestä ja päivittämisestä.
- kuva-parametri määrittää mitä kuvaa liekin hiukkaset käyttävät.
- Huomaa että liekki on "jatkuva" efekti, joten sille ei tarvitse antaa hiukkamäärää.
Add(liekki);
Kuten räjähdyksessäkin, tämä rivi lisää liekkijärjestelmän peliin, mutta toisin kuin räjähdysjärjestelmä, tämä on välittömästi toiminnassa.
3.1 Liekin mukauttaminen
Liekillä on samat muokkausmahdollisuudet kuin räjähdykselläkin. Joitain hyödyllisiä ominaisuuksia voi olla mm.
MaxAngleChange
, joka määrittää kuinka "leveälle" liekki leviää.Min
- jaMaxLifeTime
, kuinka korkealle liekki nousee.Min
- jaMaxVelocity
, kuinka nopeasti liekin hiukkaset liikkuvat
4. Savu
Valmiin savuefektin saa luotua Smoke
-efektin avulla.
Savu käyttäytyy hyvin samalla tavalla kuin tuli, mutta sille Jypelistä löytyy valmis kuva.
Smoke savu = new Smoke();
Add(savu);
Omasta kuvasta luotu savuefekti luodaan antamalla uudelle savulle parametrina kuva ja savun leveys.
Smoke savu = new Smoke(savuHiukkasenKuva, 10);
Ulomman savuhiukkasen kuvan voi asettaa erikseen:
savu.OuterParticleImage = ulommanSavuHiukkasenKuva;
Savuefektillä on lisäksi monia samoja ominaisuuksia kuin muillakin efekteillä. Ominaisuuksien arvoja muuttamalla voi savusta muokata juuri mieleisensä.
5. Tuuli
Efektien käyttäytymiseen voi myös vaikuttaa tuulen avulla. Tuuli vaikuttaa ainoastaan efekteihin, ei mihinkään muuhun.
Tuulen asettaminen onnistuu samalla tavalla kuin painovoiman:
Esimerkki tuulesta aiemman tuliefektin kanssa:
These are the current permissions for this document; please modify if needed. You can always modify these permissions from the manage page.