D3DDEVICEDESC_V1 구조체(d3dhal.h)
D3DDeviceDesc_V1 DirectX 8.0 이상 버전에서는 사용되지 않습니다. 설명을 참조하세요. 이 구조는 디바이스의 3D 기능을 설명합니다.
구문
typedef struct _D3DDeviceDesc_V1 {
DWORD dwSize;
DWORD dwFlags;
D3DCOLORMODEL dcmColorModel;
DWORD dwDevCaps;
D3DTRANSFORMCAPS dtcTransformCaps;
BOOL bClipping;
D3DLIGHTINGCAPS dlcLightingCaps;
D3DPRIMCAPS dpcLineCaps;
D3DPRIMCAPS dpcTriCaps;
DWORD dwDeviceRenderBitDepth;
DWORD dwDeviceZBufferBitDepth;
DWORD dwMaxBufferSize;
DWORD dwMaxVertexCount;
} D3DDEVICEDESC_V1, *LPD3DDEVICEDESC_V1;
멤버
dwSize
이 D3DDEVICEDESC_V1 구조체의 크기(바이트)를 지정합니다.
dwFlags
유효한 데이터를 포함하는 이 구조체의 멤버를 식별합니다. 이 멤버는 다음 값 중 비트 OR일 수 있습니다.
값 | 의미 |
---|---|
D3DDD_BCLIPPING | bClipping 멤버에는 유효한 데이터가 포함됩니다. |
D3DDD_COLORMODEL | dcmColorModel 멤버는 유효한 데이터를 포함합니다. |
D3DDD_DEVCAPS | dwDevCaps 멤버에 유효한 데이터가 포함되어 있습니다. |
D3DDD_DEVICERENDERBITDEPTH | dwDeviceRenderBitDepthmember에는 유효한 데이터가 포함되어 있습니다. |
D3DDD_DEVICEZBUFFERBITDEPTH | dwDeviceZBufferBitDepthmember에는 유효한 데이터가 포함되어 있습니다. |
D3DDD_LIGHTINGCAPS | dlcLightingCaps 멤버에 유효한 데이터가 포함되어 있습니다. |
D3DDD_LINECAPS | dpcLineCaps 멤버에 유효한 데이터가 포함되어 있습니다. |
D3DDD_MAXBUFFERSIZE | dwMaxBufferSize 멤버에 유효한 데이터가 포함되어 있습니다. |
D3DDD_MAXVERTEXCOUNT | dwMaxVertexCount 멤버에 유효한 데이터가 포함되어 있습니다. |
D3DDD_TRANSFORMCAPS | dtcTransformCaps 멤버에는 유효한 데이터가 포함됩니다. |
D3DDD_TRICAPS | dpcTriCaps 멤버에 유효한 데이터가 포함되어 있습니다. |
dcmColorModel
디바이스의 색 모델을 지정합니다.
dwDevCaps
디바이스의 기능을 식별합니다. 이 멤버는 다음 값 중 비트 OR일 수 있습니다.
값 | 의미 |
---|---|
D3DDEVCAPS_CANBLTSYSTONONLOCAL | 디바이스는 시스템 메모리에서 하위 비디오 메모리로 TexBlt를 지원합니다. |
D3DDEVCAPS_CANRENDERAFTERFLIP | 디바이스는 페이지 대칭 이동 후 렌더링 명령을 큐에 대기할 수 있습니다. 디바이스는 Windows 2000 이상에서 이 기능을 지원해야 합니다. 즉, 드라이버는 항상 이 플래그를 설정합니다. |
D3DDEVCAPS_DRAWPRIMITIVES2 | 디바이스는 D3dDrawPrimitives2 를 지원할 수 있습니다. |
D3DDEVCAPS_DRAWPRIMITIVES2EX | 디바이스는 확장 D3dDrawPrimitives2 를 지원할 수 있습니다. 즉, DX7 규격 드라이버입니다. |
D3DDEVCAPS_DRAWPRIMTLVERTEX | 디바이스는 TLVERTEX 기본 형식을 그릴 수 있습니다. 이 플래그는 사용되지 않지만 드라이버에서 설정해야 합니다. |
D3DDEVCAPS_EXECUTESYSTEMMEMORY | 디바이스는 시스템 메모리에서 실행 버퍼를 사용할 수 있습니다. 드라이버는 항상 이 비트를 설정해야 합니다. |
D3DDEVCAPS_EXECUTEVIDEOMEMORY | 디바이스는 디스플레이 메모리에서 실행 버퍼를 사용할 수 있습니다. 드라이버는 이 비트를 설정해서는 안됩니다. |
D3DDEVCAPS_FLOATTLVERTEX | 디바이스는 사후 변환 꼭짓점 데이터에 대해 부동 소수점을 허용합니다. 이 플래그는 사용되지 않지만 드라이버에서 설정해야 합니다. |
D3DDEVCAPS_HWRASTERIZATION | 디바이스에는 래스터화를 위한 하드웨어 가속이 있습니다. |
D3DDEVCAPS_HWTRANSFORMANDLIGHT | 디바이스는 하드웨어에서 변환 및 조명을 지원할 수 있습니다. D3DDEVCAPS_DRAWPRIMITIVES2EX 설정해야 합니다. |
D3DDEVCAPS_SEPARATETEXTUREMEMORIES | 디바이스가 별도의 메모리 풀에서 텍스처링됩니다. 이 기능 비트를 설정하면 여러 텍스처를 동시에 사용하지 않도록 설정된 DirectX 8.0 이상 버전의 애플리케이션이 표시됩니다. |
D3DDEVCAPS_SORTDECREASINGZ | 디바이스에는 깊이를 감소하기 위해 정렬된 데이터가 필요합니다. |
D3DDEVCAPS_SORTEXACT | 디바이스에 정확히 정렬된 데이터가 필요합니다. |
D3DDEVCAPS_SORTINCREASINGZ | 디바이스에는 깊이를 높이기 위해 정렬된 데이터가 필요합니다. |
D3DDEVCAPS_TEXTURENONLOCALVIDEOMEMORY | 디바이스는 비로컬 비디오 메모리에서 질감을 만들 수 있습니다. |
D3DDEVCAPS_TLVERTEXSYSTEMMEMORY | 디바이스는 변환된 꼭짓점 및 조명 꼭짓점을 위해 시스템 메모리의 버퍼를 사용할 수 있습니다. 이 플래그는 사용되지 않지만 드라이버에서 설정해야 합니다. |
D3DDEVCAPS_TLVERTEXVIDEOMEMORY | 디바이스는 디스플레이 메모리의 버퍼를 변환 및 조명 꼭짓점용으로 사용할 수 있습니다. 이 플래그는 사용되지 않으며 드라이버에서 설정해서는 안 됩니다. |
D3DDEVCAPS_TEXTURESYSTEMMEMORY | 디바이스는 시스템 메모리에서 텍스처를 검색할 수 있습니다. |
D3DDEVCAPS_TEXTUREVIDEOMEMORY | 디바이스는 디바이스 메모리에서 텍스처를 검색할 수 있습니다. |
dtcTransformCaps
디바이스의 변환 기능을 지정하는 D3DTRANSFORMCAPS 구조를 지정합니다. 드라이버는 해당 구조체의 dwCaps 멤버를 0으로 설정해야 합니다.
bClipping
디바이스가 3D 클리핑을 수행할 수 있는 경우 드라이버에서 TRUE로 설정합니다.
dlcLightingCaps
디바이스의 조명 기능을 지정합니다. 이는 D3DLIGHTINGCAPS 구조입니다. 드라이버는 해당 구조체의 dwCaps, dwLightingModel 및 dwNumLights 멤버를 0으로 설정해야 합니다.
dpcLineCaps
선 기본 형식에 대한 디바이스의 그리기 기능을 정의하는 D3DPRIMCAPS 구조를 지정합니다.
dpcTriCaps
삼각형 기본 형식에 대한 디바이스의 그리기 기능을 정의하는 D3DPRIMCAPS 구조를 지정합니다.
dwDeviceRenderBitDepth
디바이스의 렌더링 비트 깊이를 지정합니다. 이 멤버는 DDBD_8, DDBD_16, DDBD_24 또는 DDBD_32 DirectDraw 비트 깊이 상수 중 비트 OR일 수 있습니다.
dwDeviceZBufferBitDepth
디바이스의 z 버퍼 비트 깊이를 지정합니다. 이 멤버는 DDBD_8, DDBD_16, DDBD_24 또는 DDBD_32 DirectDraw 비트 깊이 상수의 비트 OR일 수 있습니다.
dwMaxBufferSize
0으로 설정해야 합니다.
dwMaxVertexCount
DirectX 7 이상 버전
DirectX 6
설명
이 구조는 DirectX 8.0 이상 런타임에 대한 D3DCAPS8(DirectX 8.0 SDK 설명서 참조)로 대체되었지만 레거시 런타임(DirectX 7.0 이하) 호환성에 필요합니다. 자세한 내용은 DirectX 8.0 스타일 Direct3D 기능 보고를 참조하세요 .
드라이버의 DrvGetDirectDrawInfo 함수는 DD_HALINFO 구조체의 lpD3DGlobalDriverData 멤버가 가리키는 D3DHAL_GLOBALDRIVERDATA 구조체에서 이 정보를 반환합니다.
Direct3D 런타임은 D3DDEVICEDESC_V1 구조에 반환된 정보와 드라이버의 DdGetDriverInfo 함수를 통해 쿼리된 확장 기능에서 애플리케이션 수준 D3DDEVICEDESC7 구조(Microsoft Windows SDK 설명서에 설명됨)를 생성합니다. 일부 dwDevCaps 플래그는 드라이버 수준에서 사용되지 않지만 애플리케이션이 올바르게 작동하려면 드라이버가 적절하게 설정해야 합니다.
요구 사항
요구 사항 | 값 |
---|---|
헤더 | d3dhal.h(D3dhal.h 포함) |