⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 directdraw.pas

📁 delphi编的不错的贪吃蛇
💻 PAS
📖 第 1 页 / 共 5 页
字号:
(*
 * TDDOSCaps
 *)
  PDDOSCaps = ^TDDOSCaps;
  TDDOSCaps = packed record
    dwCaps : LongWord;         // capabilities of surface wanted
  end;

(*
 * This structure is used internally by DirectDraw.
 *)
  PDDSCapsEx = ^TDDSCapsEx;
  TDDSCapsEx = packed record
    dwCaps2 : LongWord;
    dwCaps3 : LongWord;
    dwCaps4 : LongWord;
  end;

(*
 * TDDSCaps2
 *)
  PDDSCaps2 = ^TDDSCaps2;
  TDDSCaps2 = packed record
    dwCaps  : LongWord;      // capabilities of surface wanted
    dwCaps2 : LongWord;
    dwCaps3 : LongWord;
    dwCaps4 : LongWord;
  end;

(*
 * TDDCaps
 *)
(*
 * This structure is the TDDCaps structure as it was in version 2 and 3 of Direct X.
 * It is present for back compatability.
 *)
  PDDCaps_DX3 = ^TDDCaps_DX3;
  TDDCaps_DX3 = packed record      
    dwSize                         : LongWord;   // size of the DDDRIVERCAPS structure
    dwCaps                         : LongWord;   // driver specific capabilities
    dwCaps2                        : LongWord;   // more driver specific capabilites
    dwCKeyCaps                     : LongWord;   // color key capabilities of the surface
    dwFXCaps                       : LongWord;   // driver specific stretching and effects capabilites
    dwFXAlphaCaps                  : LongWord;   // alpha driver specific capabilities
    dwPalCaps                      : LongWord;   // palette capabilities
    dwSVCaps                       : LongWord;   // stereo vision capabilities
    dwAlphaBltConstBitDepths       : LongWord;   // DDBD_2,4,8
    dwAlphaBltPixelBitDepths       : LongWord;   // DDBD_1,2,4,8
    dwAlphaBltSurfaceBitDepths     : LongWord;   // DDBD_1,2,4,8
    dwAlphaOverlayConstBitDepths   : LongWord;   // DDBD_2,4,8
    dwAlphaOverlayPixelBitDepths   : LongWord;   // DDBD_1,2,4,8
    dwAlphaOverlaySurfaceBitDepths : LongWord;   // DDBD_1,2,4,8
    dwZBufferBitDepths             : LongWord;   // DDBD_8,16,24,32
    dwVidMemTotal                  : LongWord;   // total amount of video memory
    dwVidMemFree                   : LongWord;   // amount of free video memory
    dwMaxVisibleOverlays           : LongWord;   // maximum number of visible overlays
    dwCurrVisibleOverlays          : LongWord;   // current number of visible overlays
    dwNumFourCCCodes               : LongWord;   // number of four cc codes
    dwAlignBoundarySrc             : LongWord;   // source rectangle alignment
    dwAlignSizeSrc                 : LongWord;   // source rectangle byte size
    dwAlignBoundaryDest            : LongWord;   // dest rectangle alignment
    dwAlignSizeDest                : LongWord;   // dest rectangle byte size
    dwAlignStrideAlign             : LongWord;   // stride alignment
    dwRops                         : Array [0..DD_ROP_SPACE-1] of LongWord; // ROPS supported
    ddsCaps                        : TDDSCaps;   // TDDSCaps structure has all the general capabilities
    dwMinOverlayStretch            : LongWord;   // minimum overlay stretch factor multiplied by 1000, eg 1000 == 1.0, 1300 == 1.3
    dwMaxOverlayStretch            : LongWord;   // maximum overlay stretch factor multiplied by 1000, eg 1000 == 1.0, 1300 == 1.3
    dwMinLiveVideoStretch          : LongWord;   // minimum live video stretch factor multiplied by 1000, eg 1000 == 1.0, 1300 == 1.3
    dwMaxLiveVideoStretch          : LongWord;   // maximum live video stretch factor multiplied by 1000, eg 1000 == 1.0, 1300 == 1.3
    dwMinHwCodecStretch            : LongWord;   // minimum hardware codec stretch factor multiplied by 1000, eg 1000 == 1.0, 1300 == 1.3
    dwMaxHwCodecStretch            : LongWord;   // maximum hardware codec stretch factor multiplied by 1000, eg 1000 == 1.0, 1300 == 1.3
    dwReserved1                    : LongWord;   // reserved
    dwReserved2                    : LongWord;   // reserved
    dwReserved3                    : LongWord;   // reserved
    dwSVBCaps                      : LongWord;   // driver specific capabilities for System->Vmem blts
    dwSVBCKeyCaps                  : LongWord;   // driver color key capabilities for System->Vmem blts
    dwSVBFXCaps                    : LongWord;   // driver FX capabilities for System->Vmem blts
    dwSVBRops                      : Array [0..DD_ROP_SPACE-1] of LongWord;  // ROPS supported for System->Vmem blts
    dwVSBCaps                      : LongWord;   // driver specific capabilities for Vmem->System blts
    dwVSBCKeyCaps                  : LongWord;   // driver color key capabilities for Vmem->System blts
    dwVSBFXCaps                    : LongWord;   // driver FX capabilities for Vmem->System blts
    dwVSBRops                      : Array [0..DD_ROP_SPACE-1] of DWORD;// ROPS supported for Vmem->System blts
    dwSSBCaps                      : LongWord;   // driver specific capabilities for System->System blts
    dwSSBCKeyCaps                  : LongWord;   // driver color key capabilities for System->System blts
    dwSSBFXCaps                    : LongWord;   // driver FX capabilities for System->System blts
    dwSSBRops                      : Array [0..DD_ROP_SPACE-1] of DWORD; // ROPS supported for System->System blts
    dwReserved4                    : LongWord;
    dwReserved5                    : LongWord;
    dwReserved6                    : LongWord;
  end;

