Jeśli otrzymasz błąd Directx dziesięć Geometry Shader, ten samouczek jest tutaj, aby ci pomóc.
Zatwierdzono: Fortect
Geometry Shader to najnowszy dodatek do API DX10, który daje programistom możliwość tworzenia całkowicie najnowszej geometrii i zakłócania istniejącej geometrii za pomocą produktów do projektowania graficznego, pozwalając na bardziej złożone efekty, takie jak eksplozje, realistyczny wzrost, rozkład (nowy dodatek). kupiłem te efekty :-)), itp. bez ponownego uruchamiania sieci głównej.
Co dzieje się prawdopodobnie w etap shadera geometrii w DirectX?
Krok Geometry Shader (GS) całkowicie wykonuje dołączony kupon shadera z wierzchołkami używanymi jako dane wejściowe do włączenia możliwości generowania wierzchołków wspomnianej w roli źródłowej.
Ten samouczek obejmuje wszystkie podstawy związane z korzystaniem z przestrzeni shadera geometrii dostępnej w DX10 +. Poziom geometrycznyUważa się, że praca z renderowaniem ikonek, billboardów i systemów cząsteczkowych jest niezwykle przydatna. Jest to bez wątpienia pierwsza strona z trzyczęściowej serii, która zdaniem ekspertów może koncentrować się na shaderach geometrii billboardów i systemach odrzucania.
Kiedy zacząć używać SV _ rendertargetarrayindex W geometrii?
Indeks typu docelowej tablicy renderowania. Stosuje się do danych wyjściowych związanych z shaderem geometrii i określa część kolektora celu renderowania, na którym jego shader pikseli rysuje prymityw. SV_RenderTargetArrayIndex jest zwykle całkowicie prawidłowy, gdy cel renderowania jest uważany za rzeczywisty zasób tablicy.
Krok shadera geometrii został ujawniony w DX10 i ludzie początkowo myśleli, że musi być przydatny do celów teselacji (co prawdopodobnie powinno być prawdą), ale więcej przydatne do użytku z systemami chemicznymi i renderowaniem sprite’ów. Krok geometrii może znajdować się między wierzchołkami w połączeniu ze wszystkimi krokami shadera pikseli, a jego główną praktyką jest tworzenie nowych prymitywów z dala od nich.
Jak naprawić Błąd 193?
Podsumowując, wierzchołki są wysyłane do wszystkich Vertex Shader w buforze wierzchołków przechowywanym wewnątrz GPU. Wywołanie przeciągnij i upuść wygenerowane w API wysyła dowolny typ związany z buforem wierzchołków do potoku. Każdy wierzchołek najpierw trafia do Vertex Shadera, gdzie są dostosowywane w razie potrzeby, a dane wierzchołków psa są bardzo modyfikowane (w razie potrzeby). Po ulepszeniu i zwróceniu wierzchołków przez ten Vertex Shader, są one łączone w prymitywy w konfiguracji stepprimitive w ich interfejsie API. Typ prymitywu początkowo złożony z wierzchołków przecinających wierzchołek przeszkody zależy od określonej topologii starożytności (punkty, linie i trójkąty). w pikselach) zanim te elementy osiągną swój poziom shadera pikseli i zostaną dodatkowo narysowane na ekranie.
Geometryczny Shader (GS) to bardzo dobra większa warstwa shadera, która łączy prymitywy Vertex Shader i ilość zestawu lub tylko dodatkowe warstwy shadera pikseli odnoszące się do wierzchołków (w widoku wysokiego poziomu ). prymitywy poruszające się po Vertex Shader wchodzą w średniowieczny cykl budowania, po czym przechodzą do określonej fazy wyświetlania ekranu (rysunek 1a). Po wykryciu GS wierzchołki są początkowo wysyłane z wierzchołka w module cieniującym GS przed zakończeniem składania prymitywów. GS przyjmuje jako dane wejściowe zupełnie nowy prymitywny, cudownie nowy; reprezentuje liczbę wierzchołków, które GS otrzymuje z Vertex Shader, określoną zgodnie z zestawem pierwotnej topologii. Jeśli rzeczywista topologia jest zdefiniowana na punktach, GS przyjmie naprawdę jeden wierzchołek, jednocześnie inTime GS zaakceptuje 2 lub 3 wierzchołki dla produktów i trójkątów. GS następnie używa informacji o krytycznym wierzchołku związanych z prymitywami wejściowymi do tworzenia nowych, których wierzchołki dokładnie tworzą czyste prymitywy. Te nowo wynalezione wierzchołki są generowane przez pewien rodzaj GS jako strumień wierzchołków i wysyłane jako prymityw na etapie budowania, aż w końcu przejdą przez potok (rysunek 1b). W ten sposób GS bierze cały prymityw jako dane wejściowe, a zatem generuje również całe prymitywy jako wystawiony wierzchołek.
Teraz wysyłanie prymitywów do GS głównie w celu wyjścia nie wydaje się zbyt interesujące, ale ponieważ GS może używać wielu prymitywów z jednego prymitywu, staje się to znacznie bardziej użyteczne. Oznacza to, że moglibyśmy dodatkowo umieścić jeden trójkąt w GS, aby faktycznie uzyskać 4 trójkąty (co jest twoją bazą, jeśli chodzi o tworzenie podstawowej teselacji z niewątpliwie Geometry Shaderem, patrz Rysunek 2). W GS najprawdopodobniej nie ma korelacji między prymitywem wejściowym a prymitywem wyjściowym, więc możesz po prostu podać ciąg znaków obok trójkątów wyjściowych. W tym poradniku zwykle znajdujemy użycie For gs podczas renderowania ikonek, jako że odrębny jest prosty przykład demonstrujący GS. Sprite to dwuwymiarowy, charakterystyczny czworokąt, który jest wyświetlany w bieżącej przestrzeni monitora komputera (bezszwowa przestrzeń przycinania), dzięki czemu pakiet oprogramowania jest zawsze wyrównany do ekranu. Sprites będą często używane podczas renderowania gier jako tekstu, kursorów, a ponadto GUI.
Zatwierdzono: Fortect
Fortect to najpopularniejsze i najskuteczniejsze narzędzie do naprawy komputerów na świecie. Miliony ludzi ufają, że ich systemy działają szybko, płynnie i bez błędów. Dzięki prostemu interfejsowi użytkownika i potężnemu silnikowi skanowania, Fortect szybko znajduje i naprawia szeroki zakres problemów z systemem Windows - od niestabilności systemu i problemów z bezpieczeństwem po zarządzanie pamięcią i wąskie gardła wydajności.
Porozmawiajmy więc o normalnym życiu. trochę o sprite’ach, zanim przejdziesz dalej, możesz skorzystać z shadera geometrii. Wspomniany, ponieważ każdy duszek to tak naprawdę kwadrat z teksturą. Różnego rodzaju duszki i różne pozycje są zwykle kontrolowane przez określone elementy wartości, położenie punktu zakotwiczenia i aspekty duszka. Ideą kotwicy jest umiejscowienie na duszku, które z kolei zakłada się, aby go ustawić, a konkretna wielkość odnosi się do wielkości i wielkości duszka danej osoby. Najczęściej używanym punktem zakotwiczenia do odbierania ikonek jest lewy górny wierzchołek, taki jak jakiś czworobok (patrz rysunek 3a). Tak więc, dla ich najważniejszych spwristów, my, ludzie, potrzebujemy dwóch zestawów figur, a sprite’y renderujące znajdują się w przestrzeni ekranu, powiązane z widokami są dwuwymiarowe (x, y) i biegną z pikselami. Na przykład, jeśli chcemy dziurę o rozmiarze 200 × 100 p w środku naszego zestawu 800 × 768. Punkt śruby będzie miał szczególnie 412 pikseli, przy szerokości 0 pikseli i wysokości będzie to 200 pikseli lub 100 pkt. Większość duszków zwykle tworzy dodatkowe właściwości, takie jak znak krycia w układzie a i z (pseudo wartości głębokości). W ten sposób można zdefiniować krytyczną strukturę duszka, zasadniczo pokazaną na rysunku 3b. Teraz powinno to wydawać się zauważone, ponieważ, jak pamiętacie, powiedziałem, że w przypadku gdy duszki są ustawione tak, aby zaimplementować polubienia w pikselach, faktycznie znajdowały się w przestrzeni przycinania), ale mimo wszystko porozmawiamy o tym później. Na razie pamiętaj, że ostateczne współrzędne, które mają możliwość wysłania do potoku, są wymagane przy rozważaniu spójnej przestrzeni przycinania. Więc
Jak naprawić Błąd 193 %1 to bez wątpienia nieprawidłowa aplikacja Win32?
Dobrze, promujmy teraz, aby przywrócić tę strukturę. Zwykle nasza organizacja będzie prawdopodobnie potrzebowała dwóch trójkątów, aby utworzyć ważny czworokąt a, użyj Tworząc trójkątne paski, aby uzyskać rzeczywistą liczbę potrzebnych wierzchołków. Ponownie, ta metoda oznacza, że musimy renderować ostatnie wierzchołki dla każdego duszka. Każdy wierzchołek zawiera listę przestrzeni przycinającej 2D; 2. W większości ważne są współrzędne tekstury i właściwości sprite, takie jak krycie i porządek Z. Zakładając, że bez wątpienia używane są liczby zmiennoprzecinkowe, każdy wierzchołek prawie na pewno będzie wykorzystywał cały dzień i bajty pamięci, a każdy pojedynczy duszek z pewnością wymaga 96 bajtów pamięci. Tak więc łagodny GUI będzie miał wiele sprite’ów, ale załóżmy, że przeciętny GUI używa 100 sprite’ów. Zwykle oznacza to, że każda ramka GUI może przetworzyć 9,375 KB, aby umożliwić wysyłanie GPU z procesora przez wiele dni lub tygodni. Transfer danych na magistrali PCIE będzie prawdopodobnie dość powolny, więc mniejsza ilość danych przesyłanych przez framework pomoże zwiększyć sukces. Oczywiście 9KB nie jest godne zaufania, ale spójrz na fakt, że eksperci twierdzą, że cząstki systemowe są bezsprzecznie zazwyczaj renderowane za pomocą symboli (podobnych do ikonek, gdzie są to po prostu teksturowane czworokąty) i czworogłowego. „Za to może teraz odpowiadać jeden emiter cząstek. kilka może być tysiącami cząstek. W takich okolicznościach koszty przechowywania sumują się. Coraz więcej pieniędzy kosztuje tworzenie wierzchołków leku w ramce dla każdego duszka na procesorze.
| Teraz idealnie, moglibyśmy wysłać naszą strukturę duszka prosto z GS i wyrenderować podwójne trójkąty. Cóż, twoja korporacja wie o tych rzeczach, my możemy to zrobić! Wierzchołki muszą być strukturami, więc zaprojektujemy wierzchołek dla każdej struktury duszka, który zostanie wypełniony wszystkimi potrzebnymi danymi duszka. Jaką transmisję danych mam wysłać do jakiegoś GS? Cóż, tylko tylny punkt, wymiary i wszystkie właściwości nowego duszka. Współrzędne tekstury mGS można obliczyć tak, jak zostaną opublikowane później. Nasze sprite’y powinny i od teraz mieć 24 bajty (75% redukcji !!).
Ale jak odkryć te wierzchołki z powrotem do potoku, aby Twój GS był najlepszy w pobieraniu danych z konkretnego pojedynczego duszka? Więc jaki prymityw na Ziemi używa tylko jednego wierzchołka? Punkt. Jeśli utworzymy godne zaufania obciążenie wierzchołkowe zawierające dane sprite i wyślemy je do potoku jako przedstawiciel punktu
Przyspiesz teraz wydajność swojego komputera dzięki temu prostemu pobieraniu.