Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Opcje użycia identyfikujące sposób używania zasobów.
Poniższa tabela zawiera podsumowanie dostępnych opcji użycia.
| Stały | Opis |
|---|---|
|
Zasób automatycznie wygeneruje mipmapy. Zobacz automatyczne generowanie map mipmap (Direct3D 9). Automatyczne generowanie map mipmap nie jest obsługiwane w przypadku tekstur objętościowych i powierzchni/tekstur głębokości. To użycie jest nieprawidłowe dla zasobu w pamięci systemowej (D3DPOOL_SYSTEMMEM). |
|
Zasób będzie buforem wzornika głębokości.
D3DUSAGE_DEPTHSTENCIL można używać tylko z D3DPOOL_DEFAULT. |
|
Zasób będzie mapą przemieszczania. |
|
Ustaw wartość , aby wskazać, że zawartość buforu wierzchołka nigdy nie będzie wymagać przycinania. Podczas renderowania z, które mają ustawioną tę flagę, stan renderowania D3DRS_CLIPPING musi być ustawiony na wartość false. |
|
Ustaw wartość wskazującą, że bufor wierzchołka wymaga użycia pamięci dynamicznej. Jest to przydatne w przypadku sterowników, ponieważ umożliwia im podjęcie decyzji, gdzie umieścić bufor. Ogólnie rzecz biorąc, statycznych wierzchołków są umieszczane w pamięci wideo, a wierzchołków dynamicznych są umieszczane w pamięci protokołu AGP. Należy pamiętać, że nie ma oddzielnego użycia statycznego. Jeśli nie określisz D3DUSAGE_DYNAMIC, bufor wierzchołka jest statyczny.
D3DUSAGE_DYNAMIC jest ściśle wymuszana za pomocą flag D3DLOCK_DISCARD i D3DLOCK_NOOVERWRITE blokowania. W związku z tym D3DLOCK_DISCARD i D3DLOCK_NOOVERWRITE są prawidłowe tylko w wierzchołków utworzonych za pomocą D3DUSAGE_DYNAMIC. Nie są one prawidłowymi flagami w statycznych wierzchołków. Aby uzyskać więcej informacji, zobacz Zarządzanie zasobami (Direct3D 9). Aby uzyskać więcej informacji na temat używania dynamicznych wierzchołków, zobacz Optymalizacje wydajności (Direct3D 9). D3DUSAGE_DYNAMIC i D3DPOOL_MANAGED są niezgodne i nie powinny być używane razem. Zobacz D3DPOOL. Tekstury mogą określać D3DUSAGE_DYNAMIC. Jednak zarządzane tekstury nie mogą używać D3DUSAGE_DYNAMIC. Aby uzyskać więcej informacji na temat tekstur dynamicznych, zobacz Using Dynamic Textures (Używanie tekstur dynamicznych). |
|
Zezwalaj na otwieranie udostępnionej powierzchni utworzonej przez bezpieczną aplikację przez niezabezpieczoną aplikację, która ma współużytkowaną dojście. Różnice między direct3D 9 i Direct3D 9Ex: Ta flaga jest dostępna tylko w trybie Direct3D 9Ex. |
|
Ustaw wartość wskazującą, że bufor wierzchołka ma być używany do rysowania N-patches. |
|
Ustaw wartość wskazującą, że wierzchołek lub bufor indeksu będą używane do sprites punktów rysunku. Bufor zostanie załadowany w pamięci systemowej, jeśli do emulowania sprites punktów potrzebne jest przetwarzanie wierzchołków oprogramowania. |
|
Zasób będzie obiektem docelowym renderowania.
D3DUSAGE_RENDERTARGET można używać tylko z D3DPOOL_DEFAULT. |
|
Ustaw wartość wskazującą, że bufor wierzchołka ma być używany do rysowania elementów pierwotnych o wysokiej kolejności. |
|
Jeśli ta flaga jest używana, przetwarzanie wierzchołków odbywa się w oprogramowaniu. Jeśli ta flaga nie jest używana, przetwarzanie wierzchołków odbywa się na sprzęcie. Flagę D3DUSAGE_SOFTWAREPROCESSING można ustawić, gdy dla tego urządzenia włączono przetwarzanie wierzchołków mieszanych lub programowych (D3DCREATE_MIXED_VERTEXPROCESSING / D3DCREATE_SOFTWARE_VERTEXPROCESSING). D3DUSAGE_SOFTWAREPROCESSING należy ustawić, aby były używane z przetwarzaniem wierzchołków oprogramowania w trybie mieszanym, ale nie należy go ustawiać pod kątem najlepszej możliwej wydajności podczas korzystania z przetwarzania indeksów sprzętowych w trybie mieszanym (D3DCREATE_HARDWARE_VERTEXPROCESSING). Jednak ustawienie D3DUSAGE_SOFTWAREPROCESSING jest jedyną opcją, gdy pojedynczy bufor jest używany zarówno z przetwarzaniem sprzętu, jak i wierzchołka oprogramowania. D3DUSAGE_SOFTWAREPROCESSING jest dozwolona dla urządzeń mieszanych i programowych. D3DUSAGE_SOFTWAREPROCESSING jest używany z CheckDeviceFormat , aby dowiedzieć się, czy określony format tekstury może być używany jako tekstura wierzchołka podczas przetwarzania wierzchołków oprogramowania. Jeśli to możliwe, tekstura musi zostać utworzona w D3DPOOL_SCRATCH. |
|
Ta flaga użycia musi być określona dla wierzchołków i powierzchni źródłowych używanych w wywołaniach funkcji ComposeRects. Tekstury utworzone za pomocą tej flagi użycia nie mogą być używane do filtrowania tekstur. wierzchołków utworzone za pomocą tej flagi użycia nie mogą być używane jako źródła strumienia wejściowego. Różnice między direct3D 9 i Direct3D 9Ex: Ta flaga jest dostępna tylko w trybie Direct3D 9Ex. |
|
Informuje system, że aplikacja zapisuje tylko w buforze wierzchołka. Użycie tej flagi umożliwia sterownikowi wybranie najlepszej lokalizacji pamięci na potrzeby wydajnych operacji zapisu i renderowania. Próba odczytu z buforu wierzchołka utworzonego za pomocą tej funkcji zakończy się niepowodzeniem. utworzone za pomocą D3DPOOL_DEFAULT , które nie określają D3DUSAGE_WRITEONLY , mogą mieć poważne kary za wydajność.
D3DUSAGE_WRITEONLY wpływa tylko na wydajność D3DPOOL_DEFAULT . |
|
Ustawienie tej flagi oznacza, że zasób może zawierać chronioną zawartość. Różnice między direct3D 9 i Direct3D 9Ex: Ta flaga jest dostępna tylko w trybie Direct3D 9Ex. |
|
Ustawienie tej flagi oznacza, że dostęp do zasobu udostępnionego powinien być ograniczony. Różnice między direct3D 9 i Direct3D 9Ex: Ta flaga jest dostępna tylko w trybie Direct3D 9Ex. |
|
Ustawienie tej flagi oznacza, że sterownik powinien ograniczyć dostęp do zasobu udostępnionego. Obiekt wywołujący musi utworzyć uwierzytelniony kanał ze sterownikiem. Sterownik powinien następnie zezwolić na dostęp do procesów, które próbują otworzyć ten zasób udostępniony. Różnice między direct3D 9 i Direct3D 9Ex: Ta flaga jest dostępna tylko w trybie Direct3D 9Ex. |
Uwagi
Kombinacje użycia i zasobów
Użycie jest określane, gdy zasób jest tworzony lub określony za pomocą polecenia CheckDeviceType w celu przetestowania możliwości istniejącego zasobu. W poniższej tabeli przedstawiono użycie, które można zastosować do typów zasobów.
| Zastosowanie | Tworzenie buforu wierzchołka | Tworzenie buforu indeksu | Tworzenie tekstur | Tworzenie tekstury kostki | Tworzenie tekstury objętości | Tworzenie urządzenia Surface | Sprawdzanie formatu urządzenia |
|---|---|---|---|---|---|---|---|
| D3DUSAGE_AUTOGENMIPMAP | Tak | tak | |||||
| D3DUSAGE_DEPTHSTENCIL | Tak | Tak | |||||
| D3DUSAGE_DMAP | tak | tak | |||||
| D3DUSAGE_DONOTCLIP tak | |||||||
| D3DUSAGE_DYNAMIC tak tak tak tak | tak | ||||||
| D3DUSAGE_NONSECURE tak | |||||||
| D3DUSAGE_NPATCHES tak | |||||||
| D3DUSAGE_POINTS tak | |||||||
| D3DUSAGE_RTPATCHES tak | |||||||
| D3DUSAGE_RENDERTARGET | Tak | Tak | |||||
| D3DUSAGE_SOFTWAREPROCESSING tak tak tak | tak | ||||||
| D3DUSAGE_TEXTAPI tak | tak | ||||||
| D3DUSAGE_WRITEONLY tak |
Użyj checkDeviceFormat , aby sprawdzić obsługę sprzętu dla tych użycia.
Każda z metod tworzenia zasobów jest wymieniona tutaj.
- CreateCubeTexture
- CreateDepthStencilSurface
- createIndexBuffer
- CreateOffscreenPlainSurface
- CreateRenderTarget
- CreateTexture
- CreateVertexBuffer
- CreateVolumeTexture
Funkcje tekstowe D3DXCreatexxx używają również niektórych z tych wartości stałych do tworzenia zasobów.
Aby uzyskać więcej informacji na temat typów puli i ich ograniczeń dotyczących niektórych użycia, zobacz D3DPOOL.
Wymagania
| Wymaganie | Wartość |
|---|---|
| Nagłówek |
|
Zobacz także