Not
Åtkomst till denna sida kräver auktorisation. Du kan prova att logga in eller byta katalog.
Åtkomst till denna sida kräver auktorisation. Du kan prova att byta katalog.
Windows Display Driver Model (WDDM) 1.3 och senare drivrutiner kan stödja Prestandaförbättringar för Microsoft Direct3D-rendering som gör att Direct3D 9-maskinvaran bättre kan använda maskinvarukommandobuffertar och räknare och göra effektiva kopior av systemminne till underresurser. Dessa funktioner, som speglar några av de funktioner som är tillgängliga för Direct3D Version 10-maskinvara, är nya från och med Windows 8.1.
Nya trimnings- och kartläggningsförbättringar av Direct3D 11.1-resursernas standardprestanda är också tillgängliga. Standardscenariot för kartan beskrivs i avsnittet Beteendeändringar nedan.
Referens för återgivningsprestanda
Det här referensavsnittet beskriver användarlägets enhetsdrivrutinsgränssnitt (DDI:er).
Direct3D-renderingsprestandafunktioner som implementeras av drivrutinen i användarläge
Det här avsnittet innehåller funktioner som en WDDM(Windows Display Driver Model) 1.3 och senare drivrutin för användarläge implementerar för att stödja prestandaförbättringar för Microsoft Direct3D-återgivning.
PFND3DDDI_FLUSH1: PFND3DDDI_CHECKCOUNTERINFO
PFND3DDDI_CHECKCOUNTER: PFND3DDDI_UPDATESUBRESOURCEUP
Prestandastrukturer och uppräkningar för Direct3D-rendering
Dessa strukturer och uppräkningar i användarläge stöder prestandaförbättringar för rendering och är nya eller uppdaterade för Windows 8.1. Alla gäller för Direct3D Level 9-drivrutiner förutom för D3D11_1_DDI_FLUSH_FLAGS.
- D3DDDI_FLUSH_FLAGS (ny)
- D3DDDIARG_COPYFLAGS (ny)
- D3DDDIARG_COUNTER_INFO (ny)
- D3DDDIARG_UPDATESUBRESOURCEUP (ny)
- D3DDDICAPS_SIMPLE_INSTANCING_SUPPORT (ny)
- CreateResource2 (WDDM 1.3 och senare Direct3D Level 9-drivrutiner måste returnera E_INVALIDARG felkoden om CaptureBuffer-flaggvärdet har angetts)
- D3D11_1_DDI_FLUSH_FLAGS (D3DWDDM1_3DDI_TRIM_MEMORY konstant tillagd)
- D3DDDI_DEVICEFUNCS (pfnFlush1, pfnCheckCounterInfo, pfnCheckCounter, pfnUpdateSubresourceUP-medlemmar har lagts till)
- D3DDDI_POOL (D3DDDIPOOL_STAGINGMEM konstant tillagd)
- D3DDDICAPS_TYPE (D3DDDICAPS_GET_SIMPLE_INSTANCING_SUPPORT konstant tillagd)
- GetCaps (ny information i Kommentarer)
DDI-implementeringskrav som börjar med WDDM 1.3
Från och med WDDM 1.3 krävs följande funktioner eller är valfria för drivrutiner i användarläge att implementera.
| Funktionsgrupp | Beskrivning |
|---|---|
Direct3D 9-funktioner som är valfria före WDDM 1.3. Nu krävs: |
|
Direct3D 9-funktioner som är tillgängliga från och med WDDM 1.3. En drivrutin måste antingen implementera alla dessa funktioner eller ingen av dem: |
|
När de valfria funktionerna WDDM 1.3 och senare omedelbart ovan implementeras har dessa funktioner associerade beteendeändringar: |
Dessa scenarier gäller när GetCaps anropas :
|
Dessa Direct3D 11-funktioner har associerade beteendeändringar: |
|
Beteendeändringar för anrop till funktioner för att skapa, mappa och avmappa resurser
För dessa funktioner som implementeras av WDDM 1.3 och senare drivrutiner tillhandahåller Direct3D-körningen en begränsad uppsättning indatavärden för map-standardscenariot. Dessa begränsade värden gäller endast för drivrutiner som stöder funktionsnivå 11.1 och senare.
Funktionen CreateResource(D3D11)—
Dessa indata D3D11DDIARG_CREATERESOURCE strukturmedlemmar är begränsade:
| Medlem | Beskrivning |
|---|---|
ResourceDimension och Förbrukning |
Dessa beteendeändringar gäller endast när Direct3D-runtime tillhandahåller typen D3D10DDIRESOURCE_BUFFER för ResourceDimension och typen D3D10_DDI_USAGE_DEFAULT för Usage. |
BindFlags |
Direct3D-runtime anger endast värdena D3D10_DDI_BIND_SHADER_RESOURCE och D3D11_DDI_BIND_UNORDERED_ACCESS. |
MapFlags |
Om alla andra medlemskrav som anges här är uppfyllda kan körningstiden ange värden för D3D10_DDI_MAP_READ, D3D10_DDI_MAP_WRITE och D3D10_DDI_MAP_READWRITE. Drivrutinen måste ha stöd för dessa värden. Värdena för D3D10_DDI_MAP_WRITE_DISCARD och D3D10_DDI_MAP_WRITE_NOOVERWRITE är ogiltiga. |
MiscFlags |
Körningen anger endast värdena för D3D11_DDI_RESOURCE_MISC_BUFFER_ALLOW_RAW_VIEWS och D3D11_DDI_RESOURCE_MISC_BUFFER_STRUCTURED . |
Format |
Körtiden anger endast värdet DXGI_FORMAT_UNKNOWN. |
SampleDesc |
Körtiden anger DXGI_SAMPLE_DESC. Count-medlemmen till 1 och Quality-medlemmen till noll. |
MipLevels |
Körtiden sätter värdet till 1. |
Matrisstorlek |
Körtiden anger värdet till 1. |
pPrimaryDesc |
Körtiden anger värdet till NULL. |
Dessa indataparametrar till ResourceMap är begränsade:
| Parameter | Beskrivning |
|---|---|
hResource |
Direct3D-körningen anger endast en D3D10DDIRESOURCE_BUFFER resurs när ett värde som inte är noll för MapFlags anges i skapandeanropet till CreateResource(D3D11). |
Körtiden ställer endast in värdet DXGI_FORMAT_UNKNOWN. |
|
Underresurs |
Körtiden anger endast värdet till 0. |
DDIMap |
Om alla andra medlemskrav som anges här är uppfyllda kan körmiljön ange D3D10_DDI_MAP_READ, D3D10_DDI_MAP_WRITE eller D3D10_DDI_MAP_READWRITE som ett värde som matchar MapFlags-värdet som angavs i skapanropet till CreateResource(D3D11). |
flaggor |
Även om indatavärdet under körning inte är begränsat måste drivrutinen kunna stödja D3D10_DDI_MAP_FLAG_DONOTWAIT-värdet. |
pMappedSubResource |
Även om indatavärdet från körningen inte är begränsat, måste drivrutinen tilldela en giltig CPU-cachebar pekare till D3D10DDI_MAPPED_SUBRESOURCE.pData-medlemmen och ange RowPitch och DepthPitch så att de matchar buffertens storlek och de data som anges i pData. |
Dessa indataparametrar till ResourceUnmap är begränsade:
| Parameter | Beskrivning |
|---|---|
hDevice |
Även om indatavärdet från Direct3D-körningen inte är begränsat, är det värdet som matchar hDevice-värdet från det ursprungliga ResourceMap-anropet. |
hResource |
Körtiden ställer in endast en D3D10DDIRESOURCE_BUFFER resurs när ett värde som inte är noll för MapFlags används i skapandeanropet till CreateResource(D3D11). |
Underresurs |
Körtiden anger endast värdet till 0. |