struktur D3D10_1DDI_DEVICEFUNCS (d3d10umddi.h)

Struktur D3D10_1DDI_DEVICEFUNCS berisi fungsi yang dapat diterapkan driver tampilan mode pengguna yang dioptimalkan untuk runtime Microsoft Direct3D versi 10.1 untuk merender primitif grafis dan memproses perubahan status.

Sintaks

typedef struct D3D10_1DDI_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;
  PFND3D10DDI_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;
  PFND3D10_1DDI_RELOCATEDEVICEFUNCS                     pfnRelocateDeviceFuncs;
  PFND3D10DDI_CALCPRIVATERESOURCESIZE                   pfnCalcPrivateResourceSize;
  PFND3D10DDI_CALCPRIVATEOPENEDRESOURCESIZE             pfnCalcPrivateOpenedResourceSize;
  PFND3D10DDI_CREATERESOURCE                            pfnCreateResource;
  PFND3D10DDI_OPENRESOURCE                              pfnOpenResource;
  PFND3D10DDI_DESTROYRESOURCE                           pfnDestroyResource;
  PFND3D10_1DDI_CALCPRIVATESHADERRESOURCEVIEWSIZE       pfnCalcPrivateShaderResourceViewSize;
  PFND3D10_1DDI_CREATESHADERRESOURCEVIEW                pfnCreateShaderResourceView;
  PFND3D10DDI_DESTROYSHADERRESOURCEVIEW                 pfnDestroyShaderResourceView;
  PFND3D10DDI_CALCPRIVATERENDERTARGETVIEWSIZE           pfnCalcPrivateRenderTargetViewSize;
  PFND3D10DDI_CREATERENDERTARGETVIEW                    pfnCreateRenderTargetView;
  PFND3D10DDI_DESTROYRENDERTARGETVIEW                   pfnDestroyRenderTargetView;
  PFND3D10DDI_CALCPRIVATEDEPTHSTENCILVIEWSIZE           pfnCalcPrivateDepthStencilViewSize;
  PFND3D10DDI_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;
  PFND3D10DDI_CALCPRIVATEGEOMETRYSHADERWITHSTREAMOUTPUT pfnCalcPrivateGeometryShaderWithStreamOutput;
  PFND3D10DDI_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;
} D3D10_1DDI_DEVICEFUNCS;

Anggota

pfnDefaultConstantBufferUpdateSubresourceUP

Penunjuk ke fungsi DefaultConstantBufferUpdateSubresourceUP driver.

pfnVsSetConstantBuffers

Penunjuk ke fungsi VsSetConstantBuffers driver.

pfnPsSetShaderResources

Penunjuk ke fungsi PsSetShaderResources driver.

pfnPsSetShader

Penunjuk ke fungsi PsSetShader driver.

pfnPsSetSamplers

Penunjuk ke fungsi PsSetSamplers driver.

pfnVsSetShader

Penunjuk ke fungsi VsSetShader driver.

pfnDrawIndexed

Penunjuk ke fungsi DrawIndexed driver.

pfnDraw

Penunjuk ke fungsi Gambar driver.

pfnDynamicIABufferMapNoOverwrite

Penunjuk ke fungsi ResourceMap driver. Untuk informasi selengkapnya tentang apakah akan menerapkan fungsi DynamicIABufferMapNoOverwrite terpisah atau mengarahkan ke ResourceMap multiguna, lihat bagian Keterangan dari ResourceMap.

pfnDynamicIABufferUnmap

Penunjuk ke fungsi ResourceUnmap driver. Untuk informasi selengkapnya tentang apakah akan mengimplementasikan fungsi DynamicIABufferUnmap terpisah atau untuk menunjuk ke ResourceUnmap multiguna, lihat bagian Keterangan dari ResourceMap.

pfnDynamicConstantBufferMapDiscard

Penunjuk ke fungsi ResourceMap driver. Untuk informasi selengkapnya tentang apakah akan mengimplementasikan fungsi DynamicConstantBufferMapDiscard terpisah atau untuk menunjuk ke ResourceMap multiguna, lihat bagian Keterangan dari ResourceMap.

