Rozpuszcza, zanika i machnięcia (Direct3D 9)
Coraz częściej aplikacje stosują efekty specjalne, które są często używane w filmach i filmach, takich jak rozpuszczone, machnięcia i zanikania.
W rozpuszczeniu jeden obraz jest stopniowo zastępowany przez inny w gładkiej sekwencji ramek. Mimo że Direct3D zapewnia metody stosowania mieszania wielu tekstur w celu osiągnięcia tego samego efektu, aplikacje, które używają buforu wzornika do rozpuszczania, mogą używać funkcji łączenia tekstur w celu innych efektów podczas ich rozpuszczania.
Gdy aplikacja wykonuje rozwiązanie, musi renderować dwa różne obrazy. Używa buforu wzornika do kontrolowania, które piksele z każdego obrazu są rysowane na powierzchni docelowej renderowania. Można zdefiniować serię masek wzorników i skopiować je do buforu wzornika na kolejnych ramkach. Alternatywnie można zdefiniować maskę wzornika podstawowego dla pierwszej ramki i zmienić ją przyrostowo.
Na początku rozpuszczenia aplikacja ustawia funkcję wzornika i maskę wzornika, aby większość pikseli z obrazu początkowego przeszła test wzornika. Większość pikseli z obrazu końcowego powinna zakończyć się niepowodzeniem testu wzornika. W kolejnych ramkach maska wzornika jest aktualizowana tak, aby mniej pikseli na obrazie początkowym zdało test. W miarę postępu ramek mniej i mniej pikseli na końcowym obrazie kończy się niepowodzeniem testu. W ten sposób aplikacja może wykonać rozpuszczenie przy użyciu dowolnego wzorca rozpuszczonego.
Zanikanie w lub zanikanie jest szczególnym przypadkiem rozpadu. W przypadku zanikania bufor wzornika jest używany do rozpuszczania się z czarnego lub białego obrazu do renderowania sceny 3D. Zanikanie jest przeciwieństwem, aplikacja zaczyna się od renderowania sceny 3D i rozpuszcza się w kolorze czarnym lub białym. Zanikanie można wykonać przy użyciu dowolnego wzorca, który chcesz zastosować.
Aplikacje Direct3D używają podobnej techniki przesuwania. Na przykład gdy aplikacja wykonuje przesunięcie od lewej do prawej, końcowy obraz wydaje się stopniowo przesuwać się w górnej części obrazu początkowego od lewej do prawej. Podobnie jak w przypadku rozpuszczania, należy zdefiniować serię masek wzorników, które są ładowane do buforu wzornika na kolejnych ramkach lub zmodyfikować maskę wzornika początkowego. Maski wzornika są używane do wyłączania zapisywania pikseli z obrazu początkowego i włączania zapisu pikseli z obrazu końcowego.
Przesunięcie jest nieco bardziej złożone niż rozpuszczenie, w przypadku którego aplikacja musi odczytywać piksele z obrazu końcowego w odwrotnej kolejności przesunięcia. Oznacza to, że jeśli przesunięcie przesuwa się od lewej do prawej, aplikacja musi odczytać piksele z obrazu końcowego od prawej do lewej.
Tematy pokrewne