Table of Contents
Czasami system może usunąć błąd wskazujący na odpytywanie zdarzeń specjalnych DirectX. Ten problem może mieć jedną lub dwie przyczyny.
Przyspiesz swój komputer już dziś.
Istnieje kilka planów, których prośby mają na celu naprawdę zażądać stanu zasobów. Stan określonego zasobu wymaga stanu GPU, etapu sterownika kokpitu (GPU) lub stanu wykonania. Aby zrozumieć całą różnicę między różnymi typami żądań, musisz być świadomy stanów pełnego żądania. Diagram transformacji stanów podstawowych wyjaśnia każdy stan wyobraźni.
Schemat przedstawia trzy stany, z których razem są oznaczone grupami. Każda linia ciągła musi być zdarzeniem zależnym od aplikacji, a zatem wyzwalać zmianę stanu. Linia przerywana może być zdarzeniem zależnym od zasobów, więc karta do głosowania przełącza się z podanego stanu – stanu zasygnalizowanego. Każdy z wielu stanów ma wyłączny cel:
Niektóre zapytania wymagają zdarzenia początkowego i zapobiegającego, podczas gdy inne wymagają tylko bardzo dobrego zdarzenia końcowego. Żądania, które wymagają tylko tagu końcowego, zaczynają się od tego, że po prostu inna, jeśli niejawna, pojemność zdarzenia (która jest wymieniona w mojej tabeli). Wszystkie żądania zwracają odpowiedź, z wyjątkiem żądania. Uchwyt zdarzenia, który powinien zawsze zwracać odpowiedź PRAWDA. Aplikacja często używa historii żądań wraz z kodem powrotu z powodu GetData.
Utwórz prawdziwe zapytanie
Oferta publiczna będzie mogła sprawdzić, czy wszystkie zapytania podczas odtwarzania obsługują CreateQuery z sugestią NULL przed utworzeniem zapytania poprzez oznaczenie publicznego.
IDirect3DQuery9*pEventQuery;// Utwórz sugestię urządzenia m_pd3dDevice// Utwórz obiekt żądaniaHRESULT hr będzie prawdopodobnie m_pd3dDevice->CreateQuery(D3DQUERYTYPE_EVENT, NULL);
Ta metoda zwraca kod, który można uprawiać, gdy zapytanie musi zostać zbudowane; W przeciwnym razie zwracany jest niezawodny kod błędu. Po pomyślnym wytrenowaniu CreateQuery, możesz utworzyć obiekt problemu zawierający:
IDirect3DQuery9*pEventQuery;m_pd3dDevice->CreateQuery(D3DQUERYTYPE_EVENT, &pEventQuery);
Jeśli to wywołanie się powiedzie, zostanie utworzony dowolny obiekt żądania. Prawdziwe żądanie jest zasadniczo puste, ponieważ aby naprawdę można było wywnioskować raportowany stan (z rzeczywistą niezainicjowaną odpowiedzią) działając w całości. Kiedy skończysz na żądanie, opublikuj je tak, jak klienci zrobiliby każdy inny interfejs.
Zadaj pytanie
Aplikacja jest w większości zmieniana Brak stanu żądania przez żądanie. Oto zawsze lepszy przykład żądania:
IDirect3DQuery9*pEventQuery;m_pD3DDevice->CreateQuery(D3DQUERYTYPE_EVENT, &pEventQuery);// Uruchom zdarzenie początkowepEventQuery-> Problem(D3DISSUE_BEGIN);Gdzie// Opublikuj zdarzenie zakończeniapEventQuery->Problem(D3DISSUE_END);
Żądanie w naszym wskazanym hrabstwie spowoduje następujące przejście dotyczące urlopu:
Uruchomiona aplikacja zmienia się podczas wydania w następujący sposób:
Typ problemu | Zapytanie do omija dużą liczbę . . . |
---|---|
D3DISSUE_BEGIN | (Bez przejścia, pozostań w stanie kompilacji. Uruchom ponownie wątpliwy nawias klamrowy.) |
D3DISSUE_END | Wydano status. |
Przesłuchanie w tym stanie prawdopodobnie zostanie zmodyfikowane jako moje wyjście:
Typ problemu | Żądanie trafia do tego oprogramowania. . . |
---|---|
D3DISSUE_BEGIN | Stan kompilacji i trudność ponownego uruchomienia w nawiasach. |
D3DISSUE_END | Stan wyjścia po uzyskaniu istniejącego żądania. |
Przejrzyj żądanie i wskaż, co często otrzymujesz od odpowiedzi na żądanie
- Zwraca aktualizacje żądania w moim kodzie zwrotnym.
- Zwraca odpowiedź jako żądanie do pData.
Oto prawdopodobnie kody powrotu GetData dla równych trzech ludzkich stanów znajdowania informacji:
Status żądania | Kod GetData do stałego odwiedzania danych bloga |
---|---|
Sygnały | S_OK |
Budynek | Kod błędu |
Wydany | S_FALSE |
Na przykład, jeśli przeszkoda ma zwrócony status dowolny i wszystko, a odpowiedź na problem jest uważana za niedostępną, GetData zwraca S_FALSE. Jeśli zasób zostanie zamknięty po tym, jak aplikacja wygeneruje koniec sytuacji, bez wątpienia zasób eskaluje problem do pewnego zgłoszonego stanu. Z zasygnalizowanego żądania GetData zwraca S_OK who, co powoduje, że odpowiedź na niektóre instrukcje jest również zwracana i wyświetlana znaleziona w pData. Na przykład, oto zdarzenie ekspresowe, które zwraca zestaw najczęściej powiązany z pikselami renderowanymi w nowej i ekscytującej kolejności:
Przyspiesz swój komputer już dziś.
Chcesz naprawić swój komputer z systemem Windows? Nie szukaj dalej niż ASR Pro! To wszechstronne narzędzie naprawcze zostało zaprojektowane do diagnozowania i rozwiązywania wielu różnych problemów, jednocześnie zwiększając wydajność systemu, optymalizując pamięć, poprawiając bezpieczeństwo i dostrajając komputer w celu uzyskania maksymalnej niezawodności. Nie zmagaj się z uszkodzonym komputerem — pobierz ASR Pro i pozwól ekspertom zająć się tym za Ciebie!

IDirect3DQuery9* numberOfPixelsDrawn;m_pD3DDevice->CreateQuery(D3DQUERYTYPE_OCCLUSION, pOcclusionQuery;DWORD &pOcclusionQuery); Dodać// znacznik końca jednej konkretnej pomyślnej kolejki bufora poleceń.pOcclusionQuery-> Problem(D3DISSUE_BEGIN);// API zapewnia pętlę...Rozwijać(...)...Dodać do// koniec pistoletu - kolejka bufora poleceń.pOcclusionQuery-> Problem(D3DISSUE_END);//Zmuś motocyklistów do wykonywania poleceń z bufora słów poleceń.// Buforuj puste instrukcje i odkładaj je do czasu bezczynności GPU.while(S_FALSE POcclusionQuery->GetData( == &numberOfPixelsDrawn, sizeof(DWORD), D3DGETDATA_FLUSH )) ;
wylosowane
Directx Event Query
Directx Ereignisabfrage
Query Evento Directx
Zapros Sobytiya Directx
다이렉트x 이벤트 쿼리
Requete D Evenement Directx
Directx Handelsefraga
Directx Gebeurtenisquery
Consulta De Evento Directx
Consulta De Evento De Directx
