Oprogramowanie

Artykuł
Paweł Pilarczyk, Czwartek, 7 października 2004, 15:55
Kopiemy nieco głębiej
Jak już wspomnieliśmy na poprzedniej stronie artykułu, wszystkie operacje transformacji geometrycznych, a także operacje na punktach obrazu (kolorowanie pikseli) przeprowadzane są przez programowalne jednostki cieniowania wierzchołków i pikseli, dla których kod kompilowany jest z programów napisanych w języku HLSL. To tylko jedna z niewielu nowości, jakie wnosi 3DMark05.
Kolejną jest niezwykle intensywne operowanie dynamicznymi cieniami. Cienie pojawiły się już w 3DMarku2001, gdzie generowane były dzięki projekcyjnym mapom cieni. Metoda taka jest stosunkowo prosta w implementacji i wykorzystywana przez wiele obecnych gier. Niestety jej dużym ograniczeniem jest to, że obiekt nie może rzucać cieni sam na siebie.
W 3DMark03 stosowano cienie szablonowe, które umożliwiają już rzucanie cieni przez obiekty na siebie. Niestety cienie szablonowe stanowią bardzo duże obciążenie dla procesora i konsumują potężną część współczynnika wypełniania układu graficznego.
3DMark05, dla odmiany, wykorzystuje zupełnie inną metodę generowania cieni. Tym razem tworzone są one dzięki perspektywicznym mapom cieni (Perspective Shadow Maps, PSM). O algorytmach tworzenia cieni PSM przeczytać możecie tutaj oraz tutaj. W przypadku kierunkowych źródeł światła wykorzystywana jest mapa głębi o rozmiarach 2048x2048, zapisana w formacie R32F. W przypadku układów graficznych, które sprzętowo wspierają szablonowe tekstury głębi (Depth Stencil Textures, DST), wykorzystywana jest mapa formatu D24X8.
Cienie PSM w akcji
Dla punktowych źródeł światła jako mapa głębokości używana jest mapa sześcienna 512x512x6 zapisana w formacie R32F.
Mapy głębokości konsumują bardzo dużą część współczynnika wypełniania, w efekcie czego 3DMark05 jest mniej czuły na zmianę rozdzielczości, niż poprzednie wersje programu.
Najbardziej skomplikowaną sceną dla cieni PSM jest trzeci test podstawowy w 3DMark05. Niestety w jego przypadku można zaobserwować artefakty na krawędziach cieni. Nie jest to wina ani samego programu, ani sterowników kart graficznych. Po prostu rozdzielczość mapy głębi jest zbyt niska. Gdyby ją zwiększyć, wydajność w teście spadłaby jeszcze bardziej. Dlatego twórcy 3DMark05 poszli na kompromis: dobrali rozmiar mapy tak, by generowana animacja była możliwie najbardziej płynna, a powstałe artefakty możliwie najmniej widoczne.
Mapy głębi próbkowane są metodą procentowo najbliższego filtrowania (Percentage Closest Filtering, PCF). Jeśli układ graficzny wspiera tekstury DST i sprzętowe filtrowanie PCF, z mapy głębi pobierana jest jedna próbka filtrowana dwuliniowo. W przypadku układów nie wspierających sprzętowo DST pobierane są cztery próbki filtrowane punktowo. Obie metody generują obraz minimalnie różniący się od siebie, zwłaszcza w obrębie cieni. Filtrowanie dwuliniowe jest lepszej jakości niż filtrowanie punktowe, chociaż w niektórych wypadkach to ostatnie pozwala uzyskać lepszy obraz. Wykażemy to w dalszej części artykułu.
Oczywiście powstaje pytanie, czy sprawiedliwe jest porównywanie ze sobą kart graficznych wspierających sprzętowo DST i tych, które tekstur w tym formacie nie obsługują. Wszak uzyskany obraz minimalnie się od siebie różni. Twórcy 3DMarka postanowili jednak użyć DST z racji faktu, że kilkunastu największych producentów gier już wykorzystuje lub zamierza wykorzystać DST w swoich najnowszych tytułach przy dynamicznym generowaniu cieni.
3DMark05 umożliwia wyłączenie funkcji DST, jeśli zamierzamy porównywać karty pracujące dokładnie w takich samych warunkach. Wpływ DST na wydajność sprawdzimy w niniejszym artykule.
Kompresja tekstur
Wszystkie mapy koloru kompresowane są w formacie DXT1. Mapy przezroczystości zapisywane są w formacie DXT3, a mapy normalne - w formacie DXT5. Szkoda jednak, że 3DMark05 nie wykorzystuje metody kompresji 3Dc - chociażby w którymś z oddzielnych testów (nie wpływających na wynik końcowy programu). Twórcy programu tłumaczą się jednak, że funkcji tej nie użyli celowo, bowiem stanowi unikalną cechę układów graficznych tylko jednego producenta (ATI). Zapewniają, że jeśli wsparcie dla 3Dc pojawi się w układach firmy NVIDIA, kolejna wersja 3DMarka na pewno będzie z tej funkcji korzystała.
Jak już wspomnieliśmy na poprzedniej stronie artykułu, wszystkie operacje transformacji geometrycznych, a także operacje na punktach obrazu (kolorowanie pikseli) przeprowadzane są przez programowalne jednostki cieniowania wierzchołków i pikseli, dla których kod kompilowany jest z programów napisanych w języku HLSL. To tylko jedna z niewielu nowości, jakie wnosi 3DMark05.
Kolejną jest niezwykle intensywne operowanie dynamicznymi cieniami. Cienie pojawiły się już w 3DMarku2001, gdzie generowane były dzięki projekcyjnym mapom cieni. Metoda taka jest stosunkowo prosta w implementacji i wykorzystywana przez wiele obecnych gier. Niestety jej dużym ograniczeniem jest to, że obiekt nie może rzucać cieni sam na siebie.
W 3DMark03 stosowano cienie szablonowe, które umożliwiają już rzucanie cieni przez obiekty na siebie. Niestety cienie szablonowe stanowią bardzo duże obciążenie dla procesora i konsumują potężną część współczynnika wypełniania układu graficznego.
3DMark05, dla odmiany, wykorzystuje zupełnie inną metodę generowania cieni. Tym razem tworzone są one dzięki perspektywicznym mapom cieni (Perspective Shadow Maps, PSM). O algorytmach tworzenia cieni PSM przeczytać możecie tutaj oraz tutaj. W przypadku kierunkowych źródeł światła wykorzystywana jest mapa głębi o rozmiarach 2048x2048, zapisana w formacie R32F. W przypadku układów graficznych, które sprzętowo wspierają szablonowe tekstury głębi (Depth Stencil Textures, DST), wykorzystywana jest mapa formatu D24X8.
Cienie PSM w akcji
Dla punktowych źródeł światła jako mapa głębokości używana jest mapa sześcienna 512x512x6 zapisana w formacie R32F.
Mapy głębokości konsumują bardzo dużą część współczynnika wypełniania, w efekcie czego 3DMark05 jest mniej czuły na zmianę rozdzielczości, niż poprzednie wersje programu.
Najbardziej skomplikowaną sceną dla cieni PSM jest trzeci test podstawowy w 3DMark05. Niestety w jego przypadku można zaobserwować artefakty na krawędziach cieni. Nie jest to wina ani samego programu, ani sterowników kart graficznych. Po prostu rozdzielczość mapy głębi jest zbyt niska. Gdyby ją zwiększyć, wydajność w teście spadłaby jeszcze bardziej. Dlatego twórcy 3DMark05 poszli na kompromis: dobrali rozmiar mapy tak, by generowana animacja była możliwie najbardziej płynna, a powstałe artefakty możliwie najmniej widoczne.
Mapy głębi próbkowane są metodą procentowo najbliższego filtrowania (Percentage Closest Filtering, PCF). Jeśli układ graficzny wspiera tekstury DST i sprzętowe filtrowanie PCF, z mapy głębi pobierana jest jedna próbka filtrowana dwuliniowo. W przypadku układów nie wspierających sprzętowo DST pobierane są cztery próbki filtrowane punktowo. Obie metody generują obraz minimalnie różniący się od siebie, zwłaszcza w obrębie cieni. Filtrowanie dwuliniowe jest lepszej jakości niż filtrowanie punktowe, chociaż w niektórych wypadkach to ostatnie pozwala uzyskać lepszy obraz. Wykażemy to w dalszej części artykułu.
Oczywiście powstaje pytanie, czy sprawiedliwe jest porównywanie ze sobą kart graficznych wspierających sprzętowo DST i tych, które tekstur w tym formacie nie obsługują. Wszak uzyskany obraz minimalnie się od siebie różni. Twórcy 3DMarka postanowili jednak użyć DST z racji faktu, że kilkunastu największych producentów gier już wykorzystuje lub zamierza wykorzystać DST w swoich najnowszych tytułach przy dynamicznym generowaniu cieni.
3DMark05 umożliwia wyłączenie funkcji DST, jeśli zamierzamy porównywać karty pracujące dokładnie w takich samych warunkach. Wpływ DST na wydajność sprawdzimy w niniejszym artykule.
Kompresja tekstur
Wszystkie mapy koloru kompresowane są w formacie DXT1. Mapy przezroczystości zapisywane są w formacie DXT3, a mapy normalne - w formacie DXT5. Szkoda jednak, że 3DMark05 nie wykorzystuje metody kompresji 3Dc - chociażby w którymś z oddzielnych testów (nie wpływających na wynik końcowy programu). Twórcy programu tłumaczą się jednak, że funkcji tej nie użyli celowo, bowiem stanowi unikalną cechę układów graficznych tylko jednego producenta (ATI). Zapewniają, że jeśli wsparcie dla 3Dc pojawi się w układach firmy NVIDIA, kolejna wersja 3DMarka na pewno będzie z tej funkcji korzystała.
Spis treści
- 1.Wstęp
- 2.Kopiemy nieco głębiej
- 3.Składniki programu
- 4.Składniki - ciąg dalszy
- 5.Testy dodatkowe
- 6.Ustawienia programu
- 7.Testy i analiza wyników
- 8.Porównanie wydajności kart graficznych
- 9.Skalowanie z rozdzielczością
- 10.Wpływ sterowników na wyniki
- 11.Sterowniki a wydajność w grach
- 12.Czy Shader Model 3.0 coś daje?
- 13.Wygładzanie krawędzi i filtrowanie anizotropowe
- 14.Dlaczego GeForce FX są takie wolne?
- 15.Podsumowanie
Ocena artykułu:
Brak ocen
Zaloguj się, by móc oceniać
Artykuły spokrewnione
- Szyfrowanie danych, czyli nie samym TrueCryptem człowiek żyje 45
- Bezpłatna domowa obróbka wideo, czyli jak sobie poradzić w gąszczu formatów i urządzeń odtwarzających filmy 28
- Microsoft Office:mac 2011 – pakiet inny, niż mogłoby się wydawać 30
- Skuteczne usuwanie plików 107
- G Data InternetSecurity 2011 – test 61
- Odzyskiwanie danych – test 10 programów 53
- Bezpieczna optymalizacja Windows 136
- ABBYY FineReader 10 Home Edition – program do optycznego rozpoznawania tekstu (OCR) 29
- 3DMark 11 – pierwsze spojrzenie. Czy to nowa jakość testowania? 96
- Bezpieczna optymalizacja Windows 136
- Szyfrowanie danych, czyli nie samym TrueCryptem człowiek żyje 45
- Odzyskiwanie danych – test 10 programów 53
- Skuteczne usuwanie plików 107
- G Data InternetSecurity 2011 – test 61
- Microsoft Office:mac 2011 – pakiet inny, niż mogłoby się wydawać 30
- Bezpłatna domowa obróbka wideo, czyli jak sobie poradzić w gąszczu formatów i urządzeń odtwarzających filmy 28
- Odzyskiwanie danych – test 10 programów 53
- Bezpłatna domowa obróbka wideo, czyli jak sobie poradzić w gąszczu formatów i urządzeń odtwarzających filmy 28
- Szyfrowanie danych, czyli nie samym TrueCryptem człowiek żyje 45
- Bezpieczna optymalizacja Windows 136
- Microsoft Office:mac 2011 – pakiet inny, niż mogłoby się wydawać 30
- Skuteczne usuwanie plików 107
- G Data InternetSecurity 2011 – test 61
Aktualności spokrewnione
- "Windows 8" w kompilacji 8225 - wersja Consumer Preview? 17
- Windows zawiesił pracę aplikacji? O to chodziło 30
- Jakie aplikacje Metro pojawią się w systemie Windows 8 Consumer Preview? 5
- Windows 8 Consumer Preview ujrzy światło dzienne na samym końcu miesiąca 13
- Internet Explorer 9 w wersji dla dzieci 7
- Przeglądarka Google Chrome - teraz także dla Androida 16
- Nowe zrzuty ekranu z systemu "Windows 8" 39
- Windows Phone 8 jednak bez jądra NT? 32
- Beta Firefox 11 dostępna 19
- Microsoft ujawnia informacje na temat Windows Phone 8 55
- Nowy Skype dla Windows z FullHD, ekranem dla wielu i Facebookiem 34
- Nowe zrzuty ekranu z systemu "Windows 8" 39
- Gratka dla użytkowników Dropboksa – nawet 5 gigabajtów darmowego miejsca za pomoc w testowaniu bety 30
- Beta Firefox 11 dostępna 19
- Windows zawiesił pracę aplikacji? O to chodziło 30
- Internet Explorer 9 w wersji dla dzieci 7
- Windows Phone 8 jednak bez jądra NT? 32
- Przeglądarka Google Chrome - teraz także dla Androida 16
- Przeglądarka Google Chrome - teraz także dla Androida 16
- "Windows 8" w kompilacji 8225 - wersja Consumer Preview? 17
- Jakie aplikacje Metro pojawią się w systemie Windows 8 Consumer Preview? 5
- Nowy Skype dla Windows z FullHD, ekranem dla wielu i Facebookiem 34
- Gratka dla użytkowników Dropboksa – nawet 5 gigabajtów darmowego miejsca za pomoc w testowaniu bety 30
- Microsoft ujawnia informacje na temat Windows Phone 8 55
- Windows zawiesił pracę aplikacji? O to chodziło 30
- Windows Phone 8 jednak bez jądra NT? 32
- Beta Firefox 11 dostępna 19
Informacje prasowe
- Google Bouncer – sposób na ostateczne rozprawienie się ze szkodliwymi programami w Android Markecie? 0
- JUŻ JEST AIWI MOTION DETECTOR KOZUMI W POLSCE! Dostępny tylko w ACTION! Sprawdź już dziś! 2
- Podróże z kamerą w samochodzie 1
- ZyNOS 4.0: nowe certyfikowane oprogramowanie IPv6 do przełączników ZyXELa 0
- Brennestuhl: domowy sprzęt elektryczny na wyciągnięcie ręki 1
- Niezależny test programów antywirusowych - dostajesz to, za co płacisz 2
- Komputronik Pro-DH600: kompaktowe desktopy dla firm 3
- Legendarne etui G-Form do tabletów na polskim rynku 5
- Genius na CES 2012 4
- Trojany kradnące dane bankowe atakują tysiące komputerów każdego dnia 0
- Xavax: tańsze ogrzewanie domu przez Internet 6
- Tablety Lark FreeMe: tak tanio jeszcze nie było 2
- Atak phishingowy na użytkowników Allegro - rzekome zwolnienie z prowizji 2
- Polska premiera kart Radeon HD 7950: Asus, HIS, Gigabyte 2
- 2011 - dobry rok dla graczy sponsorowanych przez SteelSeries. 2012 zapowiada się równie dobrze... 2
O autorze
Tagi
Forum
Ilość odpowiedzi
- 54If You See Something, Film Something czyli brutalność policji w USA00:14 | BlackBishop
- 0[vid] Sesja na zaporożu00:14 | Ticket2Hell
- 2It’s Not My Fault That I’m Not Popular!00:13 | JustEvil
- 0Problem z Vertex 3D Radeon HD 6870X2 2GB00:12 | Actrim
- 3078World of Tanks00:12 | JustEvil
- 28Polskie sklepy z częściami00:12 | RayvenPL
- 2Jaka cicha mysza do grania ?00:12 | Mr. 3
- 1Asus 1215 bios haslo00:11 | romo
- 0EK Water Blocks EK-FC GTX 470 Plexi Nickel00:10 | KamraK85
- 2434Battlefield 300:07 | Jaycob
Ilość odpowiedzi
- 3078World of Tanks00:12 | JustEvil
- 2434Battlefield 300:07 | Jaycob
- 24233Wszystko na temat Playstation 300:06 | Singularity
- 3258FIFA 1200:04 | Cödename
- 206i5 2500k czy fx 812023:59 | Xender
- 197Zakaz sprzedaży gry? PEGI 18+23:51 | Vulc
- 3559Wspólne zakupy PSS23:48 | piteX2
- 2669AMD Radeon HD7000 Series - oficjalny temat23:38 | Chise
- 191Głosujemy na PO23:35 | x123x
- 26672Battlefield 323:33 | T_G
Podręczna baza firm
Facebook