pfnDynamicIABufferMapDiscard

Penunjuk ke fungsi ResourceMap driver. Untuk informasi selengkapnya tentang apakah akan menerapkan fungsi DynamicIABufferMapDiscard terpisah atau mengarahkan ke ResourceMap multiguna, lihat bagian Keterangan resourceMap.

pfnDynamicConstantBufferUnmap

Penunjuk ke fungsi ResourceUnmap driver. Untuk informasi selengkapnya tentang apakah akan menerapkan fungsi DynamicConstantBufferUnmap terpisah atau untuk menunjuk ke ResourceUnmap multiguna, lihat bagian Keterangan dari ResourceMap.

pfnPsSetConstantBuffers

Penunjuk ke fungsi PsSetConstantBuffers driver.

pfnIaSetInputLayout

Penunjuk ke fungsi IaSetInputLayout driver.

pfnIaSetVertexBuffers

Penunjuk ke fungsi IaSetVertexBuffers driver.

pfnIaSetIndexBuffer

Penunjuk ke fungsi IaSetIndexBuffer driver.

pfnDrawIndexedInstanced

Penunjuk ke fungsi DrawIndexedInstanced driver.

pfnDrawInstanced

Penunjuk ke fungsi DrawInstanced driver.

pfnDynamicResourceMapDiscard

Penunjuk ke fungsi ResourceMap driver. Untuk informasi selengkapnya tentang apakah akan menerapkan fungsi DynamicResourceMapDiscard terpisah atau untuk menunjuk ke ResourceMap multiguna, lihat bagian Keterangan resourceMap.

pfnDynamicResourceUnmap

Penunjuk ke fungsi ResourceUnmap driver. Untuk informasi selengkapnya tentang apakah akan menerapkan fungsi DynamicResourceUnmap terpisah atau mengarah ke ResourceUnmap multiguna, lihat bagian Keterangan resourceMap.

pfnGsSetConstantBuffers

Penunjuk ke fungsi GsSetConstantBuffers driver.

pfnGsSetShader

Penunjuk ke fungsi GsSetShader driver.

pfnIaSetTopology

Penunjuk ke fungsi IaSetTopology driver.

pfnStagingResourceMap

Penunjuk ke fungsi ResourceMap driver. Untuk informasi selengkapnya tentang apakah akan mengimplementasikan fungsi StagingResourceMap terpisah atau untuk mengarahkan ke ResourceMap multiguna, lihat bagian Keterangan dari ResourceMap.

pfnStagingResourceUnmap

Penunjuk ke fungsi ResourceUnmap driver. Untuk informasi selengkapnya tentang apakah akan menerapkan fungsi StagingResourceUnmap terpisah atau untuk menunjuk ke ResourceUnmap multiguna, lihat bagian Keterangan resourceMap.

pfnVsSetShaderResources

Penunjuk ke fungsi VsSetShaderResources driver.

pfnVsSetSamplers

Penunjuk ke fungsi VsSetSamplers driver.

pfnGsSetShaderResources

Penunjuk ke fungsi GsSetShaderResources driver.

pfnGsSetSamplers

Penunjuk ke fungsi GsSetSamplers driver.

pfnSetRenderTargets

Penunjuk ke fungsi SetRenderTargets driver.

pfnShaderResourceViewReadAfterWriteHazard

Penunjuk ke fungsi ShaderResourceViewReadAfterWriteHazard driver.

pfnResourceReadAfterWriteHazard

Penunjuk ke fungsi ResourceReadAfterWriteHazard driver.

pfnSetBlendState

Penunjuk ke fungsi SetBlendState driver.

pfnSetDepthStencilState

Penunjuk ke fungsi SetDepthStencilState driver.

pfnSetRasterizerState

Penunjuk ke fungsi SetRasterizerState driver.

pfnQueryEnd

Penunjuk ke fungsi QueryEnd driver.

pfnQueryBegin

Penunjuk ke fungsi QueryBegin driver.

pfnResourceCopyRegion

Penunjuk ke fungsi ResourceCopyRegion driver.

pfnResourceUpdateSubresourceUP

