Skip navigation

Fények, anyagok, árnyékok

Témakörök

Az előző példaprogramjaink nem voltak túl látványosak. Drótvázas, vagy csupa egyszínű lapokból felépülő felszínek nem adják jól vissza a 3D hatást. A kettő kombinációja már jobb, de mesterséges hatást kelt.

A valóságot jobban közelítő technika az, amikor fényeket modellezünk, a tárgyainkhoz pedig anyagjellemzőket rendelünk. A megjelenő tárgy lapjainak színe a fény és az anyag kölcsönhatásából alakul ki. Itt már számít többek között a fény színe, intenzitása, az anyag reagálása a fényre, csillogási képessége, valamint a fény beesési iránya a felszínre. Mint látni fogjuk, sokféle paramétert adhatunk meg és nem minden kombináció fog látványos eredményt adni, gyakorlat és tapasztalat kell hozzá.

A fény természetes velejárója az árnyék. Egyszerűnek tűnhet, de a gyakorlatban nagyon számításigényes a generálása, ezért külön gondoskodnunk kell a megfelelő beállításokról.

Az alábbi témaköröket érintjük.

Fényforrások

  • Ambiens (környezeti) fény
  • Pontfény
  • Reflektorfény
  • Irányfény (távoli fény)

Anyagjellemzők

  • Alap (egyszerű) anyag
  • Diffúz (Lambert árnyalással)
  • Spekuláris (Phong árnyalással)

Árnyékhatás beállítása

  • Teendők a renderelő, a fényforrások és az anyagok esetén.

A Three.js számos további, összetettebb lehetőséggel bír, mint például az átlátszóság, területi kiterjedéssel rendelkező fényforrások, illetve saját magunk is írhatunk kódot különféle fényhatások elérésére. Ezeket itt nem tárgyaljuk.