DirectX5.0最新游戏编程指南 DirectDraw篇 一、DirectDraw的基本图象概念

 

DirectX5.0最新游戏编程指南
 DirectDraw篇

    DirectDraw是DirectX SDK的主要部分之一,它允许你直接对显示内存操作,支持硬件位块传输、硬件覆盖、表面翻转,并且保持同目前的基于Windows的应用程序和驱动程序兼容。
    DirectDraw是一种软件接口,它除了能直接对显示设备存取外,还保持同Windows图形设备接口GDI(Graphics Device Interface)兼容。对于图形来说,它并不是一种高级应用程序接口。DirectDraw提供了一种设备无关性的方法,使得基于Windows的应用软件和游戏(例如三维图形软件包和数字视频游戏)能直接获取显示设备的特性。
    DirectDraw能工作于各种各样的显示设备,从简单的SVGA显示器到能够提供剪切、拉伸和非RGB格式支持的高级显示设备。DirectDraw接口使得你的应用程序能仿真基本硬件的性能并使用硬件加速特性;硬件不提供的特性将由DirectX来仿真。DirectDraw提供的对显示内存的设备无关性的访问能使你很容易地管理显示内存。你的应用程序只需要识别一些基本的设备属性,它们都是标准的硬件应用,例如RGB和YUV格式的颜色。你不需要调用特殊的过程来使用位块传输或操纵调色板寄存器。使用DirectDraw,你可以很容易地操作显示内存,充
分利用不同类型显示设备的位块传输和颜色解压功能,而不需要依赖于特定的硬件。DirectDraw可以运行在Windows95/NT4.0和以后的版本中。
    DirectDraw的硬件抽象层HAL(Hardware Abstraction Layer)提供了统一的接口,通过该接口,程序可以直接在显示内存或视频内存中工作,获取硬件的最佳性能。
    DirectDraw对视频硬件的性能进行估计,只要可能就会使用硬件提供的特定性能。例如,如果视频卡支持位块传输,DirectDraw就会把位块传输委托给视频卡,CPU不参与位块传输的处理,这就大大提高了程序运行的性能。另外,DirectDraw提供了硬件仿真层HEL(Hardware Emulation Layer ),使得在某些硬件不存在时可以用软件仿真来支持本应该由这些硬件提供的特性。
    DirectDraw运行在Windows 95上,能够利用32位内存的优越性和操作系统提供的“平坦”内存模型。DirectDraw将系统内存和视频内存作为大块存储而不是一小段一小段地使用。另外,DirectDraw还为 Windows图形程序员带来了许多强大的功能:
  .DirectDraw使得在全屏模式下的应用多个后台缓冲区的页翻转变得容易
  .支持窗口模式和全屏模式下的剪切功能
  .支持三维 Z缓冲区
  .支持Z方向的硬件辅助覆盖

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

holyfire

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值