다음을 통해 공유


DDBLTFX 구조체(ddraw.h)

DDBLTFX 구조체는 래스터 작업(ROP), 효과 및 재정의 정보를 IDirectDrawSurface7::Blt 메서드에 전달합니다. 이 구조체는 IDirectDrawSurface7::BltBatch 메서드와 함께 사용되는 DDBLTBATCH 구조체의 일부이기도 합니다.

구문

typedef struct _DDBLTFX {
  DWORD      dwSize;
  DWORD      dwDDFX;
  DWORD      dwROP;
  DWORD      dwDDROP;
  DWORD      dwRotationAngle;
  DWORD      dwZBufferOpCode;
  DWORD      dwZBufferLow;
  DWORD      dwZBufferHigh;
  DWORD      dwZBufferBaseDest;
  DWORD      dwZDestConstBitDepth;
#if ...
  union {
    DWORD               dwZDestConst;
    LPDIRECTDRAWSURFACE lpDDSZBufferDest;
  } DUMMYUNIONNAMEN;
  DWORD      dwZSrcConstBitDepth;
#elif
  union {
    DWORD               dwZSrcConst;
    LPDIRECTDRAWSURFACE lpDDSZBufferSrc;
  } DUMMYUNIONNAMEN;
  DWORD      dwAlphaEdgeBlendBitDepth;
  DWORD      dwAlphaEdgeBlend;
  DWORD      dwReserved;
  DWORD      dwAlphaDestConstBitDepth;
#elif
  union {
    DWORD               dwAlphaDestConst;
    LPDIRECTDRAWSURFACE lpDDSAlphaDest;
  } DUMMYUNIONNAMEN;
  DWORD      dwAlphaSrcConstBitDepth;
#elif
  union {
    DWORD               dwAlphaSrcConst;
    LPDIRECTDRAWSURFACE lpDDSAlphaSrc;
  } DUMMYUNIONNAMEN;
#else
  union {
    DWORD               dwFillColor;
    DWORD               dwFillDepth;
    DWORD               dwFillPixel;
    LPDIRECTDRAWSURFACE lpDDSPattern;
  } DUMMYUNIONNAMEN;
#endif
  DDCOLORKEY ddckDestColorkey;
  DDCOLORKEY ddckSrcColorkey;
} DDBLTFX;

멤버

dwSize

구조체의 크기(바이트)입니다. 구조체를 사용하려면 먼저 이 멤버를 초기화해야 합니다.

dwDDFX

FX 작업의 유형입니다. 다음 형식이 정의됩니다.

DDBLTFX_ARITHSTRETCHY

이 비트 블록 전송(비트blt)에 대해 y축을 따라 산술 스트레칭을 사용합니다.

DDBLTFX_MIRRORLEFTRIGHT

표면을 y축으로 바꿉니다. 이 비트블렛은 표면을 왼쪽에서 오른쪽으로 미러링합니다.

DDBLTFX_MIRRORUPDOWN

표면을 x축으로 바꿉니다. 이 비트블렛은 표면을 위에서 아래로 미러링합니다.

DDBLTFX_NOTEARING

이 비트blt를 예약하여 찢어지는 것을 방지합니다.

DDBLTFX_ROTATE180

이 비트블렛 동안 표면을 시계 방향으로 180도 회전합니다.

DDBLTFX_ROTATE270

이 비트블렛 동안 표면을 시계 방향으로 270도 회전합니다.

DDBLTFX_ROTATE90

이 비트블렛 동안 표면을 시계 방향으로 90도 회전합니다.

DDBLTFX_ZBUFFERBASEDEST

dwZBufferBaseDest 멤버를 각 원본 z-값에 추가한 후 이 z-bitblt 중에 대상 z-값과 비교합니다.

DDBLTFX_ZBUFFERRANGE

dwZBufferLowdwZBufferHigh 멤버를 범위 값으로 사용하여 이 z 비트blt 동안 원본 표면에서 복사한 비트에 대한 제한을 지정합니다.

dwROP

Win32 래스터 작업. IDirectDraw7::GetCaps 메서드를 호출하여 지원되는 래스터 작업 목록을 검색할 수 있습니다.

dwDDROP

DirectDraw 래스터 작업.

dwRotationAngle

비트blt의 회전 각도입니다.

dwZBufferOpCode

Z 버퍼 비교

dwZBufferLow

z 버퍼의 낮은 제한입니다.

dwZBufferHigh

z 버퍼의 높은 제한입니다.

dwZBufferBaseDest

z 버퍼의 대상 기본 값입니다.

dwZDestConstBitDepth

대상 z 상수의 비트 깊이입니다.

DUMMYUNIONNAMEN

DUMMYUNIONNAMEN.dwZDestConst

DUMMYUNIONNAMEN.lpDDSZBufferDest

dwZSrcConstBitDepth

원본 z 상수의 비트 깊이입니다.

DUMMYUNIONNAMEN.dwZSrcConst

DUMMYUNIONNAMEN.lpDDSZBufferSrc

dwAlphaEdgeBlendBitDepth

알파 에지 혼합에 대한 상수의 비트 깊이입니다.

dwAlphaEdgeBlend

에지 혼합에 사용되는 알파 상수입니다.

dwReserved

예약됨

dwAlphaDestConstBitDepth

대상 알파 상수의 비트 깊이입니다.

DUMMYUNIONNAMEN.dwAlphaDestConst

DUMMYUNIONNAMEN.lpDDSAlphaDest

dwAlphaSrcConstBitDepth

원본 알파 상수의 비트 깊이입니다.

DUMMYUNIONNAMEN.dwAlphaSrcConst

DUMMYUNIONNAMEN.lpDDSAlphaSrc

DUMMYUNIONNAMEN.dwFillColor

DUMMYUNIONNAMEN.dwFillDepth

DUMMYUNIONNAMEN.dwFillPixel

DUMMYUNIONNAMEN.lpDDSPattern

ddckDestColorkey

대상 색 키 재정의.

ddckSrcColorkey

원본 색 키 재정의.

설명

이 구조체의 공용 구조체는 이름 없는 공용 구조체를 지원하지 않는 컴파일러와 함께 작동하도록 업데이트되었습니다. 컴파일러에서 이름 없는 공용 구조체를 지원하지 않는 경우 Ddraw.h 헤더 파일을 포함하기 전에 NONAMELESSUNION 토큰을 정의합니다.

요구 사항

요구 사항
헤더 ddraw.h