The IDirect3DDevice2::BeginIndexed method defines the start of a primitive based on indexing into an array of vertices. This method fails if it is called after a call to the IDirect3DDevice2::Begin or IDirect3DDevice2::BeginIndexed method that has no corresponding call to IDirect3DDevice2::End. The only method you can legally call between calls to IDirect3DDevice2::BeginIndexed and IDirect3DDevice2::End is IDirect3DDevice2::Index.
HRESULT BeginIndexed(
D3DPRIMITIVETYPE dptPrimitiveType,
D3DVERTEXTYPE dvtVertexType,
LPVOID lpvVertices,
DWORD dwNumVertices,
DWORD dwFlags
);
D3DDP_DONOTCLIP | The application has already done the required clipping, so the system should not necessarily clip the primitives. (This flag is a hint; the system may clip the primitive even when this flag is specified, under some circumstances.) |
D3DDP_DONOTUPDATEEXTENTS | Disables the updating of the screen rectangle affected by this rendering call. Using this flag can potentially help performance, but the extents returned by IDirect3DDevice2::GetClipStatus will not have been updated to account for the data rendered by this call. |
D3DDP_OUTOFORDER | A hint to the system that the primitives can be rendered out of order. Note that back-to-back calls to DrawPrimitive methods using this flag may cause triangles from the primitives to be interleaved. The DrawPrimitive methods that use this flag are Begin, BeginIndexed, DrawIndexedPrimitive, and DrawPrimitive. |
D3DDP_WAIT | Causes the method to wait until the polygons have been rendered before it returns, instead of returning as soon as the polygons have been sent to the card. (On scene-capture cards, the method returns as soon as the card responds.) This flag is typically used for debugging. Applications should not attempt to use this flag to ensure that a scene is up-to-date before continuing. |
If the method succeeds, the return value is DD_OK.
If the method fails, the return value may be one of the following values:
D3DERR_INVALIDRAMPTEXTURE | Ramp mode is being used and the texture handle in the current material does not match the current texture handle that is set as a render state. |
DDERR_INVALIDPARAMS | One of the arguments is invalid. |
This method was first introduced in the IDirect3DDevice2 interface.
Windows NT: Use version 5.0 or later.
Windows: Use Windows 95 or later. Available as a redistributable for Windows 95.
Windows CE: Unsupported.
Header: Declared in d3d.h.
Import Library: Use ddraw.lib.
IDirect3DDevice2::Begin, IDirect3DDevice2::End, IDirect3DDevice2::Index