![]() |
![]() |
![]() |
Prepares a device for drawing sprites.
Syntax
HRESULT Begin(
DWORD Flags );
Parameters
- Flags
- [in] Combination of zero or more flags that describe sprite rendering options. For this method, the valid flags are:
For a description of the flags and for information on how to control device state capture and device view transforms, see D3DXSPRITE.
- D3DXSPRITE_ALPHABLEND
- D3DXSPRITE_BILLBOARD
- D3DXSPRITE_DONOTMODIFY_RENDERSTATE
- D3DXSPRITE_DONOTSAVESTATE
- D3DXSPRITE_OBJECTSPACE
- D3DXSPRITE_SORT_DEPTH_BACKTOFRONT
- D3DXSPRITE_SORT_DEPTH_FRONTTOBACK
- D3DXSPRITE_SORT_TEXTURE
Return Value
If the method succeeds, the return value is S_OK.
If the method fails, the return value can be one of the following:
D3DERR_INVALIDCALL The method call is invalid. For example, a method's parameter may have an invalid value. D3DERR_OUTOFVIDEOMEMORY Microsoft Direct3D does not have enough display memory to perform the operation. D3DXERR_INVALIDDATA The data is invalid. E_OUTOFMEMORY Direct3D could not allocate sufficient memory to complete the call.
Remarks
This method must be called from inside a IDirect3DDevice9::BeginScene . . . IDirect3DDevice9::EndScene sequence. ID3DXSprite::Begin cannot be used as a substitute for either IDirect3DDevice9::BeginScene or ID3DXRenderToSurface::BeginScene.
This method will set the following states on the device.Render States:
Type (D3DRENDERSTATETYPE) Value D3DRS_ALPHABLENDENABLE TRUE D3DRS_ALPHAFUNC D3DCMP_GREATER D3DRS_ALPHAREF 0x00 D3DRS_ALPHATESTENABLE AlphaCmpCaps D3DRS_BLENDOP D3DBLENDOP_ADD D3DRS_CLIPPING TRUE D3DRS_CLIPPLANEENABLE FALSE D3DRS_COLORWRITEENABLE D3DCOLORWRITEENABLE_ALPHA | D3DCOLORWRITEENABLE_BLUE | D3DCOLORWRITEENABLE_GREEN | D3DCOLORWRITEENABLE_RED D3DRS_CULLMODE D3DCULL_NONE D3DRS_DESTBLEND D3DBLEND_INVSRCALPHA D3DRS_DIFFUSEMATERIALSOURCE D3DMCS_COLOR1 D3DRS_ENABLEADAPTIVETESSELLATION FALSE D3DRS_FILLMODE D3DFILL_SOLID D3DRS_FOGENABLE FALSE D3DRS_INDEXEDVERTEXBLENDENABLE FALSE D3DRS_LIGHTING FALSE D3DRS_RANGEFOGENABLE FALSE D3DRS_SEPARATEALPHABLENDENABLE FALSE D3DRS_SHADEMODE D3DSHADE_GOURAUD D3DRS_SPECULARENABLE FALSE D3DRS_SRCBLEND D3DBLEND_SRCALPHA D3DRS_SRGBWRITEENABLE FALSE D3DRS_STENCILENABLE FALSE D3DRS_VERTEXBLEND FALSE D3DRS_WRAP0 0 Texture Stage States:
Stage Identifier Type (D3DTEXTURESTAGESTATETYPE) Value 0 D3DTSS_ALPHAARG1 D3DTA_TEXTURE 0 D3DTSS_ALPHAARG2 D3DTA_DIFFUSE 0 D3DTSS_ALPHAOP D3DTOP_MODULATE 0 D3DTSS_COLORARG1 D3DTA_TEXTURE 0 D3DTSS_COLORARG2 D3DTA_DIFFUSE 0 D3DTSS_COLOROP D3DTOP_MODULATE 0 D3DTSS_TEXCOORDINDEX 0 0 D3DTSS_TEXTURETRANSFORMFLAGS D3DTTFF_DISABLE 1 D3DTSS_ALPHAOP D3DTOP_DISABLE 1 D3DTSS_COLOROP D3DTOP_DISABLE Sampler States:
Sampler Stage Index Type (D3DSAMPLERSTATETYPE) Value 0 D3DSAMP_ADDRESSU D3DTADDRESS_CLAMP 0 D3DSAMP_ADDRESSV D3DTADDRESS_CLAMP 0 D3DSAMP_MAGFILTER D3DTEXF_ANISOTROPIC if TextureFilterCaps includes D3DPTFILTERCAPS_MAGFANISOTROPIC; otherwise D3DTEXF_LINEAR 0 D3DSAMP_MAXMIPLEVEL 0 0 D3DSAMP_MAXANISOTROPY MaxAnisotropy 0 D3DSAMP_MINFILTER D3DTEXF_ANISOTROPIC if TextureFilterCaps includes D3DPTFILTERCAPS_MINFANISOTROPIC; otherwise D3DTEXF_LINEAR 0 D3DSAMP_MIPFILTER D3DTEXF_LINEAR if TextureFilterCaps includes D3DPTFILTERCAPS_MIPFLINEAR; otherwise D3DTEXF_POINT 0 D3DSAMP_MIPMAPLODBIAS 0 0 D3DSAMP_SRGBTEXTURE 0 Note This method disables N-patches.
See Also
ID3DXSprite::End, D3DXSPRITE