Tag: directx

Entries for tag "directx", ordered from most recent. Entry count: 61.

Uwaga! Informacje na tej stronie mają ponad 5 lat. Nadal je udostępniam, ale prawdopodobnie nie odzwierciedlają one mojej aktualnej wiedzy ani przekonań.

Pages: > 1 ... 6 7 8

# Wielbłądy

22:28
Sun
11
Mar 2007

Spędziłem wczoraj pół dnia na walce z dwoma wyjątkowo wrednymi błędami. Jednym z nich był błędny odblask specular - latał po powierzchni bez ładu i składu mimo że siatka była dobra i wzory na obliczenia też. Okazało się, że wektorów przekazywanych do pixel shadera, takich jak wektor kierunku do światła czy wektor połówkowy, nie należy w vertex shaderze normalizować. Heh, kto by na to wpadł nie wiedząc o tym wcześniej?

Drugi błąd sprawiał, że w pewnych bliżej nieokreślonych warunkach (ustawienia trybu graficznego, ilość renderowanej geometrii) niektóre obiekty znikały albo straszliwie migały pokazując się lub nie pokazując w poszczególnych klatkach. Najwidoczniej sterownik/karta nie czekała na opróżnienie kolejki przed zaprezentowniem danej klatki. Pomogło użycie IDirect3DQuery9 typu D3DQUERYTYPE_EVENT lub też - bardziej radykalnie - blokowanie i odblokowanie back buffera przed wywołaniem Present.

Tego rodzaju problemy i ich pokonywania (samemu czy z czyjąś pomocą - pozdro Krzysiek K.!) sprawiają, że takie programowanie wzbudza szeroki wachlarz skrajnych emocji. Podłoże matematyczne okazuje się być tylko podstawą i jego zrozumienie nie gwarantuje, że wszystko zadziała dobrze. A przecież na tym nie koniec - na jeszcze wyższym poziomie czeka problem sensownego zorganizowania całego programu, żeby to z czego się składa było jakoś poukładane, a nie tworzyło wielkiej kuli błota.

Comments | #rendering #directx Share

# Fixed Pipeline Lighting Demo

23:52
Wed
07
Feb 2007

Fixed Pipeline Lighting Demo to moja najnowsza produkcja. Właściwie nic konkretnego, a jedynie pokaz aktualnego kodu, który udostępniam z prośbą o przetestowanie. Chcę się przekonać, czy zgodnie z założeniami zadziała także na starym sprzęcie klasy GeForce 2, GeForce 3, GeForce 4 MX i Ti, ich odpowiednikach firmy ATI czy na zintegrowanych, laptopowych intelach - słowem na kartach, które nie mają Vertex Shader 2.0. Po pobraniu dema proszę zapoznać się z plikiem Readme.txt.

Przy okazji: Wygląda na to, że po chwilowej awarii mojego konta (zamiast strony było napisane, że konto jest zawieszone) strona przestała działać tak wolno jak to było od pewnego czasu i teraz działa już bardzo sprawnie.

Comments | #rendering #productions #directx Share

# IDirect3DQuery9

20:05
Sun
14
Jan 2007

Dzisiaj tych wszystkich niekoniecznie początkujących którzy używają Direct3D chciałem zainteresować zapytaniami - queries. Są to zasoby tworzone metodą CreateQuery urządzenia D3D. Reprezentują zapytania zadawane do karty graficznej i wykonywane w sposób asynchroniczny. Wywołujemy takiemu zapytaniu Issue(D3DISSUE_BEGIN) (nie wszystkie tego wymagają), rysujemy coś, wywołujemy Issue(D3DISSUE_END), następne sprawdzamy wynik funkcji GetData i jeśli ten oznacza sukces, otrzymujemy natychcmiast dane zwrócone przez zapytanie.

Zapytania mogą być różnego rodzaju. Te ciekawsze to OCCLUSION pozwalające realizować to słynne sprzętowe Occlusion Query, czyli szybki test zasłaniania jednych obiektów przez inne. EVENT z kolei pozwala poczekać na zakończenie wszystkich wykonywanych w tle operacji graficznych, co rzekomo miałoby wyeliminować skakanie animacji dające o sobie znać w trybie okienkowym - mnie niestety nie pomogło.

Inne zapytania zwracają struktury pełne liczb z różnymi statystykami wewnętrznej pracy karty graficznej. Niestety większość z nich nie jest supported w moim systemie - widocznie albo GeForce 6600 GT to jest już złom a nie karta graficzna, albo trzebaby się przełączyć na DirectX-a w wersji Debug zamiast Retail (chociaż dokumentacja w SDK mówi że większość z nich działa w obydwu).

Więcej na ten temat możecie przeczytać w DirectX SDK, w rozdziale zatytułowanym Queries.

Comments | #rendering #directx Share

# Mój kurs Direct3D

19:29
Thu
21
Dec 2006

Już od dłuższego czasu można było znaleźć na mojej stronie informacje o tutorialu dotyczącym biblioteki Direct3D, który napisałem dla magazynu WARP. Jest to dość obszerny, 6-częściowy tekst, zorientowany głównie na naukę pisania dobrego frameworka aplikacji D3D oraz grafiki w zakresie potrzebnym do programowania z jego użyciem gier 2D. Jednak tym którzy chcą kodzić grafikę 3D też może się przydać jako pewien wstęp do tematu, opisujący te początkowe kwestie nieco chyba dokładniej niż najlepszy IMHO dostępny w polskiej Sieci tekst na ten temat (z którego sam się uczyłem) - tutorial Robala.

Wspominam o tym teraz, bo tak się składa, że w dziale Download na stronie magazynu można znaleźć dostępne za darmo do pobrania wszystkie numery, w których ukazały się poszczególne części mojego tekstu. Zachęcam do przejrzenia.

Comments | #directx #rendering #productions Share

# CardCaps.xsl

22:56
Mon
19
Jun 2006

Wiadomość dla wszystkich, którzy programują w DirectX-ie: pośród różnorodnych plików i programów jakie wchodzą w skład SDK, Microsoft ukrył prawdziwą perełkę. Ukrył ją tak skutecznie, że sam nie wiem odkąd tam była i dopiero niedawno ją odkryłem. Tymczasem jest zdecydowanie godna uwagi. Dlatego chciałem podzielić się tym znaleziskiem.

Mowa o pliku mieszczącym się w DXSDK\Samples\C++\Direct3D\ConfigSystem\CardCaps.xls. To arkusz Excela, który zawiera bardzo ładnie spisane (choć może nienajwygodniejsze w przeglądaniu) "capsy" Direct3D. Może skutecznie konkurować ze stroną Direct3D Caps - Chris Dragan's Corner.

Comments | #directx #rendering Share

Pages: > 1 ... 6 7 8

STAT NO AD
[Stat] [STAT NO AD] [Download] [Dropbox] [pub] [Mirror] [Privacy policy]
Copyright © 2004-2018