Efektit : funktiot

MAKEEMITTER


   KUVAUS

Luo parikkelilähteen koordinaatteihin (0,0). Partikkelilähteitä käytetään koristamaan peliä luomalla savua, kipinöitä, tulta tai säteilyä. Partikkelit ovat pieniä objekteja, joita tarvitaan paljon. Suurien määrien hallitseminen on paitsi hidasta myös sekavaa ja työlästä. Tämän takia CoolBasic hoitaa tämän puolestasi. Täysin konekieliset ja erittäin optimoidut rutiinit takaavat mahdollisimman nopean partikkelipäivityksen. Ja mikä parasta - ohjelmoijan ei tarvitse huolehtia juuri mistään sen jälkeen kun lähde on luotu! CoolBasic tekee kaiken puolestasi.

Näin voit tehdä raketin jälkeensä jättämän hienon savu-efektin:
Liimaa lähde objektiin (pitämällä sitä jatkuvasti samalla kohdalla). Aseta partikkelien nopeudeksi nolla, aseta animoitu savukuva ja anna painovoiman arvoksi nolla. Kun ammus räjähtää seinään, voidaan lähdekin tuhota. Samalla tapaa voit luoda esimerkiksi avaruusaluksen jälkipolttimen.

Partikkelilähde käyttäytyy kuin mikä tahansa objekti. Sitä voidaan liikuttaa ja kääntää normaaleilla objektikomennoilla. Sille voidaan lisäksi asettaa elämä, jonka jälkeen se tuhotaan automaattisesti. Jopa törmäys- ja poiminta-komennot toimivat lähteiden kanssa.

Voit poistaa partikkelilähteen komennolla DeleteObject.

Tälle funktiolle välitetään kaksi parametria: kuva ja eloaika. Eloaika on kokonaisluku, joka määrittää kuinka monta kertaa ruutu piirretään ennen kuin partikkeli häviää. Ei siis lähde, vaan lähteestä tullut partikkeli. Jos olet esimerkiksi rajoittanut pelisi toimimaan 40 kertaa sekunnissa (FrameLimit-komento), arvo 80 pitää partikkeleja elossa 2 sekuntia.

Partikkeleiden ominaisuuksia voi monipuolisesti säätää komennoilla ParticleEmission, ParticleMovement ja ParticleAnimation.

   KÄYTTÖ
MAKEEMITTER (kuvamuuttuja, eloaika)

  • kuvamuuttuja = Se muuttuja, mihin kuva ladattiin. Lähde suoltaa näitä kuvia.
  • eloaika = Kokonaisluku, kuinka monen ruudun piirron verran partikkelit ovat olemassa.

  • Katso myös: PARTICLEMOVEMENT, PARTICLEANIMATION, PARTICLEEMISSION

       ESIMERKKI
    FrameLimit 40

    img=LoadImage("Media\particle.bmp")

    par=MakeEmitter(img,120) 'lifetime for 3 seconds

    Repeat

        DrawScreen

    Forever

    <<TAKAISIN