Penunjuk ke fungsi ResourceUpdateSubresourceUP driver.

pfnSoSetTargets

Penunjuk ke fungsi SoSetTargets driver.

pfnDrawAuto

Penunjuk ke fungsi DrawAuto driver.

pfnSetViewports

Penunjuk ke fungsi SetViewports driver.

pfnSetScissorRects

Penunjuk ke fungsi SetScissorRects driver.

pfnClearRenderTargetView

Penunjuk ke fungsi ClearRenderTargetView driver.

pfnClearDepthStencilView

Penunjuk ke fungsi ClearDepthStencilView driver.

pfnSetPredication

Penunjuk ke fungsi SetPredication driver.

pfnQueryGetData

Penunjuk ke fungsi QueryGetData driver.

pfnFlush

Penunjuk ke fungsi Flush (D3D10) driver.

pfnGenMips

Penunjuk ke fungsi GenMips driver.

pfnResourceCopy

Penunjuk ke fungsi ResourceCopy driver.

pfnResourceResolveSubresource

Penunjuk ke fungsi ResourceResolveSubresource driver.

pfnResourceMap

Penunjuk ke fungsi ResourceMap driver.

pfnResourceUnmap

Penunjuk ke fungsi ResourceUnmap driver.

pfnResourceIsStagingBusy

Penunjuk ke fungsi ResourceIsStagingBusy driver.

pfnRelocateDeviceFuncs

Penunjuk ke fungsi RelocateDeviceFuncs (D3D10_1) driver.

pfnCalcPrivateResourceSize

Penunjuk ke fungsi CalcPrivateResourceSize driver.

pfnCalcPrivateOpenedResourceSize

Penunjuk ke fungsi CalcPrivateOpenedResourceSize driver.

pfnCreateResource

Penunjuk ke fungsi CreateResource (D3D10) driver.

pfnOpenResource

Penunjuk ke fungsi OpenResource (D3D10) driver.

pfnDestroyResource

Penunjuk ke fungsi DestroyResource (D3D10) driver.

pfnCalcPrivateShaderResourceViewSize

Penunjuk ke fungsi CalcPrivateShaderResourceViewSize(D3D10_1) driver.

pfnCreateShaderResourceView

Penunjuk ke fungsi CreateShaderResourceView (D3D10_1) driver.

pfnDestroyShaderResourceView

Penunjuk ke fungsi DestroyShaderResourceView driver.

pfnCalcPrivateRenderTargetViewSize

Penunjuk ke fungsi CalcPrivateRenderTargetViewSize driver.

pfnCreateRenderTargetView

Penunjuk ke fungsi CreateRenderTargetView driver.

pfnDestroyRenderTargetView

Penunjuk ke fungsi DestroyRenderTargetView driver.

pfnCalcPrivateDepthStencilViewSize

Penunjuk ke fungsi CalcPrivateDepthStencilViewSize driver.

pfnCreateDepthStencilView

Penunjuk ke fungsi CreateDepthStencilView driver.

pfnDestroyDepthStencilView

Penunjuk ke fungsi DestroyDepthStencilView driver.

pfnCalcPrivateElementLayoutSize

Penunjuk ke fungsi CalcPrivateElementLayoutSize driver.

pfnCreateElementLayout

Penunjuk ke fungsi CreateElementLayout driver.

pfnDestroyElementLayout

Penunjuk ke fungsi DestroyElementLayout driver.

pfnCalcPrivateBlendStateSize

Penunjuk ke fungsi CalcPrivateBlendStateSize(D3D10_1) driver.

pfnCreateBlendState

Penunjuk ke fungsi CreateBlendState(D3D10_1) driver.

pfnDestroyBlendState

Penunjuk ke fungsi DestroyBlendState driver.

pfnCalcPrivateDepthStencilStateSize

Penunjuk ke fungsi CalcPrivateDepthStencilStateSize driver.

pfnCreateDepthStencilState

Penunjuk ke fungsi CreateDepthStencilState driver.

pfnDestroyDepthStencilState

Penunjuk ke fungsi DestroyDepthStencilState driver.

pfnCalcPrivateRasterizerStateSize

