*   >> lukeminen koulutus Artikkelit >> science >> programming

Tutustuminen Irrlicht 3D-moottori - Lighting

Lataa demo ja lähdekoodi

TAKAISIN TUTORIAL INDEX

Viime opetusohjelmassa lisäsimme 3D-malli näyttöön. Koska ei ollut valoja perustettu, meidän piti poistaa valaistus mallista kokonaan, muuten se olisi ilmestynyt musta. Tässä opetusohjelmassa me lisäämme valon paikalle.

ApplicationManager.h /ApplicationManager.cpp

ApplicationManager saa kaksi uutta muuttujaa: valo 1 ja mainostaulu. Valo on piste kohtaus, joka on valonlähde. Se ei ole suoraa näkyvyyttä itse - valo on näkyvissä vain pinnalla 3D-mallin.

Jotta voimme nähdä, missä valo on kohtaus luomme mainostaulu, joka on tasainen suorakulmio että aina kasvot kamera, ja kiinnitä valon lapsena mainostaulu.

Kun kiinnität valoa lapsi mainostaulu valo siirtyy minne mainostaulu liikkuu. Tällainen vanhempi /lapsi kiinnitys on melko yleinen 3D moottoreissa, koska se mahdollistaa esineryhmän muutettava kerralla. Voit käyttää tätä liittää miekka pelaajia käsi esimerkiksi, ja sitten miekka olisi kiinni pelaaja kuin se liikuttaa.

Käynnistys toiminto teemme pienen muutoksen puhelun addCameraSceneNodeFPS toiminto.

Ninja 3D-malli on melko pieni, ja kamera liikkuu liian nopeasti suhteessa malliin. Joten tässä olemme ohittaa joitakin oletusparametrejä hidastaa kameran alas.

Lisäämme ninja 3D-mallin paikalle käyttämällä samaa koodia kuin viime opetusohjelma. Ainoa ero on, että nyt ei enää poistaa valaistus.

luo uusi mainostaulu kutsumalla ISceneManager addBillboardSceneNode toiminto. Jälleen ohittaa joitakin oletusparametrejä tehdä mainostaulu vähän pienempi, ja paremmin koko ninja 3D-mallin.


Vaadimme setMaterialType toiminto ja toimittaa EMT_TRANSPARENT_ADD_COLOR lippu osoittamaan, että värit tekstuurin määritetty mainostaulu lisätään paikalle, joka tehokkaasti tekee mustan osan tekstuuri läpinäkyvä.

setMaterialTexture toimintoa käytetään sitten antaa rakenne. Ensimmäinen parametri määrittelee tekstuuri kerros. Toimitamme 0 koska olemme määrittämällä tätä ensimmäinen (ja ainoa) rakenne. Toinen parametri on tekstuuri itse, joka tässä tapauksessa ladataan bittikarttatiedostoa.


Viimeinen asia mitä teemme on poistaa valaistus mainostaulu, aivan kuten teimme 3D-mallin viime opetusohjelma. Näin varmistetaan, että mainostaulu on esitetty kirkkaasti.

Nyt meidän on luotava valoa. Teemme tämän ISceneManager addLightSceneNode toiminto.

Ensimmäinen parametri on vanhempi kohtaus solmu valon. Toimitamme taulun kohtaus s

Page   <<       [1] [2] >>
Copyright © 2008 - 2016 lukeminen koulutus Artikkelit,https://koulutus.nmjjxx.com All rights reserved.