zoukankan      html  css  js  c++  java
  • 调用DirectDraw接口和调DirectDraw7接口的不同点对比

    调用DirectDraw接口步骤:


    1.       包含链接库ddraw.lib


    2.       初始化窗口类型(全屏独占时类型用popup)。


    3.       在初始化窗口后初始化DirectDraw(使用函数DirectDrawCreate)


    4.       创建DirectDraw实例指针lpDD。


    5.       lpDD->SetCooperativeLevel设置显示全屏独占还是窗体。


    6.        lpDD->SetDisplayMode(640,480,8)设置显示模式。


    7.       DDSURFACEDESC ddsd的信息配置。


    8.       lpDD->CreateSurface创建主页面。


    9.       lpDDSPrimary->GetAttachedSurface ( &ddscaps, &lpDDSBack
    )提取后台缓冲页面。


    10.    利用DirectDraw的函数对一些bmp处理,或者获取hdc对页面操作lpDDSBack->GetDC(&hdc)。


    11.    lpDDSPrimary->Flip(NULL,0) 一经Flip,两个表面的指针互换。lpDDSPrimary指向后台表面,
    而lpDDSBack指向了原来的前台主表面.(窗口模式不能进行换页,要使用位块传送来将内容传送到主页面)。


    12.    释放所用资源。



    调用DirectDraw7接口步骤:


    1.       包含链接库ddraw.lib、dxguid.lib


    2.       初始化窗口类型(全屏独占时类型用popup)。


    3.       在初始化窗口后初始化DirectDraw7(使用函数DirectDrawCreateEx或者通过已创建的DirectDraw接口通过QueryInterface方法来获得)


    4.       创建DirectDraw7实例指针lpDD。


    5.       lpDD->SetCooperativeLevel设置显示全屏独占还是窗体。


    6.       lpDD->SetDisplayMode(640,480,8,0,0)设置显示模式(这里比DirectDraw接口多了两个参数)最后两个参数描述分别是:


    dwRefreshRate


    Refresh rate of the new mode. Set this value to 0 to request the default
    refresh rate for the driver.
    大意是:用于设置显示时的刷新频率,(就是65MHZ、75MHZ、85MHZ),如果设为0使用当前默认设置。


    dwFlags


    Flags describing additional options. Currently, the only valid flag is
    DDSDM_STANDARDVGAMODE, which causes the method to set Mode 13 instead of Mode X
    320x200x8 mode. If you are setting another resolution, bit depth, or a Mode X
    mode, do not use this flag and set the parameter to 0



    7.         DDSURFACEDESC2
    ddsd的信息配置(声明完页面描述后,应该立即用ZeroMemory函数使对象的值为0,否则不能成功创建页面)


    8.       lpDD->CreateSurface创建主页面。


    9.       lpDDSPrimary->GetAttachedSurface ( &ddscaps, &lpDDSBack
    )提取后台缓冲页面。


    10.    利用DirectDraw的函数对一些bmp处理,或者获取hdc对页面操作lpDDSBack->GetDC(&hdc)。


    11.    lpDDSPrimary->Flip(NULL,0) 一经Flip,两个表面的指针互换。lpDDSPrimary指向后台表面,
    而lpDDSBack指向了原来的前台主表面.(窗口模式不能进行换页,要使用位块传送来将内容传送到主页面)。

        12. 释放所用资源。
  • 相关阅读:
    当向数据库插入数据的同时返回插入数据的编号(自动生成的编号)
    75条方法改变你的程序人生
    2012下半年计划
    .NET开发中的事务处理大比拼
    JavaScript使用技巧精萃
    生成WebService的代理类操作步骤
    标书陈述总结
    自定义SharePoint 2010 功能区
    做培训、演讲、与回报的区别
    K2 SmartObject 本质
  • 原文地址:https://www.cnblogs.com/lidabo/p/3143550.html
Copyright © 2011-2022 走看看