Penunjuk ke fungsi CalcPrivateRasterizerStateSize driver.

pfnCreateRasterizerState

Penunjuk ke fungsi CreateRasterizerState driver.

pfnDestroyRasterizerState

Penunjuk ke fungsi DestroyRasterizerState driver.

pfnCalcPrivateShaderSize

Penunjuk ke fungsi CalcPrivateShaderSize driver.

pfnCreateVertexShader

Penunjuk ke fungsi CreateVertexShader (D3D10) driver.

pfnCreateGeometryShader

Penunjuk ke fungsi CreateGeometryShader driver.

pfnCreatePixelShader

Penunjuk ke fungsi CreatePixelShader (D3D10) driver.

pfnCalcPrivateGeometryShaderWithStreamOutput

Penunjuk ke fungsi CalcPrivateGeometryShaderWithStreamOutput driver.

pfnCreateGeometryShaderWithStreamOutput

Penunjuk ke fungsi CreateGeometryShaderWithStreamOutput driver.

pfnDestroyShader

Penunjuk ke fungsi DestroyShader driver.

pfnCalcPrivateSamplerSize

Penunjuk ke fungsi CalcPrivateSamplerSize driver.

pfnCreateSampler

Penunjuk ke fungsi CreateSampler driver.

pfnDestroySampler

Penunjuk ke fungsi DestroySampler driver.

pfnCalcPrivateQuerySize

Penunjuk ke fungsi CalcPrivateQuerySize driver.

pfnCreateQuery

Penunjuk ke fungsi CreateQuery (D3D10) driver.

pfnDestroyQuery

Penunjuk ke fungsi DestroyQuery (D3D10) driver.

pfnCheckFormatSupport

Penunjuk ke fungsi CheckFormatSupport driver.

pfnCheckMultisampleQualityLevels

Penunjuk ke fungsi CheckMultisampleQualityLevels driver.

pfnCheckCounterInfo

Penunjuk ke fungsi CheckCounterInfo driver.

pfnCheckCounter

Penunjuk ke fungsi CheckCounter driver.

pfnDestroyDevice

Penunjuk ke fungsi DestroyDevice (D3D10) driver.

pfnSetTextFilterSize

Penunjuk ke fungsi SetTextFilterSize driver.

pfnResourceConvert

Penunjuk ke fungsi ResourceCopy driver. Untuk informasi selengkapnya tentang apakah akan menerapkan fungsi ResourceConvert terpisah atau mengarah ke ResourceCopy multiguna, lihat bagian Keterangan resourceCopy.

pfnResourceConvertRegion

Penunjuk ke fungsi ResourceCopyRegion driver. Untuk informasi selengkapnya tentang apakah akan menerapkan fungsi ResourceConvertRegion terpisah atau mengarahkan ke ResourceCopyRegion multiguna, lihat bagian Keterangan dari ResourceCopyRegion.

pfnResetPrimitiveID

pfnSetVertexPipelineOutput

Keterangan

Urutan fungsi driver tampilan mode pengguna (yaitu, urutan anggota struktur D3D10_1DDI_DEVICEFUNCS) berada dalam urutan prioritas yang menurun (sehubungan dengan performa).

Driver tampilan mode pengguna dapat menggunakan nama yang berbeda untuk fungsi-fungsi ini karena alamat tabel fungsi (struktur ini) dibagikan antara runtime Direct3D 10.1 dan driver melalui panggilan ke fungsi CreateDevice (D3D10) driver.

Anggota pfnResetPrimitiveID dan pfnSetVertexPipelineOutput (tidak ditampilkan di sini) dan jenis datanya dicadangkan untuk penggunaan sistem dan tidak boleh digunakan di driver Anda.

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung D3D10_1DDI_DEVICEFUNCS didukung pada Windows Vista dengan Paket Layanan 1 (SP1) dan versi yang lebih baru dan Windows Server 2008 dan versi yang lebih baru.
Header d3d10umddi.h (termasuk D3d10umddi.h)

Lihat juga

CreateDevice(D3D10)

D3D10DDIARG_CREATEDEVICE