Поделиться через


Метод ID3DXSprite::Begin

Подготавливает устройство для рисования спрайтов.

Синтаксис

HRESULT Begin(
  [in] DWORD Flags
);

Параметры

Флаги [in]

Тип: DWORD

Сочетание 0 или более флагов, описывающих параметры отрисовки спрайта. Для этого метода допустимыми флагами являются:

  • D3DXSPRITE_ALPHABLEND
  • D3DXSPRITE__BILLBOARD
  • D3DXSPRITE_DONOTMODIFY_RENDERSTATE
  • D3DXSPRITE_DONOTSAVESTATE
  • D3DXSPRITE_OBJECTSPACE
  • D3DXSPRITE__SORT_DEPTH_BACKTOFRONT
  • D3DXSPRITE__SORT_DEPTH_FRONTTOBACK
  • D3DXSPRITE__SORT_TEXTURE

Описание флагов и сведения об управлении отслеживанием состояния устройства и преобразованиями представлений устройств см. в разделе D3DXSPRITE.

Возвращаемое значение

Тип: HRESULT

Если метод выполнен успешно, возвращаемое значение будет S_OK. В случае сбоя метода возвращается одно из следующих значений: D3DERR_INVALIDCALL, D3DERR_OUTOFVIDEOMEMORY, D3DXERR_INVALIDDATA E_OUTOFMEMORY.

Комментарии

Этот метод должен вызываться из IDirect3DDevice9::BeginScene . . . Последовательность IDirect3DDevice9::EndScene . ID3DXSprite::Begin нельзя использовать в качестве замены для IDirect3DDevice9::BeginScene или ID3DXRenderToSurface::BeginScene.

Этот метод задает следующие состояния на устройстве.

Состояния отрисовки:

Type (D3DRENDERSTATETYPE) Значение
D3DRS_ALPHABLENDENABLE TRUE
D3DRS_ALPHAFUNC D3DCMP_GREATER
D3DRS_ALPHAREF 0x00
D3DRS_ALPHATESTENABLE AlphaCmpCaps
D3DRS_BLENDOP D3DBLENDOP_ADD
D3DRS_CLIPPING TRUE
D3DRS_CLIPPLANEENABLE Ложь.
D3DRS_COLORWRITEENABLE D3DCOLORWRITEENABLE_ALPHA | D3DCOLORWRITEENABLE_BLUE | D3DCOLORWRITEENABLE_GREEN | D3DCOLORWRITEENABLE_RED
D3DRS_CULLMODE D3DCULL_NONE
D3DRS_DESTBLEND D3DBLEND_INVSRCALPHA
D3DRS_DIFFUSEMATERIALSOURCE D3DMCS_COLOR1
D3DRS_ENABLEADAPTIVETESSELLATION Ложь.
D3DRS_FILLMODE D3DFILL_SOLID
D3DRS_FOGENABLE Ложь.
D3DRS_INDEXEDVERTEXBLENDENABLE Ложь.
D3DRS_LIGHTING Ложь.
D3DRS_RANGEFOGENABLE Ложь.
D3DRS_SEPARATEALPHABLENDENABLE Ложь.
D3DRS_SHADEMODE D3DSHADE_GOURAUD
D3DRS_SPECULARENABLE Ложь.
D3DRS_SRCBLEND D3DBLEND_SRCALPHA
D3DRS_SRGBWRITEENABLE Ложь.
D3DRS_STENCILENABLE Ложь.
D3DRS_VERTEXBLEND Ложь.
D3DRS_WRAP0 0

 

Состояния стадии текстуры:

Идентификатор этапа Type (D3DTEXTURESTAGESTATETYPE) Значение
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

 

Состояния выборки:

Индекс этапа выборки Type (D3DSAMPLERSTATETYPE) Значение
0 D3DSAMP_ADDRESSU D3DTADDRESS_CLAMP
0 D3DSAMP_ADDRESSV D3DTADDRESS_CLAMP
0 D3DSAMP_MAGFILTER D3DTEXF_ANISOTROPIC, содержит ли TextureFilterCaps D3DPTFILTERCAPS_MAGFANISOTROPIC; в противном случае D3DTEXF_LINEAR
0 D3DSAMP_MAXMIPLEVEL 0
0 D3DSAMP_MAXANISOTROPY MaxAnisotropy
0 D3DSAMP_MINFILTER D3DTEXF_ANISOTROPIC, содержит ли TextureFilterCaps D3DPTFILTERCAPS_MINFANISOTROPIC; в противном случае D3DTEXF_LINEAR
0 D3DSAMP_MIPFILTER D3DTEXF_LINEAR, содержит ли TextureFilterCaps D3DPTFILTERCAPS_MIPFLINEAR; в противном случае D3DTEXF_POINT
0 D3DSAMP_MIPMAPLODBIAS 0
0 D3DSAMP_SRGBTEXTURE 0

 

Примечание

Этот метод отключает N-исправления.

 

Требования

Требование Значение
Заголовок
D3dx9core.h
Библиотека
D3dx9.lib

См. также раздел

ID3DXSprite

D3DXSPRITE