(*
 * This structure is the TDDCaps structure as it was in version 5 of Direct X.
 * It is present for back compatability.
 *)
  PDDCaps_DX5 = ^TDDCaps_DX5;
  TDDCaps_DX5 = packed record
    dwSize                         : LongWord;   // size of the DDDRIVERCAPS structure
    dwCaps                         : LongWord;   // driver specific capabilities
    dwCaps2                        : LongWord;   // more driver specific capabilites
    dwCKeyCaps                     : LongWord;   // color key capabilities of the surface
    dwFXCaps                       : LongWord;   // driver specific stretching and effects capabilites
    dwFXAlphaCaps                  : LongWord;   // alpha driver specific capabilities
    dwPalCaps                      : LongWord;   // palette capabilities
    dwSVCaps                       : LongWord;   //  stereo vision capabilities
    dwAlphaBltConstBitDepths       : LongWord;   // DDBD_2,4,8
    dwAlphaBltPixelBitDepths       : LongWord;   // DDBD_1,2,4,8
    dwAlphaBltSurfaceBitDepths     : LongWord;   // DDBD_1,2,4,8
    dwAlphaOverlayConstBitDepths   : LongWord;   // DDBD_2,4,8
    dwAlphaOverlayPixelBitDepths   : LongWord;   // DDBD_1,2,4,8
    dwAlphaOverlaySurfaceBitDepths : LongWord;   // DDBD_1,2,4,8
    dwZBufferBitDepths             : LongWord;   // DDBD_8,16,24,32
    dwVidMemTotal                  : LongWord;   // total amount of video memory
    dwVidMemFree                   : LongWord;   // amount of free video memory
    dwMaxVisibleOverlays           : LongWord;   // maximum number of visible overlays
    dwCurrVisibleOverlays          : LongWord;   // current number of visible overlays
    dwNumFourCCCodes               : LongWord;   // number of four cc codes
    dwAlignBoundarySrc             : LongWord;   // source rectangle alignment
    dwAlignSizeSrc                 : LongWord;   // source rectangle byte size
    dwAlignBoundaryDest            : LongWord;   // dest rectangle alignment
    dwAlignSizeDest                : LongWord;   // dest rectangle byte size
    dwAlignStrideAlign             : LongWord;   // stride alignment
    dwRops                         : Array [0..DD_ROP_SPACE-1] of LongWord; // ROPS supported
    ddsCaps                        : TDDSCaps;   // TDDSCaps structure has all the general capabilities
    dwMinOverlayStretch            : LongWord;   // minimum overlay stretch factor multiplied by 1000, eg 1000 == 1.0, 1300 == 1.3
    dwMaxOverlayStretch            : LongWord;   // maximum overlay stretch factor multiplied by 1000, eg 1000 == 1.0, 1300 == 1.3
    dwMinLiveVideoStretch          : LongWord;   // minimum live video stretch factor multiplied by 1000, eg 1000 == 1.0, 1300 == 1.3
    dwMaxLiveVideoStretch          : LongWord;   // maximum live video stretch factor multiplied by 1000, eg 1000 == 1.0, 1300 == 1.3
    dwMinHwCodecStretch            : LongWord;   // minimum hardware codec stretch factor multiplied by 1000, eg 1000 == 1.0, 1300 == 1.3
    dwMaxHwCodecStretch            : LongWord;   // maximum hardware codec stretch factor multiplied by 1000, eg 1000 == 1.0, 1300 == 1.3
    dwReserved1                    : LongWord;   // reserved
    dwReserved2                    : LongWord;   // reserved
    dwReserved3                    : LongWord;   // reserved
    dwSVBCaps                      : LongWord;   // driver specific capabilities for System->Vmem blts
    dwSVBCKeyCaps                  : LongWord;   // driver color key capabilities for System->Vmem blts
    dwSVBFXCaps                    : LongWord;   // driver FX capabilities for System->Vmem blts
    dwSVBRops                      : Array [0..DD_ROP_SPACE-1] of LongWord; // ROPS supported for System->Vmem blts
    dwVSBCaps                      : LongWord;   // driver specific capabilities for Vmem->System blts
    dwVSBCKeyCaps                  : LongWord;   // driver color key capabilities for Vmem->System blts
    dwVSBFXCaps                    : LongWord;   // driver FX capabilities for Vmem->System blts
    dwVSBRops                      : Array [0..DD_ROP_SPACE-1] of LongWord; // ROPS supported for Vmem->System blts
    dwSSBCaps                      : LongWord;   // driver specific capabilities for System->System blts
    dwSSBCKeyCaps                  : LongWord;   // driver color key capabilities for System->System blts
    dwSSBFXCaps                    : LongWord;   // driver FX capabilities for System->System blts
    dwSSBRops                      : Array [0..DD_ROP_SPACE-1] of LongWord; // ROPS supported for System->System blts
    // Members added for DX5:
    dwMaxVideoPorts                : LongWord;	 // maximum number of usable video ports
    dwCurrVideoPorts               : LongWord;	 // current number of video ports used
    dwSVBCaps2                     : LongWord;	 // more driver specific capabilities for System->Vmem blts
    dwNLVBCaps                     : LongWord;	 // driver specific capabilities for non-local->local vidmem blts
    dwNLVBCaps2                    : LongWord;	 // more driver specific capabilities non-local->local vidmem blts
    dwNLVBCKeyCaps                 : LongWord;	 // driver color key capabilities for non-local->local vidmem blts
    dwNLVBFXCaps                   : LongWord;	 // driver FX capabilities for non-local->local blts
    dwNLVBRops                     : Array [0..DD_ROP_SPACE-1] of LongWord; // ROPS supported for non-local->local blts
  end;

  PDDCaps_DX6 = ^TDDCaps_DX6;
  TDDCaps_DX6 = packed record
    dwSize                         : LongWord;   // size of the DDDRIVERCAPS structure
    dwCaps                         : LongWord;   // driver specific capabilities
    dwCaps2                        : LongWord;   // more driver specific capabilites
    dwCKeyCaps                     : LongWord;   // color key capabilities of the surface
    dwFXCaps                       : LongWord;   // driver specific stretching and effects capabilites
    dwFXAlphaCaps                  : LongWord;   // alpha driver specific capabilities
    dwPalCaps                      : LongWord;   // palette capabilities
    dwSVCaps                       : LongWord;   //  stereo vision capabilities
    dwAlphaBltConstBitDepths       : LongWord;   // DDBD_2,4,8
    dwAlphaBltPixelBitDepths       : LongWord;   // DDBD_1,2,4,8
    dwAlphaBltSurfaceBitDepths     : LongWord;   // DDBD_1,2,4,8
    dwAlphaOverlayConstBitDepths   : LongWord;   // DDBD_2,4,8
    dwAlphaOverlayPixelBitDepths   : LongWord;   // DDBD_1,2,4,8
    dwAlphaOverlaySurfaceBitDepths : LongWord;   // DDBD_1,2,4,8
    dwZBufferBitDepths             : LongWord;   // DDBD_8,16,24,32
    dwVidMemTotal                  : LongWord;   // total amount of video memory
    dwVidMemFree                   : LongWord;   // amount of free video memory
    dwMaxVisibleOverlays           : LongWord;   // maximum number of visible overlays
    dwCurrVisibleOverlays          : LongWord;   // current number of visible overlays
    dwNumFourCCCodes               : LongWord;   // number of four cc codes
    dwAlignBoundarySrc             : LongWord;   // source rectangle alignment
    dwAlignSizeSrc                 : LongWord;   // source rectangle byte size
    dwAlignBoundaryDest            : LongWord;   // dest rectangle alignment
    dwAlignSizeDest                : LongWord;   // dest rectangle byte size
    dwAlignStrideAlign             : LongWord;   // stride alignment
    dwRops                         : Array [0..DD_ROP_SPACE-1] of LongWord; // ROPS supported
    ddsOldCaps                     : TDDSCaps;   // Was dssCaps: TDDSCaps. ddsCaps is of type TDDScaps2 for DX6
    dwMinOverlayStretch            : LongWord;   // minimum overlay stretch factor multiplied by 1000, eg 1000 == 1.0, 1300 == 1.3
    dwMaxOverlayStretch            : LongWord;   // maximum overlay stretch factor multiplied by 1000, eg 1000 == 1.0, 1300 == 1.3
    dwMinLiveVideoStretch          : LongWord;   // minimum live video stretch factor multiplied by 1000, eg 1000 == 1.0, 1300 == 1.3
    dwMaxLiveVideoStretch          : LongWord;   // maximum live video stretch factor multiplied by 1000, eg 1000 == 1.0, 1300 == 1.3
    dwMinHwCodecStretch            : LongWord;   // minimum hardware codec stretch factor multiplied by 1000, eg 1000 == 1.0, 1300 == 1.3
    dwMaxHwCodecStretch            : LongWord;   // maximum hardware codec stretch factor multiplied by 1000, eg 1000 == 1.0, 1300 == 1.3
    dwReserved1                    : LongWord;   // reserved
    dwReserved2                    : LongWord;   // reserved
    dwReserved3                    : LongWord;   // reserved
    dwSVBCaps                      : LongWord;   // driver specific capabilities for System->Vmem blts
    dwSVBCKeyCaps                  : LongWord;   // driver color key capabilities for System->Vmem blts
    dwSVBFXCaps                    : LongWord;   // driver FX capabilities for System->Vmem blts
    dwSVBRops                      : Array [0..DD_ROP_SPACE-1] of LongWord; // ROPS supported for System->Vmem blts
    dwVSBCaps                      : LongWord;   // driver specific capabilities for Vmem->System blts
    dwVSBCKeyCaps                  : LongWord;   // driver color key capabilities for Vmem->System blts
    dwVSBFXCaps                    : LongWord;   // driver FX capabilities for Vmem->System blts
    dwVSBRops                      : Array [0..DD_ROP_SPACE-1] of LongWord; // ROPS supported for Vmem->System blts
    dwSSBCaps                      : LongWord;   // driver specific capabilities for System->System blts
    dwSSBCKeyCaps                  : LongWord;   // driver color key capabilities for System->System blts
    dwSSBFXCaps                    : LongWord;   // driver FX capabilities for System->System blts
    dwSSBRops                      : Array [0..DD_ROP_SPACE-1] of LongWord; // ROPS supported for System->System blts
    // Members added for DX5:
    dwMaxVideoPorts                : LongWord;	 // maximum number of usable video ports
    dwCurrVideoPorts               : LongWord;	 // current number of video ports used
    dwSVBCaps2                     : LongWord;	 // more driver specific capabilities for System->Vmem blts
    dwNLVBCaps                     : LongWord;	 // driver specific capabilities for non-local->local vidmem blts
    dwNLVBCaps2                    : LongWord;	 // more driver specific capabilities non-local->local vidmem blts
    dwNLVBCKeyCaps                 : LongWord;	 // driver color key capabilities for non-local->local vidmem blts
    dwNLVBFXCaps                   : LongWord;	 // driver FX capabilities for non-local->local blts
    dwNLVBRops                     : Array [0..DD_ROP_SPACE-1] of LongWord; // ROPS supported for non-local->local blts
    // Members added for DX6 release
    ddsCaps                        : TDDSCaps2;  // Surface Caps
  end;

  TDDCaps_DX7 = TDDCaps_DX6;

  PDDCaps = ^TDDCaps;

{$IFDEF DIRECTX3}
  TDDCaps = TDDCaps_DX3;
{$ELSE}
  {$IFDEF DIRECTX5}
    TDDCaps = TDDCaps_DX5;
  {$ELSE}
    {$IFDEF DIRECTX6}
      TDDCaps = TDDCaps_DX6;
    {$ELSE}
      TDDCaps = TDDCaps_DX7;
    {$ENDIF}
  {$ENDIF}
{$ENDIF}


(*

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -