Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Aplikacje Direct3D mogą osiągnąć wiele efektów specjalnych, stosując różne tekstury do pierwotnego w trakcie wielu przebiegów renderowania. Typowym terminem jest mieszanie tekstur wielopassowych. Typowym zastosowaniem do łączenia tekstur wieloprzepustowych jest emulowanie efektów złożonych modeli oświetlenia i cieniowania przez zastosowanie wielu kolorów z kilku różnych tekstur. Jedna z takich aplikacji jest nazywana mapowaniem światła. Aby uzyskać więcej informacji, zobacz Light Mapping with Textures (Direct3D 9).
Nuta
Niektóre urządzenia mogą stosować wiele tekstur do elementów pierwotnych w jednym przebiegu. Aby uzyskać szczegółowe informacje, zobacz Tekstury Blending (Direct3D 9).
Jeśli sprzęt użytkownika nie obsługuje mieszania wielu tekstur, aplikacja może używać łączenia tekstur wieloprzepustowych w celu osiągnięcia tych samych efektów wizualnych. Jednak aplikacja nie może utrzymać szybkości klatek, które są możliwe w przypadku korzystania z wielu mieszanek tekstur.
Aby wykonać mieszanie tekstur wielopassowych w aplikacji C/C++.
- Ustaw teksturę na etapie tekstury 0, wywołując metodę IDirect3DDevice9::SetTexture.
- Wybierz żądany kolor i argumenty łączenia alfa z IDirect3DDevice9::SetTextureStageState metody. Ustawienia domyślne są odpowiednie do łączenia tekstur wieloprzepustowych.
- Renderuj odpowiednie obiekty w scenie.
- Ustaw kolejną teksturę na etapie tekstury 0.
- Ustaw stany renderowania D3DRS_SRCBLEND i D3DRS_DESTBLEND, aby odpowiednio dostosować czynniki mieszane źródła i miejsca docelowego. System łączy nowe tekstury z istniejącymi pikselami na powierzchni docelowej renderowania zgodnie z tymi parametrami.
- Powtórz kroki 3, 4 i 5 z dowolną liczbą tekstur.
Tematy pokrewne