estructura D3D10_1DDI_DEVICEFUNCS (d3d10umddi.h)
La estructura de D3D10_1DDI_DEVICEFUNCS contiene funciones que un controlador de pantalla en modo de usuario optimizado para el runtime de Microsoft Direct3D versión 10.1 puede implementar para representar primitivos de gráficos y procesar cambios de estado.
Sintaxis
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;
Miembros
pfnDefaultConstantBufferUpdateSubresourceUP
Puntero a la función DefaultConstantBufferUpdateSubresourceUP del controlador.
pfnVsSetConstantBuffers
Puntero a la función VsSetConstantBuffers del controlador.
pfnPsSetShaderResources
Puntero a la función PsSetShaderResources del controlador.
pfnPsSetShader
Puntero a la función PsSetShader del controlador.
pfnPsSetSamplers
Puntero a la función PsSetSamplers del controlador.
pfnVsSetShader
Puntero a la función VsSetShader del controlador.
pfnDrawIndexed
Puntero a la función DrawIndexed del controlador.
pfnDraw
Puntero a la función Draw del controlador.
pfnDynamicIABufferMapNoOverwrite
Puntero a la función ResourceMap del controlador. Para obtener más información sobre si implementar una función DynamicIABufferMapNoOverwrite independiente o apuntar a ResourceMap multipropósito, vea la sección Comentarios de ResourceMap.
pfnDynamicIABufferUnmap
Puntero a la función ResourceUnmap del controlador. Para obtener más información sobre si implementar una función DynamicIABufferUnmap independiente o apuntar a ResourceUnmap multipropósito, vea la sección Comentarios de ResourceMap.
pfnDynamicConstantBufferMapDiscard
Puntero a la función ResourceMap del controlador. Para obtener más información sobre si implementar una función DynamicConstantBufferMapDiscard independiente o apuntar a ResourceMap multipropósito, vea la sección Comentarios de ResourceMap.
pfnDynamicIABufferMapDiscard
Puntero a la función ResourceMap del controlador. Para obtener más información sobre si implementar una función DynamicIABufferMapDiscard independiente o apuntar a ResourceMap multipropósito, vea la sección Comentarios de ResourceMap.
pfnDynamicConstantBufferUnmap
Puntero a la función ResourceUnmap del controlador. Para obtener más información sobre si implementar una función DynamicConstantBufferUnmap independiente o apuntar a ResourceUnmap multipropósito, vea la sección Comentarios de ResourceMap.
pfnPsSetConstantBuffers
Puntero a la función PsSetConstantBuffers del controlador.
pfnIaSetInputLayout
Puntero a la función IaSetInputLayout del controlador.
pfnIaSetVertexBuffers
Puntero a la función IaSetVertexBuffers del controlador.
pfnIaSetIndexBuffer
Puntero a la función IaSetIndexBuffer del controlador.
pfnDrawIndexedInstanced
Puntero a la función DrawIndexedInstanced del controlador.
pfnDrawInstanced
Puntero a la función DrawInstanced del controlador.
pfnDynamicResourceMapDiscard
Puntero a la función ResourceMap del controlador. Para obtener más información sobre si implementar una función DynamicResourceMapDiscard independiente o apuntar a ResourceMap multipropósito, vea la sección Comentarios de ResourceMap.
pfnDynamicResourceUnmap
Puntero a la función ResourceUnmap del controlador. Para obtener más información sobre si implementar una función DynamicResourceUnmap independiente o apuntar a ResourceUnmap multipropósito, vea la sección Comentarios de ResourceMap.
pfnGsSetConstantBuffers
Puntero a la función GsSetConstantBuffers del controlador.
pfnGsSetShader
Puntero a la función GsSetShader del controlador.
pfnIaSetTopology
Puntero a la función IaSetTopology del controlador.
pfnStagingResourceMap
Puntero a la función ResourceMap del controlador. Para obtener más información sobre si implementar una función StagingResourceMap independiente o apuntar a ResourceMap multipropósito, vea la sección Comentarios de ResourceMap.
pfnStagingResourceUnmap
Puntero a la función ResourceUnmap del controlador. Para obtener más información sobre si implementar una función StagingResourceUnmap independiente o apuntar a ResourceUnmap multipropósito, vea la sección Comentarios de ResourceMap.
pfnVsSetShaderResources
Puntero a la función VsSetShaderResources del controlador.
pfnVsSetSamplers
Puntero a la función VsSetSamplers del controlador.
pfnGsSetShaderResources
Puntero a la función GsSetShaderResources del controlador.
pfnGsSetSamplers
Puntero a la función GsSetSamplers del controlador.
pfnSetRenderTargets
Puntero a la función SetRenderTargets del controlador.
pfnShaderResourceViewReadAfterWriteHazard
Puntero a la función ShaderResourceViewReadAfterWriteHazard del controlador.
pfnResourceReadAfterWriteHazard
Puntero a la función ResourceReadAfterWriteHazard del controlador.
pfnSetBlendState
Puntero a la función SetBlendState del controlador.
pfnSetDepthStencilState
Puntero a la función SetDepthStencilState del controlador.
pfnSetRasterizerState
Puntero a la función SetRasterizerState del controlador.
pfnQueryEnd
Puntero a la función QueryEnd del controlador.
pfnQueryBegin
Puntero a la función QueryBegin del controlador.
pfnResourceCopyRegion
Puntero a la función ResourceCopyRegion del controlador.
pfnResourceUpdateSubresourceUP
Puntero a la función ResourceUpdateSubresourceUP del controlador.
pfnSoSetTargets
Puntero a la función SoSetTargets del controlador.
pfnDrawAuto
Puntero a la función DrawAuto del controlador.
pfnSetViewports
Puntero a la función SetViewports del controlador.
pfnSetScissorRects
Puntero a la función SetScissorRects del controlador.
pfnClearRenderTargetView
Puntero a la función ClearRenderTargetView del controlador.
pfnClearDepthStencilView
Puntero a la función ClearDepthStencilView del controlador.
pfnSetPredication
Puntero a la función SetPredication del controlador.
pfnQueryGetData
Puntero a la función QueryGetData del controlador.
pfnFlush
Puntero a la función Flush(D3D10) del controlador.
pfnGenMips
Puntero a la función GenMips del controlador.
pfnResourceCopy
Puntero a la función ResourceCopy del controlador.
pfnResourceResolveSubresource
Puntero a la función ResourceResolveSubresource del controlador.
pfnResourceMap
Puntero a la función ResourceMap del controlador.
pfnResourceUnmap
Puntero a la función ResourceUnmap del controlador.
pfnResourceIsStagingBusy
Puntero a la función ResourceIsStagingBusy del controlador.
pfnRelocateDeviceFuncs
Puntero a la función RelocateDeviceFuncs(D3D10_1) del controlador.
pfnCalcPrivateResourceSize
Puntero a la función CalcPrivateResourceSize del controlador.
pfnCalcPrivateOpenedResourceSize
Puntero a la función CalcPrivateOpenedResourceSize del controlador.
pfnCreateResource
Puntero a la función CreateResource(D3D10) del controlador.
pfnOpenResource
Puntero a la función OpenResource(D3D10) del controlador.
pfnDestroyResource
Puntero a la función DestroyResource(D3D10) del controlador.
pfnCalcPrivateShaderResourceViewSize
Puntero a la función CalcPrivateShaderResourceViewSize(D3D10_1) del controlador.
pfnCreateShaderResourceView
Puntero a la función CreateShaderResourceView(D3D10_1) del controlador.
pfnDestroyShaderResourceView
Puntero a la función DestroyShaderResourceView del controlador.
pfnCalcPrivateRenderTargetViewSize
Puntero a la función CalcPrivateRenderTargetViewSize del controlador.
pfnCreateRenderTargetView
Puntero a la función CreateRenderTargetView del controlador.
pfnDestroyRenderTargetView
Puntero a la función DestroyRenderTargetView del controlador.
pfnCalcPrivateDepthStencilViewSize
Puntero a la función CalcPrivateDepthStencilViewSize del controlador.
pfnCreateDepthStencilView
Puntero a la función CreateDepthStencilView del controlador.
pfnDestroyDepthStencilView
Puntero a la función DestroyDepthStencilView del controlador.
pfnCalcPrivateElementLayoutSize
Puntero a la función CalcPrivateElementLayoutSize del controlador.
pfnCreateElementLayout
Puntero a la función CreateElementLayout del controlador.
pfnDestroyElementLayout
Puntero a la función DestroyElementLayout del controlador.
pfnCalcPrivateBlendStateSize
Puntero a la función CalcPrivateBlendStateSize(D3D10_1) del controlador.
pfnCreateBlendState
Puntero a la función CreateBlendState(D3D10_1) del controlador.
pfnDestroyBlendState
Puntero a la función DestroyBlendState del controlador.
pfnCalcPrivateDepthStencilStateSize
Puntero a la función CalcPrivateDepthStencilStateSize del controlador.
pfnCreateDepthStencilState
Puntero a la función CreateDepthStencilState del controlador.
pfnDestroyDepthStencilState
Puntero a la función DestroyDepthStencilState del controlador.
pfnCalcPrivateRasterizerStateSize
Puntero a la función CalcPrivateRasterizerStateSize del controlador.
pfnCreateRasterizerState
Puntero a la función CreateRasterizerState del controlador.
pfnDestroyRasterizerState
Puntero a la función DestroyRasterizerState del controlador.
pfnCalcPrivateShaderSize
Puntero a la función CalcPrivateShaderSize del controlador.
pfnCreateVertexShader
Puntero a la función CreateVertexShader(D3D10) del controlador.
pfnCreateGeometryShader
Puntero a la función CreateGeometryShader del controlador.
pfnCreatePixelShader
Puntero a la función CreatePixelShader(D3D10) del controlador.
pfnCalcPrivateGeometryShaderWithStreamOutput
Puntero a la función CalcPrivateGeometryShaderWithStreamOutput del controlador.
pfnCreateGeometryShaderWithStreamOutput
Puntero a la función CreateGeometryShaderWithStreamOutput del controlador.
pfnDestroyShader
Puntero a la función DestroyShader del controlador.
pfnCalcPrivateSamplerSize
Puntero a la función CalcPrivateSamplerSize del controlador.
pfnCreateSampler
Puntero a la función CreateSampler del controlador.
pfnDestroySampler
Puntero a la función DestroySampler del controlador.
pfnCalcPrivateQuerySize
Puntero a la función CalcPrivateQuerySize del controlador.
pfnCreateQuery
Puntero a la función CreateQuery(D3D10) del controlador.
pfnDestroyQuery
Puntero a la función DestroyQuery(D3D10) del controlador.
pfnCheckFormatSupport
Puntero a la función CheckFormatSupport del controlador.
pfnCheckMultisampleQualityLevels
Puntero a la función CheckMultisampleQualityLevels del controlador.
pfnCheckCounterInfo
Puntero a la función CheckCounterInfo del controlador.
pfnCheckCounter
Puntero a la función CheckCounter del controlador.
pfnDestroyDevice
Puntero a la función DestroyDevice(D3D10) del controlador.
pfnSetTextFilterSize
Puntero a la función SetTextFilterSize del controlador.
pfnResourceConvert
Puntero a la función ResourceCopy del controlador. Para obtener más información sobre si implementar una función ResourceConvert independiente o apuntar a ResourceCopy multipropósito, consulte la sección Comentarios de ResourceCopy.
pfnResourceConvertRegion
Puntero a la función ResourceCopyRegion del controlador. Para obtener más información sobre si implementar una función ResourceConvertRegion independiente o apuntar a ResourceCopyRegion multipropósito, consulte la sección Comentarios de ResourceCopyRegion.
pfnResetPrimitiveID
pfnSetVertexPipelineOutput
Comentarios
El orden de las funciones del controlador de visualización en modo de usuario (es decir, el orden de los miembros de la estructura D3D10_1DDI_DEVICEFUNCS) está disminuyendo el orden de prioridad (en lo que respecta al rendimiento).
El controlador de pantalla en modo de usuario puede usar nombres diferentes para estas funciones porque la dirección de la tabla de funciones (esta estructura) se comparte entre el entorno de ejecución de Direct3D 10.1 y el controlador a través de la llamada a la función CreateDevice(D3D10) del controlador.
Los miembros pfnResetPrimitiveID y pfnSetVertexPipelineOutput (no se muestran aquí) y sus tipos de datos están reservados para uso del sistema y no deben usarse en el controlador.
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | D3D10_1DDI_DEVICEFUNCS se admite en Windows Vista con Service Pack 1 (SP1) y versiones posteriores y Windows Server 2008 y versiones posteriores. |
Encabezado | d3d10umddi.h (incluya D3d10umddi.h) |