D3D11DDI_DEVICEFUNCS 结构 (d3d10umddi.h)
D3D11DDI_DEVICEFUNCS 结构包含针对 Microsoft Direct3D 版本 11 运行时优化的用户模式显示驱动程序可以实现的函数来呈现图形基元和处理状态更改。
语法
typedef struct D3D11DDI_DEVICEFUNCS {
PFND3D10DDI_RESOURCEUPDATESUBRESOURCEUP pfnDefaultConstantBufferUpdateSubresourceUP;
PFND3D10DDI_SETCONSTANTBUFFERS pfnVsSetConstantBuffers;
PFND3D10DDI_SETSHADERRESOURCES pfnPsSetShaderResources;
PFND3D10DDI_SETSHADER pfnPsSetShader;
PFND3D10DDI_SETSAMPLERS pfnPsSetSamplers;
PFND3D10DDI_SETSHADER pfnVsSetShader;
PFND3D10DDI_DRAWINDEXED pfnDrawIndexed;
PFND3D10DDI_DRAW pfnDraw;
PFND3D10DDI_RESOURCEMAP pfnDynamicIABufferMapNoOverwrite;
PFND3D10DDI_RESOURCEUNMAP pfnDynamicIABufferUnmap;
PFND3D10DDI_RESOURCEMAP pfnDynamicConstantBufferMapDiscard;
PFND3D10DDI_RESOURCEMAP pfnDynamicIABufferMapDiscard;
PFND3D10DDI_RESOURCEUNMAP pfnDynamicConstantBufferUnmap;
PFND3D10DDI_SETCONSTANTBUFFERS pfnPsSetConstantBuffers;
PFND3D10DDI_SETINPUTLAYOUT pfnIaSetInputLayout;
PFND3D10DDI_IA_SETVERTEXBUFFERS pfnIaSetVertexBuffers;
PFND3D10DDI_IA_SETINDEXBUFFER pfnIaSetIndexBuffer;
PFND3D10DDI_DRAWINDEXEDINSTANCED pfnDrawIndexedInstanced;
PFND3D10DDI_DRAWINSTANCED pfnDrawInstanced;
PFND3D10DDI_RESOURCEMAP pfnDynamicResourceMapDiscard;
PFND3D10DDI_RESOURCEUNMAP pfnDynamicResourceUnmap;
PFND3D10DDI_SETCONSTANTBUFFERS pfnGsSetConstantBuffers;
PFND3D10DDI_SETSHADER pfnGsSetShader;
PFND3D10DDI_IA_SETTOPOLOGY pfnIaSetTopology;
PFND3D10DDI_RESOURCEMAP pfnStagingResourceMap;
PFND3D10DDI_RESOURCEUNMAP pfnStagingResourceUnmap;
PFND3D10DDI_SETSHADERRESOURCES pfnVsSetShaderResources;
PFND3D10DDI_SETSAMPLERS pfnVsSetSamplers;
PFND3D10DDI_SETSHADERRESOURCES pfnGsSetShaderResources;
PFND3D10DDI_SETSAMPLERS pfnGsSetSamplers;
PFND3D11DDI_SETRENDERTARGETS pfnSetRenderTargets;
PFND3D10DDI_SHADERRESOURCEVIEWREADAFTERWRITEHAZARD pfnShaderResourceViewReadAfterWriteHazard;
PFND3D10DDI_RESOURCEREADAFTERWRITEHAZARD pfnResourceReadAfterWriteHazard;
PFND3D10DDI_SETBLENDSTATE pfnSetBlendState;
PFND3D10DDI_SETDEPTHSTENCILSTATE pfnSetDepthStencilState;
PFND3D10DDI_SETRASTERIZERSTATE pfnSetRasterizerState;
PFND3D10DDI_QUERYEND pfnQueryEnd;
PFND3D10DDI_QUERYBEGIN pfnQueryBegin;
PFND3D10DDI_RESOURCECOPYREGION pfnResourceCopyRegion;
PFND3D10DDI_RESOURCEUPDATESUBRESOURCEUP pfnResourceUpdateSubresourceUP;
PFND3D10DDI_SO_SETTARGETS pfnSoSetTargets;
PFND3D10DDI_DRAWAUTO pfnDrawAuto;
PFND3D10DDI_SETVIEWPORTS pfnSetViewports;
PFND3D10DDI_SETSCISSORRECTS pfnSetScissorRects;
PFND3D10DDI_CLEARRENDERTARGETVIEW pfnClearRenderTargetView;
PFND3D10DDI_CLEARDEPTHSTENCILVIEW pfnClearDepthStencilView;
PFND3D10DDI_SETPREDICATION pfnSetPredication;
PFND3D10DDI_QUERYGETDATA pfnQueryGetData;
PFND3D10DDI_FLUSH pfnFlush;
PFND3D10DDI_GENMIPS pfnGenMips;
PFND3D10DDI_RESOURCECOPY pfnResourceCopy;
PFND3D10DDI_RESOURCERESOLVESUBRESOURCE pfnResourceResolveSubresource;
PFND3D10DDI_RESOURCEMAP pfnResourceMap;
PFND3D10DDI_RESOURCEUNMAP pfnResourceUnmap;
PFND3D10DDI_RESOURCEISSTAGINGBUSY pfnResourceIsStagingBusy;
PFND3D11DDI_RELOCATEDEVICEFUNCS pfnRelocateDeviceFuncs;
PFND3D11DDI_CALCPRIVATERESOURCESIZE pfnCalcPrivateResourceSize;
PFND3D10DDI_CALCPRIVATEOPENEDRESOURCESIZE pfnCalcPrivateOpenedResourceSize;
PFND3D11DDI_CREATERESOURCE pfnCreateResource;
PFND3D10DDI_OPENRESOURCE pfnOpenResource;
PFND3D10DDI_DESTROYRESOURCE pfnDestroyResource;
PFND3D11DDI_CALCPRIVATESHADERRESOURCEVIEWSIZE pfnCalcPrivateShaderResourceViewSize;
PFND3D11DDI_CREATESHADERRESOURCEVIEW pfnCreateShaderResourceView;
PFND3D10DDI_DESTROYSHADERRESOURCEVIEW pfnDestroyShaderResourceView;
PFND3D10DDI_CALCPRIVATERENDERTARGETVIEWSIZE pfnCalcPrivateRenderTargetViewSize;
PFND3D10DDI_CREATERENDERTARGETVIEW pfnCreateRenderTargetView;
PFND3D10DDI_DESTROYRENDERTARGETVIEW pfnDestroyRenderTargetView;
PFND3D11DDI_CALCPRIVATEDEPTHSTENCILVIEWSIZE pfnCalcPrivateDepthStencilViewSize;
PFND3D11DDI_CREATEDEPTHSTENCILVIEW pfnCreateDepthStencilView;
PFND3D10DDI_DESTROYDEPTHSTENCILVIEW pfnDestroyDepthStencilView;
PFND3D10DDI_CALCPRIVATEELEMENTLAYOUTSIZE pfnCalcPrivateElementLayoutSize;
PFND3D10DDI_CREATEELEMENTLAYOUT pfnCreateElementLayout;
PFND3D10DDI_DESTROYELEMENTLAYOUT pfnDestroyElementLayout;
PFND3D10_1DDI_CALCPRIVATEBLENDSTATESIZE pfnCalcPrivateBlendStateSize;
PFND3D10_1DDI_CREATEBLENDSTATE pfnCreateBlendState;
PFND3D10DDI_DESTROYBLENDSTATE pfnDestroyBlendState;
PFND3D10DDI_CALCPRIVATEDEPTHSTENCILSTATESIZE pfnCalcPrivateDepthStencilStateSize;
PFND3D10DDI_CREATEDEPTHSTENCILSTATE pfnCreateDepthStencilState;
PFND3D10DDI_DESTROYDEPTHSTENCILSTATE pfnDestroyDepthStencilState;
PFND3D10DDI_CALCPRIVATERASTERIZERSTATESIZE pfnCalcPrivateRasterizerStateSize;
PFND3D10DDI_CREATERASTERIZERSTATE pfnCreateRasterizerState;
PFND3D10DDI_DESTROYRASTERIZERSTATE pfnDestroyRasterizerState;
PFND3D10DDI_CALCPRIVATESHADERSIZE pfnCalcPrivateShaderSize;
PFND3D10DDI_CREATEVERTEXSHADER pfnCreateVertexShader;
PFND3D10DDI_CREATEGEOMETRYSHADER pfnCreateGeometryShader;
PFND3D10DDI_CREATEPIXELSHADER pfnCreatePixelShader;
PFND3D11DDI_CALCPRIVATEGEOMETRYSHADERWITHSTREAMOUTPUT pfnCalcPrivateGeometryShaderWithStreamOutput;
PFND3D11DDI_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT pfnCreateGeometryShaderWithStreamOutput;
PFND3D10DDI_DESTROYSHADER pfnDestroyShader;
PFND3D10DDI_CALCPRIVATESAMPLERSIZE pfnCalcPrivateSamplerSize;
PFND3D10DDI_CREATESAMPLER pfnCreateSampler;
PFND3D10DDI_DESTROYSAMPLER pfnDestroySampler;
PFND3D10DDI_CALCPRIVATEQUERYSIZE pfnCalcPrivateQuerySize;
PFND3D10DDI_CREATEQUERY pfnCreateQuery;
PFND3D10DDI_DESTROYQUERY pfnDestroyQuery;
PFND3D10DDI_CHECKFORMATSUPPORT pfnCheckFormatSupport;
PFND3D10DDI_CHECKMULTISAMPLEQUALITYLEVELS pfnCheckMultisampleQualityLevels;
PFND3D10DDI_CHECKCOUNTERINFO pfnCheckCounterInfo;
PFND3D10DDI_CHECKCOUNTER pfnCheckCounter;
PFND3D10DDI_DESTROYDEVICE pfnDestroyDevice;
PFND3D10DDI_SETTEXTFILTERSIZE pfnSetTextFilterSize;
PFND3D10DDI_RESOURCECOPY pfnResourceConvert;
PFND3D10DDI_RESOURCECOPYREGION pfnResourceConvertRegion;
PFND3D10DDI_RESETPRIMITIVEID pfnResetPrimitiveID;
PFND3D10DDI_SETVERTEXPIPELINEOUTPUT pfnSetVertexPipelineOutput;
PFND3D11DDI_DRAWINDEXEDINSTANCEDINDIRECT pfnDrawIndexedInstancedIndirect;
PFND3D11DDI_DRAWINSTANCEDINDIRECT pfnDrawInstancedIndirect;
PFND3D11DDI_COMMANDLISTEXECUTE pfnCommandListExecute;
PFND3D10DDI_SETSHADERRESOURCES pfnHsSetShaderResources;
PFND3D10DDI_SETSHADER pfnHsSetShader;
PFND3D10DDI_SETSAMPLERS pfnHsSetSamplers;
PFND3D10DDI_SETCONSTANTBUFFERS pfnHsSetConstantBuffers;
PFND3D10DDI_SETSHADERRESOURCES pfnDsSetShaderResources;
PFND3D10DDI_SETSHADER pfnDsSetShader;
PFND3D10DDI_SETSAMPLERS pfnDsSetSamplers;
PFND3D10DDI_SETCONSTANTBUFFERS pfnDsSetConstantBuffers;
PFND3D11DDI_CREATEHULLSHADER pfnCreateHullShader;
PFND3D11DDI_CREATEDOMAINSHADER pfnCreateDomainShader;
PFND3D11DDI_CHECKDEFERREDCONTEXTHANDLESIZES pfnCheckDeferredContextHandleSizes;
PFND3D11DDI_CALCDEFERREDCONTEXTHANDLESIZE pfnCalcDeferredContextHandleSize;
PFND3D11DDI_CALCPRIVATEDEFERREDCONTEXTSIZE pfnCalcPrivateDeferredContextSize;
PFND3D11DDI_CREATEDEFERREDCONTEXT pfnCreateDeferredContext;
PFND3D11DDI_ABANDONCOMMANDLIST pfnAbandonCommandList;
PFND3D11DDI_CALCPRIVATECOMMANDLISTSIZE pfnCalcPrivateCommandListSize;
PFND3D11DDI_CREATECOMMANDLIST pfnCreateCommandList;
PFND3D11DDI_DESTROYCOMMANDLIST pfnDestroyCommandList;
PFND3D11DDI_CALCPRIVATETESSELLATIONSHADERSIZE pfnCalcPrivateTessellationShaderSize;
PFND3D11DDI_SETSHADER_WITH_IFACES pfnPsSetShaderWithIfaces;
PFND3D11DDI_SETSHADER_WITH_IFACES pfnVsSetShaderWithIfaces;
PFND3D11DDI_SETSHADER_WITH_IFACES pfnGsSetShaderWithIfaces;
PFND3D11DDI_SETSHADER_WITH_IFACES pfnHsSetShaderWithIfaces;
PFND3D11DDI_SETSHADER_WITH_IFACES pfnDsSetShaderWithIfaces;
PFND3D11DDI_SETSHADER_WITH_IFACES pfnCsSetShaderWithIfaces;
PFND3D11DDI_CREATECOMPUTESHADER pfnCreateComputeShader;
PFND3D10DDI_SETSHADER pfnCsSetShader;
PFND3D10DDI_SETSHADERRESOURCES pfnCsSetShaderResources;
PFND3D10DDI_SETSAMPLERS pfnCsSetSamplers;
PFND3D10DDI_SETCONSTANTBUFFERS pfnCsSetConstantBuffers;
PFND3D11DDI_CALCPRIVATEUNORDEREDACCESSVIEWSIZE pfnCalcPrivateUnorderedAccessViewSize;
PFND3D11DDI_CREATEUNORDEREDACCESSVIEW pfnCreateUnorderedAccessView;
PFND3D11DDI_DESTROYUNORDEREDACCESSVIEW pfnDestroyUnorderedAccessView;
PFND3D11DDI_CLEARUNORDEREDACCESSVIEWUINT pfnClearUnorderedAccessViewUint;
PFND3D11DDI_CLEARUNORDEREDACCESSVIEWFLOAT pfnClearUnorderedAccessViewFloat;
PFND3D11DDI_SETUNORDEREDACCESSVIEWS pfnCsSetUnorderedAccessViews;
PFND3D11DDI_DISPATCH pfnDispatch;
PFND3D11DDI_DISPATCHINDIRECT pfnDispatchIndirect;
PFND3D11DDI_SETRESOURCEMINLOD pfnSetResourceMinLOD;
PFND3D11DDI_COPYSTRUCTURECOUNT pfnCopyStructureCount;
PFND3D11DDI_RECYCLECOMMANDLIST pfnRecycleCommandList;
PFND3D11DDI_RECYCLECREATECOMMANDLIST pfnRecycleCreateCommandList;
PFND3D11DDI_RECYCLECREATEDEFERREDCONTEXT pfnRecycleCreateDeferredContext;
PFND3D11DDI_DESTROYCOMMANDLIST pfnRecycleDestroyCommandList;
} D3D11DDI_DEVICEFUNCS;
成员
pfnDefaultConstantBufferUpdateSubresourceUP
指向驱动程序的 DefaultConstantBufferUpdateSubresourceUP 函数的指针。
pfnVsSetConstantBuffers
指向驱动程序的 VsSetConstantBuffers 函数的指针。
pfnPsSetShaderResources
指向驱动程序的 PsSetShaderResources 函数的 指针。
pfnPsSetShader
指向驱动程序的 PsSetShader 函数的指针。
pfnPsSetSamplers
指向驱动程序的 PsSetSamplers 函数的 指针。
pfnVsSetShader
指向驱动程序的 VsSetShader 函数的指针。
pfnDrawIndexed
指向驱动程序的 DrawIndexed 函数的指针。
pfnDraw
指向驱动程序的 Draw 函数的指针。
pfnDynamicIABufferMapNoOverwrite
指向驱动程序的 ResourceMap 函数的指针。 有关是实现单独的 DynamicIABufferMapNoOverwrite 函数还是指向多用途 ResourceMap 的详细信息,请参阅 ResourceMap 的“备注”部分。
pfnDynamicIABufferUnmap
指向驱动程序的 ResourceUnmap 函数的指针。 有关是实现单独的 DynamicIABufferUnmap 函数还是指向多用途 ResourceUnmap 的详细信息,请参阅 ResourceMap 的“备注”部分。
pfnDynamicConstantBufferMapDiscard
指向驱动程序的 ResourceMap 函数的指针。 有关是实现单独的 DynamicConstantBufferMapDiscard 函数还是指向多用途 ResourceMap 的详细信息,请参阅 ResourceMap 的“备注”部分。
pfnDynamicIABufferMapDiscard
指向驱动程序的 ResourceMap 函数的指针。 有关是实现单独的 DynamicIABufferMapDiscard 函数还是指向多用途 ResourceMap 的详细信息,请参阅 ResourceMap 的“备注”部分。
pfnDynamicConstantBufferUnmap
指向驱动程序的 ResourceUnmap 函数的指针。 有关是实现单独的 DynamicConstantBufferUnmap 函数还是指向多用途 ResourceUnmap 的详细信息,请参阅 ResourceMap 的“备注”部分。
pfnPsSetConstantBuffers
指向驱动程序的 PsSetConstantBuffers 函数的指针。
pfnIaSetInputLayout
指向驱动程序的 IaSetInputLayout 函数的指针。
pfnIaSetVertexBuffers
指向驱动程序的 IaSetVertexBuffers 函数的指针。
pfnIaSetIndexBuffer
指向驱动程序的 IaSetIndexBuffer 函数的指针。
pfnDrawIndexedInstanced
指向驱动程序的 DrawIndexedInstanced 函数的 指针。
pfnDrawInstanced
指向驱动程序的 DrawInstanced 函数的 指针。
pfnDynamicResourceMapDiscard
指向驱动程序的 ResourceMap 函数的指针。 有关是实现单独的 DynamicResourceMapDiscard 函数还是指向多用途 ResourceMap 的详细信息,请参阅 ResourceMap 的“备注”部分。
pfnDynamicResourceUnmap
指向驱动程序的 ResourceUnmap 函数的指针。 有关是实现单独的 DynamicResourceUnmap 函数还是指向多用途 ResourceUnmap 的详细信息,请参阅 ResourceMap 的“备注”部分。
pfnGsSetConstantBuffers
指向驱动程序的 GsSetConstantBuffers 函数的指针。
pfnGsSetShader
指向驱动程序的 GsSetShader 函数的指针。
pfnIaSetTopology
指向驱动程序的 IaSetTopology 函数的指针。
pfnStagingResourceMap
指向驱动程序的 ResourceMap 函数的指针。 有关是实现单独的 StagingResourceMap 函数还是指向多用途 ResourceMap 的详细信息,请参阅 ResourceMap 的“备注”部分。
pfnStagingResourceUnmap
指向驱动程序的 ResourceUnmap 函数的指针。 有关是实现单独的 StagingResourceUnmap 函数还是指向多用途 ResourceUnmap 的详细信息,请参阅 ResourceMap 的“备注”部分。
pfnVsSetShaderResources
指向驱动程序的 VsSetShaderResources 函数的 指针。
pfnVsSetSamplers
指向驱动程序的 VsSetSamplers 函数的 指针。
pfnGsSetShaderResources
指向驱动程序的 GsSetShaderResources 函数的 指针。
pfnGsSetSamplers
指向驱动程序的 GsSetSamplers 函数的 指针。
pfnSetRenderTargets
指向驱动程序的 SetRenderTargets (D3D11) 函数的指针。
pfnShaderResourceViewReadAfterWriteHazard
指向驱动程序的 ShaderResourceViewReadAfterWriteHazard 函数的 指针。
pfnResourceReadAfterWriteHazard
指向驱动程序的 ResourceReadAfterWriteHazard 函数的 指针。
pfnSetBlendState
指向驱动程序的 SetBlendState 函数的指针。
pfnSetDepthStencilState
指向驱动程序的 SetDepthStencilState 函数的 指针。
pfnSetRasterizerState
指向驱动程序的 SetRasterizerState 函数的指针。
pfnQueryEnd
指向驱动程序的 QueryEnd 函数的指针。
pfnQueryBegin
指向驱动程序的 QueryBegin 函数的指针。
pfnResourceCopyRegion
指向驱动程序的 ResourceCopyRegion 函数的指针。
pfnResourceUpdateSubresourceUP
指向驱动程序的 ResourceUpdateSubresourceUP 函数的指针。
pfnSoSetTargets
指向驱动程序的 SoSetTargets 函数的 指针。
pfnDrawAuto
指向驱动程序的 DrawAuto 函数的指针。
pfnSetViewports
指向驱动程序的 SetViewports 函数的 指针。
pfnSetScissorRects
指向驱动程序的 SetScissorRects 函数的 指针。
pfnClearRenderTargetView
指向驱动程序的 ClearRenderTargetView 函数的指针。
pfnClearDepthStencilView
指向驱动程序的 ClearDepthStencilView 函数的指针。
pfnSetPredication
指向驱动程序的 SetPredication 函数的指针。
pfnQueryGetData
指向驱动程序的 QueryGetData 函数的指针。
pfnFlush
指向驱动程序的 Flush (D3D10) 函数的 指针。
pfnGenMips
指向驱动程序的 GenMips 函数的指针。
pfnResourceCopy
指向驱动程序的 ResourceCopy 函数的指针。
pfnResourceResolveSubresource
指向驱动程序的 ResourceResolveSubresource 函数的指针。
pfnResourceMap
指向驱动程序的 ResourceMap 函数的指针。
pfnResourceUnmap
指向驱动程序的 ResourceUnmap 函数的指针。
pfnResourceIsStagingBusy
指向驱动程序的 ResourceIsStagingBusy 函数的指针。
pfnRelocateDeviceFuncs
指向驱动程序的 RelocateDeviceFuncs (D3D11) 函数的 指针。
pfnCalcPrivateResourceSize
指向驱动程序的 CalcPrivateResourceSize (D3D11) 函数的 指针。
pfnCalcPrivateOpenedResourceSize
指向驱动程序的 CalcPrivateOpenedResourceSize 函数的指针。
pfnCreateResource
指向驱动程序的 CreateResource (D3D11) 函数的 指针。
pfnOpenResource
指向驱动程序的 OpenResource (D3D10) 函数的 指针。
pfnDestroyResource
指向驱动程序的 DestroyResource (D3D10) 函数的指针。
pfnCalcPrivateShaderResourceViewSize
指向驱动程序的 CalcPrivateShaderResourceViewSize (D3D11) 函数的指针。
pfnCreateShaderResourceView
指向驱动程序的 CreateShaderResourceView (D3D11) 函数的 指针。
pfnDestroyShaderResourceView
指向驱动程序的 DestroyShaderResourceView 函数的指针。
pfnCalcPrivateRenderTargetViewSize
指向驱动程序的 CalcPrivateRenderTargetViewSize 函数的指针。
pfnCreateRenderTargetView
指向驱动程序的 CreateRenderTargetView 函数的指针。
pfnDestroyRenderTargetView
指向驱动程序的 DestroyRenderTargetView 函数的指针。
pfnCalcPrivateDepthStencilViewSize
指向驱动程序的 CalcPrivateDepthStencilViewSize (D3D11) 函数的 指针。
pfnCreateDepthStencilView
指向驱动程序的 CreateDepthStencilView (D3D11) 函数的 指针。
pfnDestroyDepthStencilView
指向驱动程序的 DestroyDepthStencilView 函数的指针。
pfnCalcPrivateElementLayoutSize
指向驱动程序的 CalcPrivateElementLayoutSize 函数的指针。
pfnCreateElementLayout
指向驱动程序的 CreateElementLayout 函数的指针。
pfnDestroyElementLayout
指向驱动程序的 DestroyElementLayout 函数的指针。
pfnCalcPrivateBlendStateSize
指向驱动程序的 CalcPrivateBlendStateSize (D3D10_1) 函数的 指针。
pfnCreateBlendState
指向驱动程序的 CreateBlendState (D3D10_1) 函数的 指针。
pfnDestroyBlendState
指向驱动程序的 DestroyBlendState 函数的指针。
pfnCalcPrivateDepthStencilStateSize
指向驱动程序的 CalcPrivateDepthStencilStateSize 函数的指针。
pfnCreateDepthStencilState
指向驱动程序的 CreateDepthStencilState 函数的指针。
pfnDestroyDepthStencilState
指向驱动程序的 DestroyDepthStencilState 函数的指针。
pfnCalcPrivateRasterizerStateSize
指向驱动程序的 CalcPrivateRasterizerStateSize 函数的指针。
pfnCreateRasterizerState
指向驱动程序的 CreateRasterizerState 函数的指针。
pfnDestroyRasterizerState
指向驱动程序的 DestroyRasterizerState 函数的指针。
pfnCalcPrivateShaderSize
指向驱动程序的 CalcPrivateShaderSize 函数的指针。
pfnCreateVertexShader
指向驱动程序的 CreateVertexShader (D3D10) 函数的 指针。
pfnCreateGeometryShader
指向驱动程序的 CreateGeometryShader 函数的指针。
pfnCreatePixelShader
指向驱动程序的 CreatePixelShader (D3D10) 函数的 指针。
pfnCalcPrivateGeometryShaderWithStreamOutput
指向驱动程序的 CalcPrivateGeometryShaderWithStreamOutput (D3D11) 函数的 指针。
pfnCreateGeometryShaderWithStreamOutput
指向驱动程序的 CreateGeometryShaderWithStreamOutput (D3D11) 函数的 指针。
pfnDestroyShader
指向驱动程序的 DestroyShader 函数的指针。
pfnCalcPrivateSamplerSize
指向驱动程序的 CalcPrivateSamplerSize 函数的指针。
pfnCreateSampler
指向驱动程序的 CreateSampler 函数的指针。
pfnDestroySampler
指向驱动程序的 DestroySampler 函数的指针。
pfnCalcPrivateQuerySize
指向驱动程序的 CalcPrivateQuerySize 函数的指针。
pfnCreateQuery
指向驱动程序的 CreateQuery (D3D10) 函数的 指针。
pfnDestroyQuery
指向驱动程序的 DestroyQuery (D3D10) 函数的 指针。
pfnCheckFormatSupport
指向驱动程序的 CheckFormatSupport 函数的指针。
pfnCheckMultisampleQualityLevels
指向驱动程序的 CheckMultisampleQualityLevels 函数的 指针。
pfnCheckCounterInfo
指向驱动程序的 CheckCounterInfo 函数的指针。
pfnCheckCounter
指向驱动程序的 CheckCounter 函数的指针。
pfnDestroyDevice
指向驱动程序的 DestroyDevice (D3D10) 函数的 指针。
pfnSetTextFilterSize
指向驱动程序的 SetTextFilterSize 函数的指针。
从 Windows Vista Service Pack 1 (SP1) 和 Windows Server 2008 开始支持以下两个函数:
pfnResourceConvert
指向驱动程序的 ResourceCopy 函数的指针。 有关是实现单独的 ResourceConvert 函数还是指向 multipurpose ResourceCopy 的详细信息,请参阅 ResourceCopy 的“备注”部分。
pfnResourceConvertRegion
指向驱动程序的 ResourceCopyRegion 函数的指针。 有关是实现单独的 ResourceConvertRegion 函数还是指向多用途 ResourceCopyRegion 的详细信息,请参阅 ResourceCopyRegion 的“备注”部分。
从 Windows 7 开始支持以下函数:
pfnResetPrimitiveID
pfnSetVertexPipelineOutput
pfnDrawIndexedInstancedIndirect
指向驱动程序的 DrawIndexedInstancedIndirect 函数的指针。
pfnDrawInstancedIndirect
指向驱动程序的 DrawInstancedIndirect 函数的指针。
pfnCommandListExecute
指向驱动程序 CommandListExecute 函数的指针。 仅当驱动程序支持D3D11DDICAPS_COMMANDLISTS_BUILD_2功能时,驱动程序才需要实现 CommandListExecute 。
pfnHsSetShaderResources
指向驱动程序的 HsSetShaderResources 函数的 指针。
pfnHsSetShader
指向驱动程序的 HsSetShader 函数的指针。
pfnHsSetSamplers
指向驱动程序的 HsSetSamplers 函数的 指针。
pfnHsSetConstantBuffers
指向驱动程序的 HsSetConstantBuffers 函数的指针。
pfnDsSetShaderResources
指向驱动程序的 DsSetShaderResources 函数的 指针。
pfnDsSetShader
指向驱动程序的 DsSetShader 函数的指针。
pfnDsSetSamplers
指向驱动程序的 DsSetSamplers 函数的 指针。
pfnDsSetConstantBuffers
指向驱动程序的 DsSetConstantBuffers 函数的指针。
pfnCreateHullShader
指向驱动程序的 CreateHullShader 函数的指针。
pfnCreateDomainShader
指向驱动程序的 CreateDomainShader 函数的指针。
pfnCheckDeferredContextHandleSizes
指向驱动程序的 CheckDeferredContextHandleSizes 函数的 指针。 仅当驱动程序支持D3D11DDICAPS_COMMANDLISTS_BUILD_2功能时,驱动程序才需要实现 CheckDeferredContextHandleSizes 。
pfnCalcDeferredContextHandleSize
指向驱动程序的 CalcDeferredContextHandleSize 函数的指针。 仅当驱动程序支持D3D11DDICAPS_COMMANDLISTS_BUILD_2功能时,驱动程序才需要实现 CalcDeferredContextHandleSize 。
pfnCalcPrivateDeferredContextSize
指向驱动程序的 CalcPrivateDeferredContextSize 函数的指针。 仅当驱动程序支持D3D11DDICAPS_COMMANDLISTS_BUILD_2功能时,驱动程序才需要实现 CalcPrivateDeferredContextSize 。
pfnCreateDeferredContext
指向驱动程序的 CreateDeferredContext 函数的指针。 仅当驱动程序支持D3D11DDICAPS_COMMANDLISTS_BUILD_2功能时,驱动程序才需要实现 CreateDeferredContext 。
pfnAbandonCommandList
指向驱动程序的 AbandonCommandList 函数的指针。 仅当驱动程序支持D3D11DDICAPS_COMMANDLISTS_BUILD_2功能时,驱动程序才需要实现 AbandonCommandList 。
pfnCalcPrivateCommandListSize
指向驱动程序的 CalcPrivateCommandListSize 函数的指针。 仅当驱动程序支持D3D11DDICAPS_COMMANDLISTS_BUILD_2功能时,驱动程序才需要实现 CalcPrivateCommandListSize 。
pfnCreateCommandList
指向驱动程序的 CreateCommandList 函数的指针。 仅当驱动程序支持D3D11DDICAPS_COMMANDLISTS_BUILD_2功能时,驱动程序才需要实现 CreateCommandList 。
pfnDestroyCommandList
指向驱动程序的 DestroyCommandList 函数的指针。 仅当驱动程序支持 D3D11DDICAPS_COMMANDLISTS_BUILD_2 功能时,驱动程序才需要实现 DestroyCommandList 。
pfnCalcPrivateTessellationShaderSize
指向驱动程序的 CalcPrivateTessellationShaderSize 函数的 指针。
pfnPsSetShaderWithIfaces
指向驱动程序的 PsSetShaderWithIfaces 函数的 指针。
pfnVsSetShaderWithIfaces
指向驱动程序的 VsSetShaderWithIfaces 函数的 指针。
pfnGsSetShaderWithIfaces
指向驱动程序的 GsSetShaderWithIfaces 函数的 指针。
pfnHsSetShaderWithIfaces
指向驱动程序的 HsSetShaderWithIfaces 函数的 指针。
pfnDsSetShaderWithIfaces
指向驱动程序的 DsSetShaderWithIfaces 函数的 指针。
pfnCsSetShaderWithIfaces
指向驱动程序的 CsSetShaderWithIfaces 函数的 指针。
pfnCreateComputeShader
指向驱动程序的 CreateComputeShader 函数的指针。
pfnCsSetShader
指向驱动程序的 CsSetShader 函数的指针。
pfnCsSetShaderResources
指向驱动程序的 CsSetShaderResources 函数的 指针。
pfnCsSetSamplers
指向驱动程序的 CsSetSamplers 函数的 指针。
pfnCsSetConstantBuffers
指向驱动程序的 CsSetConstantBuffers 函数的指针。
pfnCalcPrivateUnorderedAccessViewSize
指向驱动程序的 CalcPrivateUnorderedAccessViewSize 函数的指针。
pfnCreateUnorderedAccessView
指向驱动程序的 CreateUnorderedAccessView 函数的指针。
pfnDestroyUnorderedAccessView
指向驱动程序的 DestroyUnorderedAccessView 函数的指针。
pfnClearUnorderedAccessViewUint
指向驱动程序的 ClearUnorderedAccessViewUINT 函数的指针。
pfnClearUnorderedAccessViewFloat
指向驱动程序的 ClearUnorderedAccessViewFLOAT 函数的指针。
pfnCsSetUnorderedAccessViews
指向驱动程序的 CsSetUnorderedAccessViews 函数的 指针。
pfnDispatch
指向驱动程序的 Dispatch 函数的指针。
pfnDispatchIndirect
指向驱动程序的 DispatchIndirect 函数的指针。
pfnSetResourceMinLOD
指向驱动程序的 SetResourceMinLOD 函数的指针。
pfnCopyStructureCount
指向驱动程序的 CopyStructureCount 函数的指针。
pfnRecycleCommandList
指向驱动程序的 RecycleCommandList 函数的指针。
pfnRecycleCreateCommandList
指向驱动程序的 RecycleCreateCommandList 函数的指针。
pfnRecycleCreateDeferredContext
指向驱动程序的 RecycleCreateDeferredContext 函数的指针。
pfnRecycleDestroyCommandList
指向驱动程序的 RecycleDestroyCommandList 函数的指针。
注解
用户模式显示驱动程序函数的顺序 (即,D3D11DDI_DEVICEFUNCS结构) 的成员在性能) 方面按优先级 (的递减顺序排列。
用户模式显示驱动程序可以为这些函数使用不同的名称,因为此结构) (函数表的地址通过调用驱动程序的 CreateDevice (D3D10) 函数在 Direct3D 11 运行时和驱动程序之间共享。
pfnResetPrimitiveID 和 pfnSetVertexPipelineOutput 成员 (未在此处显示) 及其数据类型保留供系统使用,不应在驱动程序中使用。
延迟的上下文
有关未用于延迟上下文的函数的列表,请参阅 排除延迟上下文的 DDI 函数。要求
要求 | 值 |
---|---|
最低受支持的客户端 | 从 Windows 7 操作系统开始支持D3D11DDI_DEVICEFUNCS。 |
标头 | d3d10umddi.h (包括 D3d10umddi.h) |