DirectDraw结构及其功能说明

DirectDraw是由很多接口组成的,接口就是用以组件通信的函数与方法的集合!!!

DirectDraw总共由五个接口组成:

IUnknown-------所有COM对象都必须从这个基本接口生成,DirectDraw也不例外

IDirectDraw------这是开始使用DirectDraw时必须创建的主接口对象。IdirectDraw一对一地表示视频卡及其支持硬件。

///视频卡是什么?????http://zhidao.baidu.com/question/1120290.html

 

IDirectDrawSurface-----这表示你用DirectDraw创建、控制和显示的实际显示表面。一个DirectDraw显示表面可以使用显存(Video  RAM,VRAM)存于

视频卡中或者存于系统内存里。基本上有两种显示表面:主显示表面(Primary Surface)和从显示表面(Secondary  Surface).

 

主显示表面:通常表示正在被视频卡光栅化和显示的实际视频缓冲区

从显示表面:通常是离屏的。

通常情况下,你要创建单个的主显示表面以表示实际视频显示、一个或多个从从显示表面以表示对象位图、后备缓冲(Back  Buffer)以表示将构建

下一帧动画的离屏绘图区。

/*

主表面:每一个DirectDraw应用程序都有一个主表面。主表面就相当于用户的显示器。它的内容是可见的。同理,

主表面就是根据显示器的显示模式设定宽和高。

后缓冲区:后缓冲区是紧随主表面的表面,但它不可见。它是动画没有闪烁的主因,通常,你在后缓冲区画好每一帧,

然后把后缓冲区的内容拷贝到主表面,使它显示出来。由于它紧随着主表面,所以它的大小同主表面相同。(你就理解为楼上和楼下的关系)

离屏缓冲区:它很象后缓冲区,只是它不是紧挨着主表面。尽管你可以用它作任何事,但它经常被用来存储位图。离屏缓冲区你可以任意设置大小,

唯一的限制是你内存的大小

*/

IDirectDrawPalette-----DirectDraw足以处理从1位(bit)单色到32位超真色彩的任何色彩空间。所以,DirectDraw提供对IDirectDrawPalette接口的

支持以使用256或更少的颜色在视频模式下处理调色板。你将在很多演示程序中广泛使用256色模式,因为他对于软件光栅器来说是最快的一种模式。

在本书第二卷中你将改用24位色彩,因为那是Direct3D天生擅长的模式!!!

 

IDirectDrawClipper-------用于帮助剪切DirectDraw光栅和位图操作到一些可见显示表面的子集。IDrectDrawClipper接口能够利用硬件加速,

并且已经替你完成了剪切位图所必须的代价昂贵的逐像素(Pixel-by-Pixel)或子图形(Sub-image)处理!!!

 

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值