IDirect3DRMProgressiveMesh::SetFaceDetail

Sets the requested level of face detail.


HRESULT SetFaceDetail(
DWORD dwCount
)

Parameters

dwCount

The number of faces requested.

Return Values

Returns DD_OK if successful, or one of the following errors:

D3DRMERR_BADPMDATA

D3DRMERR_CONNECTIONLOST

D3DRMERR_INVALIDDATA

D3DRMERR_INVALIDOBJECT

D3DRMERR_INVALIDPARAMS

D3DRMERR_PENDING

D3DRMERR_REQUESTTOOLARGE

Remarks

Sometimes it is not possible to set the progressive mesh to the number of faces requested, though it will always be within 1 of the requested value. This is because a vertex split can add 1 or 2 faces. For example, if you call SetFaceDetail(20), the progressive mesh may only be able to set the face detail to 19 or 21. You can always get the actual number of faces in the progressive mesh by calling the IDirect3DRMProgressiveMesh::GetFaceDetail method.

If not enough detail has been downloaded yet (but will be available), the request is be acknowledged and D3DRMERR_PENDING is returned. This error is informational and simply indicates that the requested level will be set as soon as enough detail is available. If the detail requested is greater that the detail available in the progressive mesh then D3DRMERR_REQUESTTOOLARGE is returned.

See Also

IDirect3DRMProgressiveMesh::GetFaceDetail