Multipass Texture Blending (Direct3D 9)
A Direct3D-alkalmazások számos különleges hatást érhetnek el azáltal, hogy különböző textúrákat alkalmaznak egy primitívre több renderelési áthaladás során. Ennek gyakori kifejezése a multipass textúra keverése. A multipass textúra keverésének tipikus felhasználási célja az összetett világítási és árnyékolási modellek hatásainak emulálása több különböző anyagminta több színének alkalmazásával. Az egyik ilyen alkalmazást könnyű leképezésnek nevezzük. További információ: Világos leképezés textúrákkal (Direct3D 9).
Jegyzet
Egyes eszközök képesek több textúrát alkalmazni a primitívekre egyetlen lépésben. További információ: Textúrakeverés (Direct3D 9).
Ha a felhasználó hardvere nem támogatja a több anyagminta-keverést, az alkalmazás többutas textúra-keverést használhat ugyanazon vizuális effektusok eléréséhez. Az alkalmazás azonban nem tudja fenntartani a keretsebességeket, amelyek több textúra keverése esetén lehetségesek.
Multipass textúra keverése C/C++ alkalmazásban.
- Állítsa be a textúra 0. szakaszát a IDirect3DDevice9::SetTexture metódus meghívásával.
- Válassza ki a kívánt szín- és alfa-keverési argumentumokat és műveleteket az IDirect3DDevice9::SetTextureStageState metódussal. Az alapértelmezett beállítások jól illeszkednek a többirányú textúra keveréséhez.
- Renderelje a megfelelő objektumokat a jelenetben.
- Állítsa be a következő anyagmintát a 0. textúraszakaszban.
- Állítsa be a D3DRS_SRCBLEND és D3DRS_DESTBLEND renderelési állapotokat, hogy szükség szerint módosítsa a forrás- és célkeverési tényezőket. A rendszer ezeknek a paramétereknek megfelelően egyesíti az új textúrákat a renderelési célfelület meglévő képpontjaival.
- Ismételje meg a 3., 4. és 5. lépést annyi anyagmintával, amennyi szükséges.
Kapcsolódó témakörök